Выберите API анимации

Приведенная ниже схема поможет вам решить, какой API использовать для реализации анимации.

Блок-схема, описывающая дерево решений для выбора подходящей анимации API

Рисунок 1. Дерево решений, описывающее, как выбрать подходящий API анимации

Следуйте приведенным ниже вопросам дерева принятия решений, чтобы выбрать API анимации, наиболее подходящий для вашего варианта использования:

  • Моя анимация больше похожа на искусство, состоящее из множества визуальных элементов? Например, SVG или изображения
    • Да: есть ли у него простые SVG? т.е. иконка с микроанимацией
    • Нет: Неужели это должно повторяться вечно?
      • Да: rememberInfiniteTransition
      • Нет: Это анимация макета?
        • Да: Переключение между несколькими составными элементами с разным содержимым?
          • Да: С навигацией-композицией?
          • Нет: Анимированное появление/исчезновение?
            • Да: AnimatedVisibility или animateFloatAsState с Modifier.alpha()
            • Нет: Анимация размера?
              • Да: Modifier.animateContentSize
              • Нет: Другое свойство макета? Например, смещение, отступ и т. д.
                • Да: См. «Являются ли свойства полностью независимыми друг от друга?»
                • Нет: Анимация элементов списка?
                  • Да: animateItemPlacement() (скоро будут реализованы изменение порядка и удаление)
        • Нет: Вам нужно анимировать несколько свойств?
          • Да: Являются ли объекты недвижимости полностью независимыми друг от друга?
            • Да: animate*AsState , для текста используйте TextMotion.Animated
            • Нет: Начать в одно и то же время?
              • Да: Да: updateTransition с AnimatedVisibility , animateFloat , animateInt и т. д.
              • Нет: Animatable с animateTo , вызываемым с разным временем (используя функции приостановки)
          • Нет: Имеет ли анимация набор предопределенных целевых значений?
            • Да: animate*AsState , для текста используйте TextMotion.Animated
            • Нет: Анимация, управляемая жестами? Ваша анимация — единственный источник правды?

Загрузите PDF-версию схемы .