Recyclerview平滑滚动报错

Posted

技术标签:

【中文标题】Recyclerview平滑滚动报错【英文标题】:Recyclerview smooth scrolling error 【发布时间】:2017-03-09 06:09:51 【问题描述】:

我正在尝试使用线性布局管理器平滑滚动到 recyclerview 中的某个位置。

void smoothScrollToPosition(int position)

但是,它并不总是能正常工作。有时,它会将我带到列表的底部,并且在日志中,我收到以下错误消息

Passed over target position while smooth scrolling

我在 SO 中找到了 this thread。但是,答案并没有解释为什么会出现错误,它有解决问题的方法。很长一段时间以来,我一直试图弄清楚这一点。有人能解释一下什么时候会抛出这个错误吗?

【问题讨论】:

【参考方案1】:

尝试在后台线程中调用smoothScrollToPosition。使用recyclerView.post()。我猜适配器在忙时可能会在生成项目视图时丢失数据。

【讨论】:

以上是关于Recyclerview平滑滚动报错的主要内容,如果未能解决你的问题,请参考以下文章

使用 Recycler View 将房间数据库滚动到特定位置

如何让 RecyclerView 平滑滚动?

滚动 Recycler View 时有意丢失数据

RecyclerView 平滑滚动到中心位置。安卓

平滑滚动不适用于 Android RecyclerView 的初始滚动

SwipeRefreshLayout 内的 NestedScrollView 内的 RecyclerView 不能平滑滚动