当我按下某个视图控制器,然后弹出它,然后重复看似随机的次数,应用程序最终崩溃,错误为EXC_BAD_ACCESS。
这一点我每次都能可靠地复制。它主要发生在我第二次弹出视图控制器的时候,但有时也可能是第三次或第四次。
因此,我决定设置NSZombieEnabled来查看问题所在。
但启用此功能后,将无法复制崩溃。唯一改变的是,我在活动可执行文件的配置中选中了"NSZombieEnabled“旁边的复选框,应用程序就可以完美地工作了。
你知道是什么原因造成的吗?
谢谢
发布于 2011-02-04 14:50:22
我在模拟器中使用iPhone应用程序时也遇到了同样的问题。当我弹出一个特定的视图控制器时,它会抛出一个EXC_BAD_ACCESS,但是一旦NSZombieEnabled打开,这个错误就消失了。
为了缩小范围,我在弹出的视图控制器的dealloc中注释掉了所有的释放,这可以防止应用程序崩溃,然后逐个取消注释,直到它再次崩溃,显示出有问题的变量。
在我的例子中,实际上是变量的release语句本身抛出了EXC_BAD_ACCESS
除了不发布,我不能确切地告诉你如何从那里修复它。在调整和清理代码后,我能够让它正常工作,但当我试图回滚更改以再次获得错误并缩小精确修复范围时,我无法复制该问题。实际上,我在第一次回滚时就得到了它,但再也没有。也许有一些环境因素在起作用?
这不是一个确切的答案,但也许它会为某人指明正确的方向。
https://stackoverflow.com/questions/4164233
复制相似问题