我正在使用AFNetworking 2.5版。我在下面描述了我的问题。提前谢谢。
我的问题:
当我调试时,我看到AFNetworking下载图像并将其存储到磁盘。重新启动后,映像缓存仍保留在磁盘中,但不会从NSCache返回。
请注意,app也没有收到任何内存警告,也没有自动清除缓存。每次重新启动时,我都会检查finder中的文件并看到它们全部保留,但AFNetworking无法从缓存中接收它,并再次下载。
" UIImageView + AFNetworking.m"返回nil:
return [self objectForKey:AFImageCacheKeyFromURLRequest(request)];
我的代码:
NSURL *imageURL = [NSURL URLWithString:facility.image.list.original];
NSMutableURLRequest *imageURLRequest = [NSMutableURLRequest requestWithURL:imageURL];
[imageURLRequest addValue:@"image/*" forHTTPHeaderField:@"Accept"];
[cell.image setImageWithURLRequest:imageURLRequest placeholderImage:nil success:^(NSURLRequest *request, NSHTTPURLResponse *response, UIImage *image) {
if (request)
{
[UIView transitionWithView:cell.image
duration:0.2f
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{[cell.image setImage:image];}
completion:NULL];
}
else
{
[cell.image setImageWithURL:imageURL];
}
} failure:nil];
答案 0 :(得分:1)
“AFImageCache
:一个仅限内存的图像缓存专用于AFNetworking
,从NSCache创建子类”
如果您需要在光盘上缓存图片,可以使用其他库,例如SDWebImageCache。