0

Мне сложно выполнять кадр за кадром Анимация в моем приложении за последние 3 дня. У меня есть около 90 изображений в папке с возможностью рисования для анимации.Android Кадр за кадром Анимация проблема с памятью или медленная анимация

Во-первых Я попытался AnimationDrawbale но вылезает ошибка памяти. Также я применил android:LargeHeap="true", но все же это ошибка памяти.

Во-вторых Я попробовал его с этим классом https://github.com/tigerjj/FasterAnimationsContainer/blob/master/src/com/tigerlee/libs/FasterAnimationsContainer.java, но здесь проблема приходит это анимация очень медленно в нем. Я хочу, чтобы это было очень гладко.

Пожалуйста, помогите. Застрял в нем с очень долгого времени.

ответ

0

К сожалению, анимация кадра за кадром требует большого объема памяти и (в зависимости от размеров кадра и количества) может быстро вызвать OutOfMemoryException с, поскольку они загружаются со всеми кадрами одновременно. Извлечение каждого кадра приводит к замедлению анимации, так как система должна читать каждый кадр перед его отображением. Таким образом, в зависимости от ситуации, есть следующие опции вы можете продолжить:

  • Удалить анимацию: Я сам выбрал этот вариант несколько раз после того, как тщательно, учитывая необходимость (загрузка, в моем случае) анимация. Кадровая анимация имела огромное ограничение производительности, которое просто не стоило того.
  • Активируйте свою анимацию: Чтобы уменьшить использование памяти анимации, вы должны рассмотреть возможность уменьшения разрешения ваших кадров или общего количества кадров (или обоих).
  • Использовать другие анимации: Есть другие варианты анимации, включая Animator с уровня API 11 и AnimatedVectorDrawable, начиная с уровня API 11 (используя библиотеки поддержки). В зависимости от вида анимации вы можете перейти на один из этих двух.
Смежные вопросы