如何从情节提要中引用兄弟视图控制器
How to reference sibling view controllers from a storyboard
我正在尝试使用视图控制器和故事板为 OSX 创建一个 master-detail 应用程序。我有两个兄弟视图控制器(left
和 right
)和一个 parent 拆分视图控制器。
left
child 是一个 table vc 并且有一个 NSArrayController 用于它的绑定。我希望用户选择 table 视图单元之一,并让 right
child 视图控制器显示有关选择的详细信息(有点像邮件应用程序界面)。
我遇到的问题是如何从 right
引用 left
视图控制器?我想获取 left
的 NSArrayController,以便 right
可以绑定到当前选择。
我已经尝试向 right
添加一个 Outlet 并通过 Interface Builder 建立连接,但似乎 IB 不允许您在场景之间拖动连接。然后我去寻找一个程序化的解决方案。我假设 NSStoryboard 会 API 根据一些 id 查找视图控制器,但没有太多 API 公开。
我最终得到了一个草率的解决方案,即通过 parent 视图控制器,并搜索其 children 以在 right
的 awakeFromNib 中找到 left
。
那么在使用 Storyboards 时,有没有更优雅的方式来连接视图控制器呢?感谢您的帮助。
正确且唯一的方法是通过中央控制器。您基本上已经回答了您自己的问题 - 没有自动发现左右视图控制器的优雅方法。
我正在尝试使用视图控制器和故事板为 OSX 创建一个 master-detail 应用程序。我有两个兄弟视图控制器(left
和 right
)和一个 parent 拆分视图控制器。
left
child 是一个 table vc 并且有一个 NSArrayController 用于它的绑定。我希望用户选择 table 视图单元之一,并让 right
child 视图控制器显示有关选择的详细信息(有点像邮件应用程序界面)。
我遇到的问题是如何从 right
引用 left
视图控制器?我想获取 left
的 NSArrayController,以便 right
可以绑定到当前选择。
我已经尝试向 right
添加一个 Outlet 并通过 Interface Builder 建立连接,但似乎 IB 不允许您在场景之间拖动连接。然后我去寻找一个程序化的解决方案。我假设 NSStoryboard 会 API 根据一些 id 查找视图控制器,但没有太多 API 公开。
我最终得到了一个草率的解决方案,即通过 parent 视图控制器,并搜索其 children 以在 right
的 awakeFromNib 中找到 left
。
那么在使用 Storyboards 时,有没有更优雅的方式来连接视图控制器呢?感谢您的帮助。
正确且唯一的方法是通过中央控制器。您基本上已经回答了您自己的问题 - 没有自动发现左右视图控制器的优雅方法。