这段代码肯定有问题:
+ (UIImage*)captureView:(UIView *)theView {
UIGraphicsBeginImageContext(theView.frame.size);
[theView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
当我使用它时,Xcode会抛出此错误消息:
malloc: *对象的错误 0x103f000:被释放的指针不是 分配 * 在malloc_error_break中设置断点以进行调试
我看不到任何内存管理错误。还有其他人吗?
答案 0 :(得分:1)
我有同样的警告。但是,它不会发生在3.1或更高版本中。
答案 1 :(得分:0)
别看。在构建中启用NSZombie
以对其进行跟踪。
它可能与从类方法返回自动释放的UIImage有关,该方法可能位于临时自动释放池中。该池的排水可能会破坏图像。要进行测试,请将方法移动到实例方法,然后查看问题是否消失。