如何在我的应用程序中解决错误EXC_BAD_ACCESS?

时间:2011-01-13 06:08:56

标签: iphone ios4 ios-simulator

我在tableView上加载自定义单元格,然后在tableView中返回50行。 在tableview中显示一些行的数量,但滚动tableview时我的customcell不显示,我有错误

  

“EXC_BAD_ACCESS”

并在控制台上显示以下消息

  

“void SendDelegateMessage(NSInvocation *):委托(webViewDidLayout :)在等待10秒后无法返回。主运行循环模式:UITrackingRunLoopMode”

4 个答案:

答案 0 :(得分:3)

由于您制作自定义单元格的方法,我认为您会收到此错误。当您在.m文件中为自定义单元格创建类文件时,您释放了IBOutlets。尝试从代码中删除该部分而不是尝试。

我在应用中遇到了同样的问题,我用这种方式解决了这个问题。也许这个解决方案也适合你。

答案 1 :(得分:2)

检测僵尸的最佳方法是:

    群组和文件部分中的
  1. 展开可执行文件部分 然后右键单击您的应用名称和 选择获取信息
  2. 选择顶部的参数标签,然后在变量中添加要在环境部分设置的新条目。将新变量命名为 NSZombieEnabled ,并将其值设置为 YES
  3. 在此之后,您将在控制台中获得有关您调用的已释放对象的信息。

答案 2 :(得分:1)

这通常意味着您已要求程序查看您无权访问的内存区域,这通常意味着您已经运行了数组的末尾或其他内容。

如果您在调试模式下运行,堆栈跟踪可能会为您提供更多线索。打开调试控制台。

答案 3 :(得分:0)

你也应该使用NSZombieEnabled,这通常有帮助。它显示了访问了哪个已释放的对象。请务必在使用后将其禁用,因为使用它时,不会释放任何内存。