2016-05-04 12 views
1

私はストーリーボードとスウィフトを使用しています。 今、xibファイル内にパックされた新しいNSWindowを開こうとしています。 (私はNSWindowを含む新しいxibファイルを作成しました)ストーリーボードとスウィフトを使ってxibからNSWindowを開きます

私のプロジェクトに次のコードを追加しましたが、ウィンドウを開けません。

let controller = NSWindowController(windowNibName: "xibFile") 
controller.showWindow(self) 

私は

print(controller.window?.title) 

も私にXIBファイルから正しいウィンドウタイトルを与えることはありませんように私が何か間違ったことをやっていると確信しています。

誰でも私が間違っていることをヒントにすることができます。ありがとう! 2番目のペン先で

+0

は、あなたのXIBウィンドウは、カスタムクラスまたはちょうどのNSWindowControllerを持っていますか? あなたは 'controller.showWindow(self)'をどこで起動させましたか? AppDelegateの中にありますか? – Jacky

答えて

2

class SecondNibController: NSWindowController { 
    override var windowNibName: String? { 
     return "SecondNib" // no extension .xib here 
    } 
} 

あなたの窓にSecondNibConntrollerwindowコンセントを接続することを忘れないでください。メインストーリーボードで

class ViewController: NSViewController { 
    let secondNibController = SecondNibController() 

    @IBAction func openSecondWindow(sender : AnyObject) { 
     secondNibController.showWindow(nil) 
    } 
} 
関連する問題