从一个空白的OS X应用程序项目开始,我将下面的代码添加到applicationDidFinishLaunching
。NSApplication keyWindow在applicationDidFinishLaunching期间为零
func applicationDidFinishLaunching(aNotification: NSNotification) {
let app = NSApplication.sharedApplication()
guard let window = app.keyWindow else {
fatalError("No keyWindow\n")
}
print(window)
}
发射时我打的错误情况,因为我的本地window
变量是零。但是,当我显示应用变量的内容时,我看到_keyWindow
的有效值。还要注意,在堆栈转储旁边的屏幕上显示空白的GUI窗口。
为什么在这种情况下,keyWindow: NSWindow?
财产收益为零? 感谢
我直接从Finder启动测试应用程序而没有崩溃。我在控制台日志中确认没有问题,所以这确实是从XCode中运行的工件。 –