AnimatedVisibility 打破了 Jetpack Compose 中 ConstraintLayout 的约束
AnimatedVisibility breaks constraints in ConstraintLayout in Jetpack Compose
编辑:当我使用对齐将 ConstraintLayout
换成 Box
时也会发生...
目前在 JP Compose 中 AnimatedVisibility
与 ConstraintLayout
的配合似乎不太好。
AnimatedVisibility(
visible = entryListState.firstVisibleItemIndex > 3,
enter = fadeIn() + expandIn(expandFrom = Alignment.Center),
exit = fadeOut() + shrinkOut(shrinkTowards = Alignment.Center)
) {
ExtendedFloatingActionButton(
modifier = Modifier.constrainAs(scrollToTop) {
start.linkTo(parent.start)
bottom.linkTo(parent.bottom)
},
text = { Text(text = "TOP") },
onClick = { scope.launch { entryListState.animateScrollToItem(0) } }
)
}
( TOP ) fab 应该出现在左下角,但我得到的却是
当我删除 AnimatedVisibility
包装器时,一切正常。 :( 我知道我可以解决这个问题,但我很好奇 AnimatedVisibility
可组合项的配置是否有错误?
原来我想 AnimatedVisibility
完全错了。它只是另一个 Composable。我需要提升 FAB 的修饰符重新:定位到 AnimatedVisibilty
的修饰符。
编辑:当我使用对齐将 ConstraintLayout
换成 Box
时也会发生...
目前在 JP Compose 中 AnimatedVisibility
与 ConstraintLayout
的配合似乎不太好。
AnimatedVisibility(
visible = entryListState.firstVisibleItemIndex > 3,
enter = fadeIn() + expandIn(expandFrom = Alignment.Center),
exit = fadeOut() + shrinkOut(shrinkTowards = Alignment.Center)
) {
ExtendedFloatingActionButton(
modifier = Modifier.constrainAs(scrollToTop) {
start.linkTo(parent.start)
bottom.linkTo(parent.bottom)
},
text = { Text(text = "TOP") },
onClick = { scope.launch { entryListState.animateScrollToItem(0) } }
)
}
( TOP ) fab 应该出现在左下角,但我得到的却是
当我删除 AnimatedVisibility
包装器时,一切正常。 :( 我知道我可以解决这个问题,但我很好奇 AnimatedVisibility
可组合项的配置是否有错误?
原来我想 AnimatedVisibility
完全错了。它只是另一个 Composable。我需要提升 FAB 的修饰符重新:定位到 AnimatedVisibilty
的修饰符。