AnimatedContent可组合项在内容根据目标状态发生变化时,添加内容动画的效果。
@ExperimentalAnimationApi
@Composable
fun compose_22() {
var count by remember {
mutableStateOf(0)
}
Box(modifier = Modifier.width(100.dp)
.height(100.dp).
clickable { count++ }
.background(Color.Blue),
contentAlignment = Alignment.Center) {
AnimatedContent(targetState = count) { targetCount ->
// 这里必须使用targetCount,而不是count
// API会将此值用作键来表示当前显示的内容
Text(text = "Count: $targetCount", color = Color.White)
}
}
}
默认情况下,初始内容淡出,目标内容淡入,但是我们可以通过transitionSpec参数来指定ContentTransform对象来实现自定义动画,使用with函数组合EnterTransitio