Xcode删除自带SceneDelegate并创建自定义ViewController

Xcode更新增加了SceneDelegate文件,现在创建一个新的项目会出现一下情况(xcode版本11.3)


iOS13之前,Appdelegate的作用是全权处理App生命周期和UI生命周期;

 iOS13之后,Appdelegate的作用是只处理 App 生命周期, 而UI的生命周期将全权由新增的SceneDelegate来处理.这里就教大家如何删除SceneDelegate;

1.在项目的info.plist文件右键,Open As --> Source Code打开plist文件,如图:


2.删除SceneDelegate相关配置,如图所示


3.然后再项目中删除掉SceneDelegate.h和SceneDelegate.m文件;delete --> Move to Trash


4.然后删除或者注释掉AppDelagate.m文件中UISceneSession lifecycle方法


5.在AppDelagate.h文件中加入UIWindow属性


到这里就完成了SceneDelegate文件的删除工作,如果需要自定义ViewController,继续往下:

6.选中Main.storyboard,然后选中xib页面,在右侧去掉Is Initial View Controller勾选


7.然后选中项目中viewController.h和.m文件以及Main.storyboard和LaunchScreen.storyboard,邮件delete -->Move to Trash


8.创建自定义根视图(这里是RootViewController,根据自己需求设置)


9.设置带导航栏的RootViewController根视图


10.然后需要将general中的Main Interface和Launch Screen File置空


11.在项目info.plist中添加key:Launch screen interface file base name(不添加会出现上下黑边)


12.到此就大功告成


你可能感兴趣的:(Xcode删除自带SceneDelegate并创建自定义ViewController)