我有一个包含 150 个本地图像(每个大约 500kb)的应用程序。我已将它们全部加载到这样的数组中:
allPics = [[NSMutableArray alloc] init];
//NSString *imagePath;
NSArray *result = [database performQuery:@"SELECT image_path FROM validWords order by valid_word"];
for (NSArray *row in result) {
NSString *temp = [row objectAtIndex:0];
NSLog(@"%@", temp);
//imagePath = temp;
UIImage *newImage = [UIImage imageNamed:temp];
[allPics addObject:newImage];
}
当我稍后将我的 UIImageView 设置为其中一张图片时,由于从我阅读的内容中延迟加载,它会挂起我的界面一秒钟。我试图预渲染它们,但是在它通过我的图像的三分之一之前,我的内存使用量超过了 3gb。我是否应该在需要时使用后台线程来渲染图像?当我将图像总数减少到 4 个时,一旦所有 4 个都被渲染一次,它们之间的过渡是无缝的。
我感谢任何和所有提示和解决方案!