显然,我有一个包含项目的RecyclerView
。它使用DefaultAnimator
来制作所有动画。
删除项目时,删除是动画的,但不是应该的。问题是看起来列表的大小先减少一个,然后删除被点击的项目,然后将下面的所有项目向上移动一个。看看this short video,看看我在说什么
用于删除项目的代码如下:
MainActivity.events.events.remove(listItems.keyAt(0));
notifyItemRemoved(listItems.keyAt(0));
其中MainActivity.events.events
包含商品的数据,listItems.keyAt(0)
包含当前所选商品。
我尝试过的(这些都没有效果):
notifyDataSetChanged()
)。 onClickListener
。 getAdapterPosition()
或固定值(即0
)notifyItemRangeRemoved()
之后使用notifItemRemoved()
。 提示:我之前已经开始使用动画了,但截至今天它已不再适用了。
修改
如果我从上面给出的代码片段中删除了实际删除命令(即MainActivity.events.events.remove(listItems.keyAt(0));
),则动画为played correctly,但该元素实际上并未被删除,因此这不能解决这个问题。