Анимации
В Avalonia UI существует два типа анимаций:
- Покадровая анимация (Keyframe Animation) - может изменять одно или несколько значений свойств с использованием временной шкалы. Ключевые кадры определяются вдоль временной шкалы в опорных точках. Изменяемые свойства корректируются между ключевыми кадрами с использованием функции плавности (по умолчанию это прямолинейная интерполяция). Покадровые анимации являются очень универсальным типом анимации.
- Переходы (Transitions) - могут изменять одно свойство.
Покадровая анимация
Простейшая покадровая анимация изменяет одно значение свойства в течение указанной продолжительности, определяя два ключевых кадра с опорными точками в начале (0% продолжительности) и в конце (100% продолжительности).
Затем значение свойства изменяется со временем между ключевыми кадрами, используя профиль, определенный функцией плавности. Функция плавности по умолчанию также является самой простой - прямолинейная интерполяция между двумя ключевыми кадрами.
Полный набор функций плавности можно найти в справочнике здесь.
Запуск анимаций
Анимации Avalonia UI, определенные в XAML, используют селекторы для их поведения запуска. Селекторы могут всегда применяться к элементу управления или могут применяться условно (например, если к элементу управления применен класс стиля).
Если селектор не является условным, то анимация будет запущена, когда соответст вующий Control
появляется в визуальном дереве. В противном случае анимации будут запускаться всякий раз, когда их селектор активируется. Когда селектор больше не соответствует, текущая выполняемая анимация будет отменена.
Другие настройки анимации
- Задержка (Delay)
- Повторение (Repeat)
- Направление воспроизведения (Playback Direction)
- Режим заполнения значений (Value Fill Mode)
- Функция плавности (Easing Function)