LayoutAnimation¶
Автоматически анимирует представления в их новые позиции, когда происходит следующая компоновка.
Обычный способ использования этого API — вызвать его перед обновлением хука состояния в функциональных компонентах и вызовом setState в компонентах класса.
Обратите внимание, что для того, чтобы это работало на Android, необходимо установить следующие флаги через UIManager:
1 2 3 4 5 6 7 | |
Пример¶
Методы¶
configureNext()¶
1 2 3 4 5 | |
Планирует анимацию на следующий макет.
Параметры:
| Имя | Тип | Описание |
|---|---|---|
config (обязательно) | object | См. описание конфигурации ниже. |
onAnimationDidEnd | function | Вызывается при завершении анимации. |
onAnimationDidFail | function | Вызывается, когда анимация завершилась. |
Параметр config представляет собой объект с ключами, указанными ниже. create возвращает правильный объект для config, и объекты Presets также могут быть переданы в качестве config.
durationв миллисекундахcreate, необязательная конфигурация для анимации в новых представленияхupdate, необязательный конфиг для анимации представлений, которые были обновленыdelete, необязательная конфигурация для анимации представлений при их удалении
Конфиг, передаваемый в create, update или delete, имеет следующие ключи:
type, используемый тип анимацииproperty, свойство layout property для анимации (необязательно, но рекомендуется дляcreateиdelete)springDamping(число, необязательное и только для использования сtype: Type.spring)initialVelocity(число, необязательное)delay(число, необязательно)duration(число, необязательно)
create()¶
1 | |
Помощник, создающий объект (с полями create, update и delete) для передачи в configureNext. Параметр type — это тип анимации, а параметр creationProp — это свойство макета.
Пример:
Свойства¶
Types¶
Перечисление типов анимации для использования в методе create или в конфигурациях create/update/delete для configureNext. (пример использования: LayoutAnimation.Types.easeIn)
| Types |
|---|
spring |
linear |
easeInEaseOut |
easeIn |
easeOut |
keyboard |
Properties¶
Перечисление свойств макета, которые должны быть анимированы для использования в методе create или в конфигурациях create/update/delete для configureNext. (пример использования: LayoutAnimation.Properties.opacity)
| Свойства |
|---|
opacity |
scaleX |
scaleY |
scaleXY |
Предустановки¶
Набор предопределенных конфигураций анимации для передачи в configureNext.
| Предустановки | Значение |
|---|---|
easeInEaseOut | create(300, 'easeInEaseOut', 'opacity') |
linear | create(500, 'linear', 'opacity') |
spring | {duration: 700, create: {type: 'linear', property: 'opacity'}, update: {type: 'spring', springDamping: 0.4}, delete: {type: 'linear', property: 'opacity'} } |
easeInEaseOut¶
Вызывает configureNext() с Presets.easeInEaseOut.
linear¶
Вызывает configureNext() с Presets.linear.
spring¶
Вызывает configureNext() с Presets.spring.
Пример: