我正在使用 SDWebImage 库来异步下载和缓存图像以及从 Web 服务。以下是我用来下载图像的方法:
- (void) downloadThumbnails:(NSURL *)finalUrl
{
SDWebImageManager *manager = [SDWebImageManager sharedManager];
[manager downloadWithURL:finalUrl
options:0
progress:nil
completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished)
{
if (image)
{
[self setThumbnail:image];
}
}];
}
它成功地从 web 服务下载图像并在 tableview 中显示它们。但是,它不会在应用程序运行之间保留图像。为了缓存图像,我还需要做些什么吗?
更新:请不要建议使用以下内容:
[cell.imageView setImageWithURL:[NSURL URLWithString:@"http://www.domain.com/path/to/image.jpg"]
placeholderImage:[UIImage imageNamed:@"placeholder.png"]];
因为,我的程序结构不同。其次,如果您在此处阅读 SDWebImage 库的描述,您将了解它可以像我使用 SDWebImageManager 一样使用它。