我有一个基本的Cocoa应用程序来试用Swift和Storyboard。
该应用程序由3个主要视图组成,这些视图由NSTabViewController
管理,再次链接到主窗口的“窗口内容”关系。
我在窗口的工具栏中添加了NSSegmentedControl
,以便在3个标签视图之间切换。
在主窗口控制器中,我添加了工具栏项的操作方法,以便在标签之间切换,但我无法弄清楚如何获取对标签视图控制器的引用以实际切换标签。
我尝试将我的操作方法添加到选项卡视图控制器,但这不起作用,因为选项卡视图控制器可能不在响应程序链中,如果它包含一个空视图(这是一个错误吗?)。
作为一种解决方法,我在选项卡视图控制器中覆盖了viewDidAppear()。在那里,我获得了view.window.windowController的句柄,并在实例变量中设置了对“self”的引用。这有效,但似乎不对。应该有办法从窗口控制器到它的内容视图控制器...
窗口控制器和标签视图控制器存在于不同的场景中,我无法通过IBOutlet连接它们。此外,对于“窗口内容”关系,窗口控制器上都没有调用segue方法。
答案 0 :(得分:0)
我主要是OS X家伙,我自己也是StoryBoards的新手,但我认为你需要做的是:
写下你的
- (IBAction)someResponse:(id)sender {}
方法。
答案 1 :(得分:0)
我知道我已经非常迟了,也许在发布该问题时它并不存在,但对于任何登陆此处的人来说,NSWindowController
都有contentViewController: NSViewController?
属性(已添加)在macOS 10.10中,所以在2014年底我认为。)