今天遇到这样的问题:一个ViewController,被几个NavBar页push。一个页面的push正常,另外一个页面push后,就不能用操作,不管点什么地方都一样。在xcode里结束还可能引起xcode的崩溃。一直查不出是什么总是。一直到下午,偶尔的运行时,弹出一个AlertView(我在push页面前,是需要弹出一个AlertView来选择的)后,点取消,又显示出来一个AlertView。MMD,估计就是这个的问题了。页面弹出两个AlertView,但是只显示出第一个,后面一个AlertView显示时,已经跳转到另外的页面了,就显示不出来,但是焦点在AlertView上,所以操作就没反应。
查看代码,发现弹出AlertView的代码写在viewDidLayoutSubViews里。改到viewDidLoad里后,就正常了。
在iOS开发中,遇到一个ViewController被多个NavBar页面push后,其中一个页面操作异常,无法点击。通过将弹出AlertView的代码从viewDidLayoutSubviews移至viewDidLoad,问题得到解决。分析原因,推测是AlertView显示时抢占了页面焦点,导致后续操作失效。
636

被折叠的 条评论
为什么被折叠?



