【发布时间】:2019-12-12 19:17:25
【问题描述】:
我对使用 DefaultItemAnimator 的 recyclerView 动画有疑问。我正在为我的最后一项(LoadingViewHolder)调用notifyItemRemoved(position)。但是由于某些未知原因,在项目被删除后,前一个项目(在 LoadingViewHolder 之前)闪烁。
我什么都试过了:
我的回收站在布局中的高度是 match_parent;
我的适配器有
setStableIds,并正确覆盖了getItemId();我也试过用
setHasFixedSize(true);我已经尝试过
notifyItemRangeRemoved1 个计数;我尝试使用
notifyItemChanged,而不是删除;
只有在关闭动画时才会闪烁,但我需要这些动画。
我该如何解决这个问题?
【问题讨论】:
-
您是否有任何机会在之前的位置上触发
notifyItemChanged()? -
@BenP。我也在考虑。我会检查我的代码并给出答案
-
@BenP。没有。我已经调试了所有的通知方法,只有 notifyItemRemoved 方法正在调用
-
@BenP。谢谢您的帮助!我发现了我的问题,很简单,我将错误的索引传递给 notifyItemRemoved
标签: android android-layout android-recyclerview android-animation