【问题标题】:How to set default scroll position for LazyColumn without any feedback or animation in Jetpack Compose如何在 Jetpack Compose 中为 LazyColumn 设置默认滚动位置而没有任何反馈或动画
【发布时间】:2021-11-09 04:34:18
【问题描述】:

我希望我的 LazyColumn 从中间显示列表中的项目,以便我可以向上或向下滚动。我使用了 rememberLazyListState,但它有一些延迟,我不希望在 UI 中发生滚动操作。

【问题讨论】:

    标签: android android-jetpack-compose lazycolumn


    【解决方案1】:
    val scrollState = rememberLazyListState(initialFirstVisibleItemIndex = 50)
    val scrollState = rememberLazyListState(initialFirstVisibleItemScrollOffset = 3700)
    

    如果列表中有100 项目,您可以使用任何参数从默认位置开始,您可以设置initialFirstVisibleItemIndex = 50,因此它从中间开始,您也可以设置offset,但只需使用任何一个其中。

    它对我有用,没有任何延迟

    【讨论】:

    • 它适用于第一个列表,但是当我更新列表时,它不再起作用了。
    • 好的,更新列表是什么意思?每次添加或删除项目时是否要对齐到中间?
    • @Mehranjp73 这就是参数名称也说它是initial 但是为什么您希望列表始终位于中间,您可以做的是在每次更新列表时调用scrollToItem 方法。
    • 它使用 scrollToItem 滚动,但它显示了列表的移动。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-20
    • 2022-01-20
    • 1970-01-01
    • 2021-08-13
    • 1970-01-01
    • 2021-11-12
    • 2021-09-28
    相关资源
    最近更新 更多