我需要从AppDelegate
呈现视图控制器,所以我编写了以下代码:
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let authViewController = storyboard.instantiateViewControllerWithIdentifier("ViewController") as ViewController
if let keyWindow = UIApplication.sharedApplication().keyWindow {
keyWindow.rootViewController = authViewController
}
不幸的是,window
和keyWindow
都是nil
。为什么呢?
答案 0 :(得分:35)
如果不使用主界面选项,则需要自己创建窗口:
window = UIWindow(frame:UIScreen.mainScreen().bounds)
Swift 3.0
self.window = UIWindow(frame: UIScreen.main.bounds)
然后使用window
调用上面的代码。
最后,在窗口上调用makeKeyAndVisible()
。