在 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)
}
问题是当所有图像都下载到缓存中并且我导航以查看集合视图中的图像时,会显示所有图像,但有时当我快速滚动或滚动时,突然回到上一个屏幕应用程序冻结并且有强制关闭应用程序。