Мне нужно отобразить анимацию, состоящую из 3 drawable
ресурсов, циклически около 5 раз в секунду. Сейчас я использую ImageView
, а чертежи загружаются в массив Bitmap[3]
, предварительно масштабированный. Исходный размер ресурсов составляет 2000x2000 px, и я узнал, что могу уменьшить только до 500 px, прежде чем изображение начнет выглядеть ужасно.Эффективный способ загрузки и отображения амитации (набор графических кадров)
Анимация сама по себе выглядит гладкой (то есть она занимает менее 200 мс на фрейм, так что нет видимого отставания), но занимает совсем немного процессора. И реальной проблемой является загрузка и масштабирование 3 растровых изображений: это занимает 2-3 секунды.
Теперь я работаю над тем, чтобы асинхронно выполнять загрузку в фоновом потоке, но мне интересно, есть ли вообще лучший способ. Один из менее требовательных к CPU, для одного. И я также хотел бы использовать немного большие (менее масштабированные) растровые изображения для больших экранов высокой плотности.