嵌套的 RecyclerView 滚动到 NotifyItemChanged 上的第一项
Nested RecyclerView scrolls to the first item on NotifyItemChanged
我有垂直 RecyclerView
用于滚动项目组,水平 RecyclerView
在每个 ViewHolder
中以便滚动这些组内的项目。它们是从数据库中填充的。每当项目内容发生变化(用户点击某物或新数据来自网络)时,它都会写入数据库,然后为组游标调用 notifyDataSetChanged()
。我检查它是否是 onBingViewHolder()
中的同一组,并且仅在是时才更新项目。但是水平 RecyclerView
无论如何都会滚动到第一项。
我怎样才能防止这种行为,为什么会发生?
顺便说一句,我正在将“onBindViewHolder()”中的检查结果写入日志,我可以看到它是同一项。
谢谢。
RecyclerView
创建新的 ViewHolder
以执行动画。 setItemAnimator(null)
解决了我的问题。
我有垂直 RecyclerView
用于滚动项目组,水平 RecyclerView
在每个 ViewHolder
中以便滚动这些组内的项目。它们是从数据库中填充的。每当项目内容发生变化(用户点击某物或新数据来自网络)时,它都会写入数据库,然后为组游标调用 notifyDataSetChanged()
。我检查它是否是 onBingViewHolder()
中的同一组,并且仅在是时才更新项目。但是水平 RecyclerView
无论如何都会滚动到第一项。
我怎样才能防止这种行为,为什么会发生?
顺便说一句,我正在将“onBindViewHolder()”中的检查结果写入日志,我可以看到它是同一项。
谢谢。
RecyclerView
创建新的 ViewHolder
以执行动画。 setItemAnimator(null)
解决了我的问题。