Знайомтеся анімований gif
Android не підтримує анімовані gif-файли з коробки. Розглянемо кілька способів для вирішення проблеми.
Перше, що спадає на думку - використовувати WebView. Можна просто розмістити на екрані своєї активності компонент і завантажити в нього потрібну картинку.
Другий варіант - створити свій новий клас з власним конструктором, успадкованих від WebView:
Залишилося тільки програмно встановити створений компонент. Для дослідів використовувався файл lick.gif в папці assets.
Два способи ідентичні по суті. Але слід врахувати, що WebView є дуже "важким" компонентом, практично це цілий браузер. Але з іншого боку, це самий просто і зрозумілий спосіб.
Альтернативний спосіб показати анімований файл - скористатися класом android.graphics.Movie. Створимо новий клас MoviewGifView:
Підключаємо в головній активності.
Бажано також відключити підтримку апаратного прискорення у активності в маніфесті.
Приклад простий і працездатний.
Можна доопрацювати клас MovieGifView. додавши підтримку завантаження з ресурсів і управління розмірами.
Додамо висновок логів.
додаткове читання
Існують різні бібліотеки для роботи з анімованими ДІФКУ.
У мене не було причин використовувати файли даного формату в проектах, тому не можу судити про плюси і мінуси кожного із зазначених способів.
Бібліотека Glide для роботи з зображеннями підтримує GIF. Напевно, це найкращий варіант для ваших проектів.