Страницы

Поиск по вопросам

вторник, 19 марта 2019 г.

Принципы подбора значений для плавной анимации, описанной в xml для android

Дано:
8 анимаций типа translate пошагово перемещающих цель по диагонали и обратно. См. gif №1.









Задача:
Сделать анимацию плавной. Вот как в "play пресса" приложении от гугла. См. gif №2.
Возможное решение:
Поиграться с длительностью анимации. Возможно, выкрутив её, на максимум будет выглядеть плавно.
Вопрос:
Какие параметры анимации надо учитывать для создания плавного движения?
Что у меня получилось, gif №1:

Чего бы хотелось, gif №2:


Ответ

Использовав советы @metalurgus и свои эксперименты, пришёл к следующему выводу:
Длительность анимации прямо пропорциональна плавности. Использование Interpolator также способствует её увеличению. Совмещение translate и scale анимаций также помогает. Также полезно запускать следующую анимацию до конца предыдущей.
Итого анимацию я сделал так:




android:fromXDelta="20" android:fromYDelta="10" android:interpolator="@android:interpolator/accelerate_decelerate" android:startOffset="3000" android:toXDelta="40" android:toYDelta="40"/>





И вот что получилось:

Комментариев нет:

Отправить комментарий