我正在使用以下代码将图像加载到视图中:
private func setUpImage(imageFile: String, cell: ShowCollectionViewCell) {
cell.showImageView.sd_imageIndicator = SDWebImageActivityIndicator.gray
cell.showImageView.sd_setImage(with: URL(string: imageFile), placeholderImage: nil, options: .refreshCached)
}
问题是,如果我们替换服务器中的图像,即使用户关闭应用程序并重新启动它,该图像也不会在应用程序中刷新。只有全新安装才能获得新映像。
SDWebImage可以在使用缓存版本之前检测图像是否已远程更改吗?
我正在使用带有Swift 4.2和XCode 11.1的最新版本的SDWebImage。
答案 0 :(得分:0)
我在StackOverflow
中搜索,发现了。
在here
import SDWebImage
@IBAction func clearCache(sender: UIButton) {
SDImageCache.sharedImageCache().clearMemory()
SDImageCache.sharedImageCache().clearDisk()
}
如@ {guidev
所述,您尝试重置缓存。
该文档可能很旧,但是我相信您可以使用它。
答案 1 :(得分:0)
缓存基于URL,因此如果要重新下载图像,则需要更改url名称。考虑将类似上次修改日期的内容附加到网址中。或者在图片更新时发送推送,然后使用removeImageForKey
从缓存中手动退出网址。