RecyclerView削除項目、削除動画()/List削除座標が間違っている問題

1039 ワード

 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();
    }