通过插座将阵列控制器链接到XCode中的阵列

时间:2009-01-27 01:20:14

标签: cocoa arrays interface-builder linker

我正在尝试找到一种将阵列控制器链接到数组的方法。 我知道通过一个插座,我可以在使用Interface Builder制作的.xib文件中填充文本字段甚至表视图。

我希望有一个简单的插座(NSArray)并将其放入阵列控制器。反过来,表格会将其内容字段链接到数组中的内容。这是可能的还是我只是想太多非可可?

现在我在“界面”构建器中有一个对象引用,它已经通过一对字段和一些操作处理按钮。如果我尝试将阵列控制器链接到插件'FilesArray',我只能将它链接到对象本身,而不是它的出口。

我只是一个初学者,所以我不明白为什么这不可能?

谢谢!

2 个答案:

答案 0 :(得分:2)

您只需要转到“接口”构建器检查器中的“绑定”窗格,然后在“控制器内容”下找到NSArrayController,您需要绑定到所需的数组。然后,您可以将NSTableColumn绑定到NSArray控制器。

请参阅 With and Without Bindings以获取使用NSArrayController的示例。

CocoaDev还提供了一些关于使用NSArrayController并将其与TableViews http://www.cocoadev.com/index.pl?NSArrayController一起使用的更精确的说明

答案 1 :(得分:2)

您没有使用插座。相反,你走另一条路,并将数组控制器绑定到对象的属性。

  1. 删除IBOutlet关键字。
  2. 在标题中,将实例变量声明为NSMutableArray
  3. 在实施中,在init中创建数组并在dealloc中发布。
  4. 在标题中,声明数组的属性。确保使用copy属性声明它。
  5. 在实现中,合成属性的访问器。
  6. 在IB中,设置阵列控制器的内容阵列绑定。将它绑定到具有数组属性的对象。将模型键路径设置为您在Xcode中创建的属性的名称。
  7. 在您的实现中,始终使用访问者来改变属性(例如,添加或删除对象)。