嵌套的 RecyclerView 滚动到 NotifyItemChanged 上的第一项

Nested RecyclerView scrolls to the first item on NotifyItemChanged

我有垂直 RecyclerView 用于滚动项目组,水平 RecyclerView 在每个 ViewHolder 中以便滚动这些组内的项目。它们是从数据库中填充的。每当项目内容发生变化(用户点击某物或新数据来自网络)时,它都会写入数据库,然后为组游标调用 notifyDataSetChanged()。我检查它是否是 onBingViewHolder() 中的同一组,并且仅在是时才更新项目。但是水平 RecyclerView 无论如何都会滚动到第一项。

我怎样才能防止这种行为,为什么会发生?

顺便说一句,我正在将“onBindViewHolder()”中的检查结果写入日志,我可以看到它是同一项。

谢谢。

RecyclerView 创建新的 ViewHolder 以执行动画。 setItemAnimator(null) 解决了我的问题。