使用retriveImage()直接将映像缓存到磁盘?

时间:2017-04-22 20:33:58

标签: ios swift kingfisher

我使用Kingfisher以下列方式下载图像:

 KingfisherManager.shared.retrieveImage(with: url!, options: nil, progressBlock: nil, completionHandler: { (image, error, cacheType, imageURL) -> () in
            if let image = image {

我想知道是否可以将它们直接缓存在磁盘上?由于我正在检索大量图像,因此内存可能会有点挣扎。

2 个答案:

答案 0 :(得分:0)

在Kingfisher的doc上已有一种方法可用。这将从URL设置图像,同时它将处理缓存。

sleep

More info on CocoaDocs

答案 1 :(得分:0)

ImageCache documentation表示您可以配置Kingfisher将通过maxMemoryCost属性使用的内存量。它表示默认值是无限的,显然表示为0.

我没有尝试过,但您可以尝试将其设置为一个非常低的数字(因为它指的是像素总数,像10这样的数字会确保基本上没有图像在内存中)并且看到会发生什么。