2016-08-09 3 views
0

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

Анимация сама по себе выглядит гладкой (то есть она занимает менее 200 мс на фрейм, так что нет видимого отставания), но занимает совсем немного процессора. И реальной проблемой является загрузка и масштабирование 3 растровых изображений: это занимает 2-3 секунды.

Теперь я работаю над тем, чтобы асинхронно выполнять загрузку в фоновом потоке, но мне интересно, есть ли вообще лучший способ. Один из менее требовательных к CPU, для одного. И я также хотел бы использовать немного большие (менее масштабированные) растровые изображения для больших экранов высокой плотности.

ответ

-1

Из вашего описания кажется, что проблема связана с размером изображений, а не с самой анимацией.

Для анимационных активов это большое - я бы предложил кодировать видео в формате, который поддерживает постепенную загрузку и потоковое воспроизведение из него.

Смежные вопросы