网上看到这么一条技巧:因为删除某一项时调用notifyItemRemoved后,显示的item是不会调用onBind方法的,所以position并没有被刷新。这时候得到的position值就是错误的。
最方便的就是调用notifyItemRangeChanged。如下
list.remove(position);
((RecyclerView) view).getAdapter().notifyItemRemoved(position);
((RecyclerView) view).getAdapter().notifyItemRangeChanged(0,list.size());