我在Xcode 8.0 beta 4中创建了一个新的macOS项目,并尝试运行这个简单的应用程序,然后再将其充实。在Xcode 8中,应用程序的窗口永远不会打开;但是当我使用Xcode 7.3.1时它确实如此。其他更加充实的应用程序在Xcode 8中表现良好。出了什么问题?
我从MainMenu.xib中删除了窗口对象,但是当我创建MainWindowController.swift时,我在MainWindowController.xib中自动创建了另一个窗口。这是我的代码(删除了注释),这似乎很标准:
AppDelegate.swift:
import Cocoa
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
var mainWindowController: MainWindowController?
func applicationDidFinishLaunching(aNotification: NSNotification) {
let mainWindowController = MainWindowController()
mainWindowController.showWindow(self)
self.mainWindowController = mainWindowController
}
}
MainWindowController.swift:
import Cocoa
class MainWindowController: NSWindowController {
override var windowNibName: String {
return "MainWindowController"
}
override func windowDidLoad() {
super.windowDidLoad()
}
}
这就是它的全部。在Xcode 7.3.1中,打开一个空窗口;应用程序启动Xcode 8.0 beta 4但窗口永远不会打开。了解Xcode 8(beta)在一个稍微更加丰富的应用程序和一个不显示的应用程序之间的关键差异将会有所帮助。