我有RecyclerView
及其RecyclerView.Adapter
和查看人。我想作为内部onClick()
上删除按钮在ViewHolderRecyclerView notifyItemRemoved(位置)不能正常工作
int position = getAdapterPosition();
if(position > -1)
{
Place place = placeList.remove(position);
notifyItemRemoved(position);
notifyItemRangeChanged(position, getItemCount());
}
尽管去掉视图和做动画(名单也被影响),旧观点(或下一个跟随来删除列表中的项目,代码)仍然存在或再次绘制。 例如,如果列表以size = 5开始,那么我尝试删除索引4,他删除4,然后仍然绘制5个视图。
编辑
如果我删除notifyItemRangeChanged()
那么它是错误只如果我很快做删除
2-点击按钮下面
1-点击那个带我到新查看
3-返回到我可以删除的列表
4-开始删除,并发生错误。即使List
大小= 0(getItemCount被调用0),1项仍然保留。
如果我只调用NotifyDataSetChanged(),那么它将删除项目,但视图只是停留在那里!
赞赏任何帮助或建议。
谢谢。
编辑完整的类LINK
我也面临这个问题,并尝试一切可用的在线,但没有任何效果。但在我的情况下,它有时可以正常工作,虽然有时当我触摸我的列表时,它会删除空白空间 –
@Vivek Mishra正常行为,我点击删除,它没有notifyItemRangeChanged()。但是,如果我去新的观点,回去,>>错误发生 –