我有一个包含NSTableView的NSCrollView。它有3列4行。我有4个NSStrings,其内容需要复制到scrollview中。
使用Xcode 4我尝试连接表或NSTextFieldCell,然后通过
添加文本[_Cell1 setStringValue:MyString];
但没有任何反应。它没有得到更新。
有什么办法吗? 谢谢。
编辑:
我发现了the following answer类似的问题。我仍然感到困惑,但在阅读了Apple关于绑定的例子后,我只能说这个没有任何意义,所以有很多代码可以实现这么简单的事情。这就是一切都是对象和一般OOP的问题。
那里有简单的样本吗?我甚至不知道如何开始设置或连接您需要连接的大量内容以开始使用此
答案 0 :(得分:1)
您应该使用NSTableViewDelegate。这是NSTableView调用的一组方法,用于获取应显示的数据。您只需要声明tableview的委托对象。
答案 1 :(得分:0)
您可以使用NSArrayController
并将表列的值绑定绑定到数组控制器的已排列对象。然后将要显示的值添加到阵列控制器。
答案 2 :(得分:0)
不幸的是,您无法“添加”或“设置”表格视图的内容。与大多数视图对象一样,表视图不存储内容;它取决于控制器在需要时提供内容。
有两种选择:
关于此主题的最佳Apple资源:表视图编程指南中的Populating Cell-Based Table Views。如果你正在努力,我建议你从数据源选项开始。它只是几行代码,您可以调整该文档中的简单样本。
要填充表格,您需要实施以下两种方法:
– numberOfRowsInTableView:
– tableView:objectValueForTableColumn:row:
要更改数据,您需要再实施一次:
- tableView:setObjectValue:forTableColumn:row:
您需要将控制器设置为界面构建器中表视图的数据源。对此的正确协议是NSTableViewDataSource
,而不是NSTableViewDelegate
。