iOS 编程之UIWindow切换

由于最近项目需要制作一个可定制的底部弹窗效果,因此研究了一下UIActionSheet,打算重写一个自定义的弹窗,在写demo的时候出于偷懒的原因,直接在新建项目的

- (void)viewDidLoad {}

中写入了窗口切换测试代码,结果在调试的时候就出现了如下错误信息:

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Application windows are expected to have a root view controller at the end of application launch'

 

在网上搜索了一下大多数朋友都说是因为Xcode的版本导致的,需要在

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {}

 

方法中手动添加一个rootViewController。按照上述方法做了之后发下依旧报相同BUG,随后将窗口切换代码写入按钮点击事件,通过点击事件触发切换。通过该方法解决了这个问题。

初步原因分析:

可能是在viewDidLoad的时候并没有进行界面的绘制,而在这个时候切换窗口所以导致了该异常的错误,这只是片面的猜测,希望有知道的朋友指正下。

自定义action sheet GIT链接:https://github.com/SuPair/SUActionSheet


转载于:https://www.cnblogs.com/SuPair/p/4651227.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值