我需要加载150张每张100Kb的JPEG图像,但是 在以每个60Kb加载110个JPEG后,我收到内存警告。
我的数组是:
imagesSet = [[NSMutableArray alloc] init];
和图像加载如下:
NSString *fileLocation = [[NSBundle mainBundle] pathForResource:[NSString stringWithFormat:@"%@%d", IMAGE_PREFIX, i] ofType:IMAGE_FORMAT];
NSData *imageData = [NSData dataWithContentsOfFile:fileLocation];
[imagesSet addObject:[UIImage imageWithData:imageData]];
和
show:imageView.image = [imagesSet objectAtIndex:[number intValue]];
内存不足吗?或者我做错了什么?
答案 0 :(得分:1)
到目前为止,您已超出移动设备的内存。请记住,JPEG图像在加载后会被解码。要计算单个图像所需的实际内存量,可以在使用UIImageView时运行以下公式:(width * 4)* height。