iOS开发踩坑笔记(一)

遇到的问题:如何使用自定义的UIWindow

很多iOS的学习资料版本滞后,给出的关于自定义window的代码示例无法在Xcode12.4上运行,会出现如下错误:


错误情况

其原因是多了一些文件和设置,让我们一起来删除掉!

(1)SceneDelegate.h和SceneDelegate.m是Swift UI相关的,删除!


SceneDelegate.h和SceneDelegate.m

(2)Main.storyboard是和故事板相关的,删除!


Main.storyboard

(3)info.plist的这块区域和我们删除上面删除的三个文件相关,删除!
info.plist

(4)AppDelegate.m里面的UISceneSession lifecycle部分也需要删除


AppDelegate.m

(5)既然是自定义的window,单纯在AppDelegate.m中使用self.window当然识别不了!你要给它在AppDelegate.h中定义!
@property(nonatomic,strong) UIWindow *window;

至此,大功告成!

PS:还有一个由粗心导致的问题是——我们使用自定义的UIWindow都会给它一个根视图,需要引入ViewController,如果引入ViewController.m会出现如下错误(其他的引入不当也一样),必须引入的是.h文件

你可能感兴趣的:(iOS开发踩坑笔记(一))