CoreData和DataBindings与cocoa

时间:2010-07-17 09:22:07

标签: cocoa cocoa-bindings

我正在开发一个带有CoreData和DataBindings的小型数据库图书管理Mac OSX应用程序。 我有一个TableView与所有书籍作者。 我会在另一个TableView中出现上一张表中所选作者所写的所有书籍...... 两个表都使用IB中的两个ArrayController进行管理。 我的问题是我不知道如何使用第一个表选择过滤第二个表/ ArrayController。 我还必须在过滤的ArrayController中插入一本新书。

我能做到吗? 非常感谢!

2 个答案:

答案 0 :(得分:1)

我实际上写了一个可能有帮助的教程http://themikeswan.wordpress.com/2009/05/22/7/简短的回答是你绑定了book表的数组控制器,从另一个数组控制器的选择中获取它的内容集。然后,书籍数组控制器将从作者阵列控制器中选择的任何作者获取它的项目。您还应该添加一个用于添加书籍的按钮并将其连接到书籍数组控制器的add:方法(我还没有尝试过这个,但理论上它应该可行,我不确定作者关系是否会得到适当的设置)。

答案 1 :(得分:0)

您应该阅读NSPredicate,阵列控制器支持它们来过滤内容。要添加新书,您应该覆盖ArrayController的“add:”方法(它的子类),或者在窗口控制器中的某处创建一个自定义方法,该方法将构造新对象并使用addObject:call将其推送到ArrayController中。