OSX Swift - 显示模态第二个窗口

时间:2016-06-16 21:05:32

标签: swift macos cocoa

我试图在点击按钮后显示第二个窗口:

var winJ:WinJo // other window NSViewController

@IBAction func BtnNewWin(sender: AnyObject) {
    winJ = WinJo()
    winJ.showWindow(self)
}

这很好但我希望新窗口是模态的。我用Xcode设计器完成了这个,但我无法弄清楚如何在代码中做到这一点。

1 个答案:

答案 0 :(得分:3)

在我指出正确的方向后,我找到了解决问题的方法:

NSApp.runModalForWindow(winJ.window!)

NSApp实际上是NSApplication的实例。

在第二个窗口中非常重要:

func windowWillClose(notification: NSNotification) {
        NSApp.stopModal()
    }

否则关闭第二个窗口后,您的主窗口将被阻止。