尚不支持在Compose中对LazyColumn和LazyRow中的项目进行动画处理:https://developer.android.com/jetpack/compose/lists#item-animations
关注问题跟踪器:https://issuetracker.google.com/issues/150812265
然而,我在一个潜在的变通方法上创建了一个小POC,直到它被正式支持(请查看答案),它还远未准备好投入生产,而且肯定包含错误,但只是想分享我的小游乐场项目
发布于 2021-10-02 06:55:44
编辑:问题跟踪器现在有一个使用修饰符的解决方案更新
我刚刚对LazyColumn和LazyRow中的动画项目做了一个小的变通,直到添加了适当的支持:
https://github.com/RoudyK/AnimatedLazyColumn
DEF尚未做好生产准备,很高兴得到任何反馈
编辑:
示例用法:
data class MainItem(
val id: String,
val text: String
)
val items = List(10) { MainItem(UUID.randomUUID().toString(), UUID.randomUUID().toString()) }
val state = rememberLazyListState()
AnimatedLazyColumn(
state = state,
items = items.map {
AnimatedLazyListItem(key = it.id, value = it.text) {
TextItem(viewModel, it)
}
}
)
AnimatedLazyRow(
state = state,
items = items.map {
AnimatedLazyListItem(key = it.id, value = it.text) {
TextItem(viewModel, it)
}
}
)https://stackoverflow.com/questions/69414682
复制相似问题