如何在Swift2中从Xib文件打开新窗口?我已经创建了新的NSWindowController + xib,但我找不到打开它的方法?
@IBAction func openPreferences(sender: NSMenuItem) { let wc = SettingsViewController() //... }
7rfyedvj1#
我知道这个问题是三年前的,但它在一些谷歌搜索的顶部,所以我认为它需要一个答案,专门解决原来的问题。基本上,要使其正常工作,您需要将代码更改为:
@IBAction func openPreferences(sender: NSMenuItem) { let wc = SettingsViewController(windowNibName: NSNib.Name("NameOfXib")) wc.showWindow(nil) }
plicqrtu2#
我已经决定使用自定义的故事板,而不是Xib与NSView。所以这里我的代码。AppDelegate.swift:
class AppDelegate: NSObject, NSApplicationDelegate { lazy var settingsController: NSWindowController? = NSStoryboard(name: "SettingsStoryboard", bundle: nil).instantiateControllerWithIdentifier("SettingsWC") as? NSWindowController @IBAction func openPreferences(sender: NSMenuItem) { if let controller = settingsController { controller.showWindow(self) } } }
2条答案
按热度按时间7rfyedvj1#
我知道这个问题是三年前的,但它在一些谷歌搜索的顶部,所以我认为它需要一个答案,专门解决原来的问题。
基本上,要使其正常工作,您需要将代码更改为:
plicqrtu2#
我已经决定使用自定义的故事板,而不是Xib与NSView。所以这里我的代码。
AppDelegate.swift: