0

我正在使用HanekeSwift从 URL下载图像并将其设置在 UIImage 中。

我这样做就像 .hnk_setImageFromURL()

图片 URL 经常用新图片更新,我需要下载新图片。但是由于图像已经在缓存中可用,因此图像是从缓存中获取的,而不是从 url 获取中获取的。为了解决这个问题,我尝试使用 Shared.imageCache.remove(key: ) 删除此键(即 URL)的缓存条目。

即使在这样做之后,图像也是从缓存中获取的,我没有看到任何网络调用。看起来 remove(key:) 函数没有按预期工作。

帮助我找到解决此问题的方法。

4

1 回答 1

1

如果您image.hnk_setImageFromURL(URL)在这种情况下使用缓存图像,则必须删除图像实例的所有缓存,但如果您使用键值对缓存图像,则可以使用它的键删除缓存。

例子

如果我像缓存图像

let imageCache = Shared.imageCache
imageview.hnk_setImageFromURL(URL) 

在上述情况下,您可以使用删除缓存,imageCache.removeAll()但如果您是缓存图像,例如

imageview.hnk_setImage(UIImage(), key:"image")在这种情况下,您可以删除使用imageCache.remove(key: "image")

您还可以使用缓存图像imageCache.set(value: UIImage(named:""), key: "image")并使用删除缓存imageCache.remove(key: "image")

于 2017-02-09T13:13:38.810 回答