我在项目中使用AlamofireImage。我经常使用someImageView.af_setImageWithURL(url)
。
但是在某些时候,我需要从imageCache手动获取图像,因为我不想将其应用于UIImageView。
这带来了两个问题:
let imageCache = AutoPurgingImageCache()
创建一个图像缓存来直接访问图像缓存。该是否与.af_setImageWithURL()
使用的缓存(Singleton)相同?还是这是一个新的?在我看来,这毫无用处,因为我无法从预填充的缓存中获利。 imageCache.imageForRequest(NSUrlRequest)
。如果NSUrlRequest确实使用相同的NSURL,这是否与我以前使用.af_setImageWithURL()
下载的图像匹配? 最佳答案
问题1
这与UIImageView
使用的缓存不同。如果需要访问相同的缓存,可以通过UIImageView.af_sharedImageDownloader.imageCache
进行访问。
问题2
您将需要使用完全相同的NSURLRequest
和相同的ImageFilter
。如果您使用相同的NSURLRequest
和相同的ImageFilter
,则将直接从缓存中提取图像(如果存在)。如果您使用其他ImageFilter
,则原始图像很可能会从NSURLCache
中拉出,然后ImageFilter
将在其上运行,放入AutoPurgingImageCache
中并返回。如果NSURLRequest
不同,则需要再次下载新图像。
关于ios - Alamofire图片:af_setImageWithURL()之后从AutoPurgingImageCache获取图片,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33318935/