iOS 启动后黑屏?
分析问题,是否有启动广告?是启动图是黑色?或者引导图?
若都不是,则一般是由于没有添加好首页控制器的原因。
来解决~
添加主控制器
一开始创建好项目时,在模拟器上跑时,默认的首页控制器是ViewController。这时需要我们手动设置自己的控制器。
1、直接删除ViewController.h和 ViewController.m
1604315969519.jpg这里千万不能手快,直接按了默认的 Remove References,只是不显示在项目中,并没有删除文件,点击 Move to Trash 这才是删除文件。(这里只是提一下,废话而已~)
2、直接删除 SceneDelegate.h 和 SceneDelegate.m
xcode11 以上版本,会默认生成 SceneDelegate.h 和 SceneDelegate.m这两个文件,这个代理文件的功能及其用法这里不涉及,后续我会再发一篇文章来谈谈。
3、创建自己的主控制器(省略...)
4、将主控制器添加到window上
将 window 属性写到 AppDelegate.h中声明。
@property (strong, nonatomic) UIWindow *window;
引入自己的主控制器
#import "HomeViewCtl.h"
删除SceneDelegate相关代理,这里一定要删除,不然就会走这个代理了。
SceneDelegate删除.jpg
添加主控制器添到window上,在 AppDelegate中的- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中添加。
// 设置Widnow的Root控制器
HomeViewCtl *vc = [[HomeViewCtl alloc] init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:vc];
_window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
[_window makeKeyAndVisible];
_window.backgroundColor = [UIColor whiteColor];
_window.rootViewController = nav;
上述的写法有很多中,但是大概都是这个样子,如果项目中有其他需求,可以根据实际的需求进行更改,但是必须要设置_window.rootViewController这个不然不会显示。
做完以上步骤,如果 APP 启动后显示黑色界面,我们再来看看这里有没有删除。
1604323904411.jpg
把这个选项删除了,再重新启动,应该就没问题了。
如果能帮到你,我当然高兴啦~~
网友评论