2017-04-22 99 views
0

我用翠鸟下载图像以下列方式:直接使用retriveImage()将图像缓存到磁盘?

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

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

回答

0

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

let url = URL(string: "url_of_your_image") 
imageView.kf.setImage(with: url) 

More info on CocoaDocs

+0

我这样做的方式很好,因为我没有将图像分配给imageView,而是将它们用作Google Maps上的叠加层。我只需要知道我是否可以将它们存储在磁盘上,而不是默认情况下存储在内存中。 – Recusiwe

0

documentationImageCache状态,您可以配置的内存,翠丰集团将通过maxMemoryCost财产使用量。它说默认是无限的,并且显然用0表示0。

我还没试过,但是可以尝试将它设置为非常小的数字(因为它指像素的总数,类似于数字10将确保基本上没有图像在内存中),看看会发生什么。