【发布时间】:2018-03-18 08:15:33
【问题描述】:
在 CollectionView 中,我加载图像以及 FlurryAds。即使应用程序处于离线状态,我也需要显示图像,所以最初我使用 KingFisher 下载图像并存储在缓存中,显示活动加载器,直到所有图像都下载完毕。
这是我用来下载图像并将其存储在缓存中的代码,
KingfisherManager.shared.retrieveImage(with: URL(string: imageUrl)!, options: [], progressBlock: nil) {
(image, error, url, data) in
if let _ = image {
}
}
并使用 KingFisher 将图像加载到 collectionView Cell 中。
func setImageFromCache(url: String) {
let url = URL(string: String(format: "%@", url))
self.kf.setImage(with: url)
}
问题是当所有图像都下载到缓存中并且我导航以查看集合视图中的图像时,所有图像都会显示,但有时当我快速滚动或滚动时,突然回到应用程序的上一个屏幕冻结,必须强制关闭应用程序。
【问题讨论】:
标签: swift caching uicollectionview kingfisher