2017-04-22 83 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將確保基本上沒有圖像在內存中),看看會發生什麼。