【发布时间】:2018-08-10 12:21:54
【问题描述】:
我有一个 CollectionView,其中包含具有 UIImageView 的单元格。列表中的某些图像具有 3000 x 2000 以上的高分辨率。我正在使用 AlamofireImage 库来显示和缓存图像,但它仍然有巨大的峰值。我试过做
let filter = AspectScaledToFillSizeFilter(size: imageView.frame.size)
imageView.af_setImage(withURL: url, filter: filter)
这并没有太大的变化。
有没有更好的方法在下载图像时调整/降级分辨率,但在将其显示为 iOS 内存峰值之前,更多是因为分辨率而不是图像文件的实际大小。
【问题讨论】:
-
请尝试在代码块周围使用自动释放池。让我知道它是否适合您。
-
@iChris 我试过了,但没有帮助。在 300-400 MB 之前仍然会出现 1 秒的内存峰值。
-
我删除了
nuke标签,因为它是用于 VFX 的合成应用程序。
标签: ios sdwebimage alamofireimage kingfisher