新建工程时,设置rootViewController报错

2019-12-24  本文已影响0人  sun_glory

更新xcode11后,新建工程设置rootViewController会报错

Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘-[AppDelegate setWindow:]: unrecognized selector sent to instance 0x6000038d03f0’

这是因为Xcode自动新增了一个SceneDelegate文件。iOS13之前,Appdelegate的职责是处理App生命周期和UI生命周期; iOS13之后,Appdelegate的职责是处理 App 生命周期和新的 Scene Session 生命周期(UI的生命周期,交给新增的Scene Delegate处理)。
新的 Scene Session,主要是为了处理多窗口任务,对于不需要适配iPad的app来说,就比较希望恢复成老版的配置模式。可以这样操作:


屏幕快照 2019-12-24 下午5.12.28.png

删除info.plist文件里Application Scene Manifest配置项

屏幕快照 2019-12-24 下午5.06.00.png

在appdelegate里新增window属性

屏幕快照 2019-12-24 下午5.07.16.png

配置app的入口

这样就不用适配UISceneSession lifecycle带来的改变了!

上一篇下一篇

猜你喜欢

热点阅读