单击TableView单元格时如何显示更多细节?

时间:2012-06-01 11:53:15

标签: cocoa nstableviewcell

我有一个TextView,输入TextView的任何文本都可以保存到TableView(或者我应该说是NSMutableArray!)。我有这个工作没有问题。我现在遇到的问题是因为可以在TextView中输入大量文本,而不是所有文本都在TableView单元格中可见。我不想让TableView Cells更大,并希望将它们保持当前的大小。

最终,我希望能够点击一个TableView Cell,它会向用户显示所有文本,以便能够在需要时进行读取和编辑,然后将其保存回原始的TableCell,并附上更新的详细信息。

我无法想出这样做的方法,并希望对此有任何帮助....谢谢。

1 个答案:

答案 0 :(得分:0)

您可以通过两种不同的方式实现这一点,具体取决于您的设计要求:

  • 表内编辑:用户单击单元格,文本变为可编辑。您应该能够通过实现基于视图的表视图来实现此功能。只需在视图中添加NSTextView即可设置setHidden:YES。当用户单击该单元格时,您将显示NSTextView。完成编辑后(通过单击按钮或单击另一个单元格???),您可以更新模型并再次隐藏NSTextView。为此,您需要基于NSTableView的视图。

  • 使用NSPopover进行表外编辑。当用户点击该单元格时,您会显示一个单独的NSView,其中包含所有编辑控件,并包含在NSPopover中。通过将单元格的边界传递给弹出窗口,您可以将弹出窗口“附加”到正在编辑的特定单元格。编辑完成后,您需要更新模型并关闭弹出窗口。

相关问题