您可以通过几种不同的方式在 Compose 中为矢量添加动画效果。您可以使用下列任何一种:
AnimatedVectorDrawable
文件格式- 将
ImageVector
与 Compose 动画 API 搭配使用,如这篇 Medium 文章中所述 - 第三方解决方案,例如 Lottie
带动画的矢量可绘制对象(实验性)
![为内容添加动画效果并进行旋转的沙漏](https://developer.android.google.cn/static/develop/ui/compose/images/animations/avd_example_compose.gif?authuser=5&hl=da)
如需使用 AnimatedVectorDrawable
资源,请使用 animatedVectorResource
加载可绘制对象文件,并传入 boolean
以在可绘制对象的起始状态和结束状态之间切换,从而执行动画。
@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 ) }
如需详细了解可绘制文件的格式,请参阅为可绘制图形添加动画。
为您推荐
- 注意:当 JavaScript 处于关闭状态时,系统会显示链接文字
- 加载图片 {:#loading-images}