Местный gif не отображался, когда я обновлял Kingfisher

Я обновил Kingfisher с 4.10 до 5.7, однако GIF не отображался в imageView с тем же кодом.

Вот мой код:

let path = Bundle.main.path(forResource: "loading", ofType: "gif")!
let resource = ImageResource(downloadURL: URL(fileURLWithPath: path))
imageView.kf.setImage(with: resource)

Он хорошо работает с Kingfiser 4.10.


person 无夜之星辰    schedule 07.11.2019    source источник
comment
Не знаете, почему вы используете Kigfisher для отображения локальных файлов?   -  person Starsky    schedule 07.11.2019
comment
@Starsky Любой совет?   -  person 无夜之星辰    schedule 07.11.2019
comment
Попробуйте найти решение в этом сообщении.   -  person Starsky    schedule 07.11.2019


Ответы (1)


В библиотеке Kingfisher есть локальный поставщик изображений, который должен использоваться для загрузки локального изображения.

Поэтому ваш код должен быть изменен на это:

let path = Bundle.main.url(forResource: "loading", withExtension: "gif")!
let resource = LocalFileImageDataProvider(fileURL: path)
imageView.kf.setImage(with: resource)
person Najdan Tomić    schedule 21.11.2019
comment
привет, я хочу загрузить сетевое изображение GIF, как я могу это сделать? Спасибо - person famfamfam; 12.05.2021
comment
@famfamfam, поскольку это вопрос для библиотеки Kingfisher, я думаю, вы хотели бы загрузить удаленный GIF с помощью Kingfisher. Вы можете сделать это так: imageView.kf.setImage(with: URL(string: "https://cdn.journaldev.com/wp-content/uploads/2017/04/android-collapsing-toolbar-default-output.gif")). - person Najdan Tomić; 16.05.2021
comment
работает как положено, спасибо - person famfamfam; 16.05.2021