Вопрос:

Кэшировать изображения на диск напрямую, используя retriveImage ()?

ios swift kingfisher

187 просмотра

2 ответа

158 Репутация автора

Я использую Kingfisher для загрузки изображений следующим образом:

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

Мне было интересно, можно ли их кешировать прямо на диск? Так как я получаю много изображений, время от времени память может немного напрягаться.

Автор: Recusiwe Источник Размещён: 22.04.2017 08:33

Ответы (2)


0 плюса

1492 Репутация автора

На доке Kingfisher уже есть метод, доступный. Который будет устанавливать изображение с URL-адреса и в то же время будет обрабатывать кэш.

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

Больше информации о CocoaDocs

Автор: Shad Размещён: 22.04.2017 08:42

0 плюса

5394 Репутация автора

Документация для ImageCacheгосударств , которые вы можете настроить объем памяти , что Kingfisher будет использовать через maxMemoryCostсобственность. Он говорит, что значение по умолчанию не ограничено и, по-видимому, представляет это с 0.

Я не пробовал, но вы можете попробовать установить его на очень низкое число (поскольку оно относится к общему количеству пикселей, число, например, 10, гарантирует, что в памяти практически нет изображений) и посмотреть, что произойдет.

Автор: Dave Weston Размещён: 23.04.2017 04:07
Вопросы из категории :
32x32