在NSSplitViewController内的两个视图控制器之间传递数据的正确方法是什么?

时间:2017-01-18 18:47:01

标签: swift macos cocoa

概述:我的应用结构如下所示:

NSSplitViewController
`- SidebarViewController
|  `- NSOutlineViewController
|     `- NSTreeController
|       `- SidebarEntity (static)
`- ContentViewController
   `- NSTableViewController
      `- NSArrayController
         `- ContentEntity (CoreData)

任务:我想根据侧栏中的选择过滤ContentEntity列表。

问题:我不知道将选择更改从SidebarVC传递到ContentVC的正确方法是什么。

环境:XCode 8.2.1,Swift 3,OS X 10.11.6

1 个答案:

答案 0 :(得分:0)

在浏览了Cocoa相关书籍之后,我发现了一个被认为是"正确"一。我可以使用适当的方法创建一个ContentVC协议来接收侧边栏选择更改,在NSSplitController中创建正确的过滤方法,并使msra成为侧边栏的委托,过滤结果集基于来自代表的电话。