@Composable
fun AnimatedVisibilityCookbook5() {
Box(modifier = Modifier.fillMaxSize()) {
// [START android_compose_animation_cookbook_visibility]
var visible by remember {
mutableStateOf(true)
}
// Animated visibility will eventually remove the item from the composition once the animation has finished.
AnimatedVisibility(visible,
enter = expandIn( animationSpec= tween(durationMillis = 3000),
// Expands from the top-left corner of the item
expandFrom = Alignment.TopStart,
// Optional, controls the initial offset from where expansion starts
initialSize = { fullSize -> IntSize(fullSize.width / 100, fullSize.height / 100) }
),
exit = shrinkOut(animationSpec= tween(durationMillis = 3000))
) {
// your composable here
// [START_EXCLUDE]
Box(
modifier = Modifier
.size(200.dp)
.clip(RoundedCornerShape(8.dp))
.background(Color.Green)
) {
}
// [END_EXCLUDE]
}
// [END android_compose_animation_cookbook_visibility]
Button(modifier = Modifier.align(Alignment.BottomCenter), onClick = {
visible = !visible
}) {
Text("Show/Hide")
}
}
}
Composable动画系列06:扩展的动画
最新推荐文章于 2024-10-01 16:35:38 发布