RecyclerView删除条目,带删除动画()/ List删除坐标错了问题

 btn_delete.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                removeItem();
            }
        });

//因为remove某一条后,列表的position并没有刷新,
//所以remove后,要根据remove的那一条的position来notifyItemRangeChanged
      for (int i = 0, len = datas.size(); i < len; i++) {
            if (datas.get(i).isChecked()) {
                //----------------------
                notifyItemRemoved(i);
                datas.remove(i);
                len--;
                i--;
                notifyItemRangeChanged(0, getItemCount());  //第一个是位置,第二个是数量
                //---------------------
            }
        }
  /**
     * 删除选中的(不带删除动画)
     */
    private void removeItem() {
        for (int i = 0, len = datas.size(); i < len; i++) {
            if (datas.get(i).isChecked()) {
                datas.remove(i);
                len--;
                i--;
            }
        }
        notifyDataSetChanged();
    }

你可能感兴趣的:(RecyclerView删除条目,带删除动画()/ List删除坐标错了问题)