iOS开发中遇到的小坑(一)

获取顶层的UIViewController遇到的坑:

之前做项目更新购物车的badge时,本意是获取TabbarController,然后设置badge,但是出现了崩溃。原因是获取到rootViewController时,不是TabbarController,而是UIApplicationRotationFollowingController,然后调用更新badge的时候出现了@selector崩溃。观察发现是因为获取root时出现了AlertView,然后导致了keyWindow的rootViewController发生了变化。自己猜测是因为AlertView变成了UIAlertController。

解决方案:app启动之后在didFinishLaunchingWithOptions里直接获取到rootController然后放到单例里,用的时候直接取就可以。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • *7月8日上午 N:Block :跟一个函数块差不多,会对里面所有的内容的引用计数+1,想要解决就用__block...
    炙冰阅读 7,315评论 1 14
  • 【学龄后】口号:温柔地坚持 孩子第一个30天目标:在洗手间刷牙,刷完牙马上洗脸 妈妈第一个30天目标:恢复与大宝的...
    zengl阅读 1,254评论 0 0
  • 我不怕失败,只怕时间匆匆,不能让你在最好的年华,看见最好的我。
    顾小仙的橘子汽水阅读 1,339评论 0 0
  • 妈妈,写作好神奇。 那几天我心情有点低落,什么都不想干,还总对傅先生抱怨,“做人真累,真无聊,我不想活了,我想死。...
    斜杠青年大丹丹阅读 1,475评论 0 0