首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >记住LazyColumn卷轴位置- Jetpack Compose

记住LazyColumn卷轴位置- Jetpack Compose
EN

Stack Overflow用户
提问于 2021-08-01 14:20:25
回答 1查看 2.4K关注 0票数 6

当我从一个可组合屏幕切换到另一个屏幕时,我正在尝试保存/记住LazyColumn滚动位置。即使我将rememberLazyListState传递给LazyColumn,在我返回到我的第一个可组合屏幕之后,滚动位置也不会被保存。有人能帮帮我吗?

代码语言:javascript
复制
@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
            )
        }
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-01 15:23:30

如果你真的想保存它,你必须保存它,就像保存在视图模型中的东西一样。remembered的东西只会持续到合成物被销毁为止。如果导航到另一个屏幕,则会销毁以前的可组合内容以及滚动状态

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68611320

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档