我一直在研究这个问题,有些人说只要应用程序没有崩溃,这个错误就可以了。
我的应用程序出现此错误,在此之后,当我尝试点击某个单元格的行(调用didSelectRowAtIndexPath)时,它会崩溃。它给了我一个错误UIImage发送消息到解除分配的消息。我猜这是因为内存警告它释放了一些UIView,因此它崩溃了。
为什么会这样,我该如何解决这个问题?我已经调试了很长一段时间,使用乐器,剖析等,没有运气。 我想发布一些代码,但不知道要发布哪一个。
答案 0 :(得分:0)
你未能保留你关心的事情。从您的消息中,我怀疑该对象是UIImage
。首先运行静态分析器,看看你是否还没有明显的东西。然后检查你的ivars,特别是与图像有关的ivars。确保使用访问器访问您的ivars而不是直接访问(除了init,访问器本身和dealloc)。确保使用“retain”定义对象属性。
您可以使用“Zombies”工具来帮助您追踪保留不足的对象。
答案 1 :(得分:0)
根据你的一条评论,很明显问题在于内存管理和发布你的对象......我建议你深入研究你的代码并找出你发布你的代码片段对象(或分配它们)...也可能是因为你在分配后并没有释放你的对象,并且处理器因为内存不足而试图杀死你的应用程序...顺便说一下,这种错误吸引了你很多时间......祝你好运...