标签:ar os sp on 问题 bs tt nbsp res
制作用户登出功能时,用户点击登出按钮,弹出一个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.当然这只是瞎猜而已,如果有大神了解其真正机制,还望不吝赐教~
标签:ar os sp on 问题 bs tt nbsp res
原文地址:http://www.cnblogs.com/forhonour/p/4118883.html