Перейти к основному содержимому

Анимации

В Avalonia UI существует два типа анимаций:

  • Покадровая анимация (Keyframe Animation) - может изменять одно или несколько значений свойств с использованием временной шкалы. Ключевые кадры определяются вдоль временной шкалы в опорных точках. Изменяемые свойства корректируются между ключевыми кадрами с использованием функции плавности (по умолчанию это прямолинейная интерполяция). Покадровые анимации являются очень универсальным типом анимации.
  • Переходы (Transitions) - могут изменять одно свойство.

Покадровая анимация

Простейшая покадровая анимация изменяет одно значение свойства в течение указанной продолжительности, определяя два ключевых кадра с опорными точками в начале (0% продолжительности) и в конце (100% продолжительности).

Затем значение свойства изменяется со временем между ключевыми кадрами, используя профиль, определенный функцией плавности. Функция плавности по умолчанию также является самой простой - прямолинейная интерполяция между двумя ключевыми кадрами.

к сведению

Полный набор функций плавности можно найти в справочнике здесь.

Запуск анимаций

Анимации Avalonia UI, определенные в XAML, используют селекторы для их поведения запуска. Селекторы могут всегда применяться к элементу управления или могут применяться условно (например, если к элементу управления применен класс стиля).

Если селектор не является условным, то анимация будет запущена, когда соответствующий Control появляется в визуальном дереве. В противном случае анимации будут запускаться всякий раз, когда их селектор активируется. Когда селектор больше не соответствует, текущая выполняемая анимация будет отменена.

Другие настройки анимации

  • Задержка (Delay)
  • Повторение (Repeat)
  • Направление воспроизведения (Playback Direction)
  • Режим заполнения значений (Value Fill Mode)
  • Функция плавности (Easing Function)