try 在Compose v1.3.3中实现水平均匀分布的行中的3个项目,以及显示/隐藏其中一些项目的选项.
如果这是一个简单的if语句,在Compose中包含view,所有工作都很好(没有动画)
Row(
modifier = modifier.fillMaxWidth(),
verticalAlignment = Alignment.CenterVertically
) {
Text(text = "abc", modifier = modifier.weight(1f))
if (false) {
Text(text = "def", modifier = modifier.weight(1f))
}
if(true) {
Text(text = "zxc", modifier = modifier.weight(1f))
}
}
一旦以AnimatedVisibility作为条件包装的项的UI被 destruct .
Row(
modifier = modifier.fillMaxWidth(),
verticalAlignment = Alignment.CenterVertically
) {
Text(text = "abc", modifier = modifier.weight(1f))
AnimatedVisibility(visible = false) {
Text(text = "def", modifier = modifier.weight(1f))
}
AnimatedVisibility(visible = true) {
Text(text = "zxc", modifier = modifier.weight(1f))
}
}
似乎可见性+大小的同时改变可能会毁了用户界面.
有没有一种方法可以在不实现非常定制的动画的情况下实现流畅的动画?