在对仅在iOS7上发生的崩溃进行故障排除时(iOS6很好),应用程序在无法帮助进行故障排除的线路上多次崩溃,但最终在[object release]
这样的线路上崩溃了一次。
我删除违规行后,崩溃消失了。
旧代码:
[imageView removeFromSuperview];
[imageView release];
imageView = nil;
imageView = [[UIImageView alloc] initWithImage:image];
[self addSubview:imageView];
新代码:
[imageView removeFromSuperview];
//[imageView release];
imageView = nil;
imageView = [[UIImageView alloc] initWithImage:image];
[self addSubview:imageView];
堆栈显示崩溃:objc_msgSend ()
如果有人可以解释为什么它在iOS7上使用旧代码崩溃以及我做错了什么,我将不胜感激? 另外,我想了解为什么它没有崩溃iOS6。
答案 0 :(得分:0)
尝试启用NS Zombies来检查你是不是试图过度释放它听起来像你一样..你应该检查一下,看看imageView在发布之前是不是nil:)
如果可以的话,我建议你搬到ARC。