当我从一个可组合屏幕切换到另一个屏幕时,我正在尝试保存/记住LazyColumn滚动位置。即使我将rememberLazyListState传递给LazyColumn,在我返回到我的第一个可组合屏幕之后,滚动位置也不会被保存。有人能帮帮我吗?
@ExperimentalMaterialApi
@Composable
fun DisplayTasks(
tasks: List<Task>,
navigateToTaskScreen: (Int) -> Unit
) {
val listState = rememberLazyListState()
LazyColumn(state = listState) {
itemsIndexed(
items = tasks,
key = { _, task ->
task.id
}
) { _, task ->
LazyColumnItem(
toDoTask = task,
navigateToTaskScreen = navigateToTaskScreen
)
}
}
}发布于 2021-08-01 15:23:30
如果你真的想保存它,你必须保存它,就像保存在视图模型中的东西一样。remembered的东西只会持续到合成物被销毁为止。如果导航到另一个屏幕,则会销毁以前的可组合内容以及滚动状态
https://stackoverflow.com/questions/68611320
复制相似问题