从NSToolbar覆盖prepareForSegue

时间:2015-02-16 02:26:03

标签: macos cocoa swift segue

我有一个NSToolbar,里面有NSToolbarItem。该项目将显示第二个视图控制器,我希望能够在segue之前设置视图控制器的表示对象,这意味着我需要在某处覆盖prepareForSegue

我不知道哪个班级会收到prepareForSegue电话。它似乎没有在任何其他视图控制器中调用(这无论如何都没有意义)。

那么 - 我在哪里覆盖prepareForSegue或者我必须以其他方式这样做?

1 个答案:

答案 0 :(得分:2)

你必须继承NSWindowController并将代码放在那里,如下所示:

import Cocoa

class MyWindowController: NSWindowController {    

    override func prepareForSegue(segue: NSStoryboardSegue, sender: AnyObject?) {
        if segue.identifier == "mySegue" {
            // Do whatever you want
        }
    }
}

并将界面构建器中的窗口控制器类设置为MyWindowController