Mat*_* B. 6 cocoa core-data cocoa-bindings
我正试图以iTunes Genre浏览器的风格为我的核心数据模型创建一个简单的界面.
我有三个实体的模型设置:Genre <-->> Artist <-->> Album.
我想简单地将它们分别绑定到NSTableView,但看起来好像从NSArrayController访问子关系不符合KVC.所以,我很难将所选的Genre对象传递给ArtistController.
你怎么做到这一点?在没有任何自定义子类化的IB中甚至可能吗?
编辑后人: 我做错了几件事.
Entity模式,而是作为一个NSMutableDictionary类运行.Content Set绑定从父级检索它.使用控制器键selection和连接到子项的模型键路径.p.Brian的答案和MacResearch教程都有助于确定我的错误(以及我有哪些部分).
我可能会采取的方法是为每个表视图都有一个单独的 NSArrayController,然后让一个数组控制器的内容基于另一个数组控制器的选择。
例如,假设您有一个显示可用流派列表的表视图 A,因此它有一个数组控制器 A,其内容连接到您的托管对象上下文。
然后,假设您有表视图 B,它显示表 A 中选择的任何流派的可用艺术家。该表将有自己的数组控制器 B,并且控制器 B 的内容数组被绑定,因此 IB 中的“控制器键”字段设置为控制器 A 的“选择”键,“艺术家”是模型键(这假设您的流派实体与艺术家实体具有名为“艺术家”的一对多关系)。
然后,您可以将相同的原理应用于第三个表视图+控制器以显示所选艺术家的专辑。
这种设置的通用术语是“主从界面”,Apple 文档中对此链接进行了概述
| 归档时间: |
|
| 查看次数: |
1889 次 |
| 最近记录: |