如何通过单击按钮选择RecyclerView中的所有复选框?

时间:2017-08-07 09:06:01

标签: android android-recyclerview

活动中按钮的onclick中的此代码:

if(v.getId()==recomendationSelectAllFriends.getId()){
    recomendationAdapter.selectAll(resultEntities.size());
}

适配器中的此方法:

public void selectAll(int size){
   // what should be written here?
}

2 个答案:

答案 0 :(得分:0)

public void selectAll(int size){
   // what should be written here?

   for(DataEntity e: data) { //your list of data in the array
      e.isChecked(true)
   }
   notifyDataSetChanged();
}

其中e.isChecked字段与卡片的复选框有界。

答案 1 :(得分:0)

在模型类中添加一个布尔变量并命名它,为该变量编写getter和setter。

现在, 在你的onBindViewHolder中写

if(resultEntities.get(position).isChecked(){
    holder.yourCheckBoxName.setChecked(true);
    }else{
holder.yourCheckBoxName.setChecked(false);
}

在你的功能中

public void selectAll(){

   for(ResultEntity e: resultEntities) { 
      e.setChecked(true)
   }
   notifyDataSetChanged();
}