Вы можете создать более интерактивный и привлекательный пользовательский интерфейс в своем приложении, загрузив рисуемый файл для отображения анимированных изображений. Анимированные изображения полезны для создания индикаторов загрузки, индикаторов успеха или ошибки, облегчения разработки игр и различных других функций пользовательского интерфейса.
Совместимость версий
Для этой реализации требуется, чтобы в minSDK вашего проекта был установлен уровень API 21 или выше.
Зависимости
Отображение анимированного изображения
Следующий код отображает анимированный вектор, который автоматически переключается между двумя состояниями:
@Composable fun AnimatedVectorDrawable() { val image = AnimatedImageVector.animatedVectorResource(R.drawable.ic_hourglass_animated) var atEnd by remember { mutableStateOf(false) } Image( painter = rememberAnimatedVectorPainter(image, atEnd), contentDescription = "Timer", modifier = Modifier.clickable { atEnd = !atEnd }, contentScale = ContentScale.Crop ) }
Ключевые моменты о коде
- Загружает векторный ресурс, анимируя атрибуты рисунка с течением времени.
- Экземпляр
Image
, который использует экземплярPainter
для выполнения анимации, созданной на основеAnimatedImageVector
иboolean
состояния с помощью функцииrememberAnimatedVectorPainter()
. - Когда
atEnd
имеетtrue
, экземплярPainter
прекращает анимацию.
Результаты
![Песочные часы анимируют свое содержимое и вращаются](https://developer.android.com/static/develop/ui/compose/images/animations/avd_example_compose.gif?hl=ru)
Коллекции, содержащие это руководство
Это руководство является частью тщательно подобранной коллекции быстрых руководств, охватывающих более широкие цели разработки Android:
![](https://developer.android.com/static/images/quick-guides/collection-illustration.png?hl=ru)