在notifyItemRangeChanged

时间:2017-12-05 20:30:22

标签: android android-recyclerview


我在notifyItemRemovednotifyItemRangeChanged时遇到了一些问题 我有一张卡片填充的RecyclerView。每张卡都有自己的按钮。我已在RecyclerView's方法onBindViewHolderOnClickListener按钮上实施了该功能。按下时,我希望卡片自行删除。我有以下代码:

 holder.deleteButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {    
                mDataset.remove(holder.getAdapterPosition());
                notifyItemRemoved(holder.getAdapterPosition());
                notifyItemRangeChanged(holder.getAdapterPosition(), mDataset.size());                       
        }
    });

删除时有一种奇怪的行为。我要删除的卡片会在短时间内消失,然后快速重新出现,如果我再次按下删除按钮,则会出现ArrayIndexOutOfBoundsException错误。
有人经历过这样的事吗?非常感谢任何帮助!

1 个答案:

答案 0 :(得分:2)

删除此

notifyItemRangeChanged(holder.getAdapterPosition(), mDataset.size());