【发布时间】:2021-06-17 13:53:31
【问题描述】:
在 Xcode 12 中创建新的 iOS 项目时,会自动添加 UISceneDelegate。由于我的应用程序应该在 iOS 11+ 上可用(不支持 UISceneDelegate),我不得不将其删除。
从info.plist 和AppDelegate 中删除UISceneDelegate 当然没有问题。但是我想知道是否必须向application(_: didFinishLaunchingWithOptions) 添加任何代码在大多数教程中我发现这个方法只是留空,只需要添加var window: UIWindow?。其他来源表明必须添加一些设置代码。
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
/* Manual Setup */
// let window = UIWindow(frame: UIScreen.main.bounds)
// window.rootViewController = ViewController() // Your initial view controller.
// window.makeKeyAndVisible()
// self.window = window
return true
}
}
在我的测试中,一切正常,无需任何额外的设置代码。 rootViewController 是从 Storyboard 自动加载的,一切正常。
这只是巧合吗,这是在后台发生的一些 Xcode 魔术(如果代码丢失,自动添加 rootVC),还是我的代码(没有设置)损坏并最终在某个非常糟糕的时刻失败
【问题讨论】:
标签: ios xcode appdelegate uiscenedelegate