首页 > 代码库 > 奇葩问题-主window消失?
奇葩问题-主window消失?
制作用户登出功能时,用户点击登出按钮,弹出一个alertview,点击确定即把window.rootviewcontroller改成登录vc.
然后发现程序怎么看都不太对劲的样子,最后才注意到:状态栏没了- -
开始摸不着头脑,各种试.随即发现再次试图show alert的时候,控制台出来Attempt to present XX on YY whose view is not in the window hierarchy!这样的输出.
合着是window没了?!
仔细想想应该不是这样的.于是把登出步骤中弹出alert的过程给省了,直接换rootvc,果然是ok的.
废话了这么多,其实最终的解决方案是:点击alert的确定按钮之后,弹出一个hud写个"正在退出登录"神马的骗骗用户,其实就是延迟一秒钟调用换rootvc的方法而已.于是猜想:造成这种情况,应该是因为alert的弹出机制.alertview是凌驾于所有试图之上的,也可以说是凌驾于window上的,他有自己的window.当点击"确定"按钮时,alert的window还没消失,于是获得的是alert的window,进而将alert的window.rootvc切换为登录vc.当然这只是瞎猜而已,如果有大神了解其真正机制,还望不吝赐教~
奇葩问题-主window消失?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。