我的文档文件夹中有图像,我在其中一个屏幕上显示。加载图像并在屏幕上显示它们需要花费很多时间,类似于从网络加载图像时。据我所知,异步imageView适用于后一种情况。我可能错了。
我们是否可以异步显示文档文件夹中的图像?
答案 0 :(得分:1)
看看SDWebImage。它是一个UIImageView子类,允许您从URL和有用的缓存异步显示图像。它旨在使用Internet URL,但我认为它也适用于内部URL。
答案 1 :(得分:1)
将图像加载到后台线程中,如下所示
-(void)backgroundLoadImageFromPath:(NSString*)path {
UIImage *newImage = [UIImage imageWithContentsOfFile:path];
[myImageView performSelectorOnMainThread:@selector(setImage:) withObject:newImage waitUntilDone:YES];
}
然后在需要设置图像的地方调用该线程
[self performSelectorInBackground:@selector(backgroundLoadImageFromPath:) withObject:path];
注意,在backgroundLoadImageFromPath中,您需要等到setImage:选择器完成,否则后台线程的自动释放池可能会在setImage:方法保留之前解除分配图像。