你好,我正在开发一个 iPhone 应用程序,它提供图像和文本信息。每个文本中都有一个图像,可以单击和缩放,用 UIImageView 显示
NSString* imgName = [imgPath substringToIndex:[imgPath rangeOfString:@".jpg"].location];
UIImage* img = [UIImage imageWithContentsOfFile:[[NSBundle mainBundle] pathForResource:imgName ofType:@"jpg"]];
[imgView setImage:img];
当我一张一张地打开图像来浏览图像时,应用程序崩溃了(在设备上调试)。控制台出现一些错误:
:解压错误
my_app_name(1226,0x3e088868) malloc:* mmap(大小= 32768)失败(错误代码= 12)
*错误:无法分配区域
进而:
CoreAnimation:无法分配 2228352 字节。
我的代码没有泄漏,如果我不打开图像,我就不会收到错误。那么有人知道这个问题可能出在哪里吗?
哦,我想我终于修好了。是的,我的图像相对较大,大约 700*600 大小。
问题似乎出在[imgView setImage:img];
该img虽然被释放但不知何故仍然在内存中,我不知道。一行代码[imgView setImage:nil];
在 dealloc 中释放 imgView 之前修复了该问题。
谢谢你的帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)