My app is an attendance for students; I create a list of the students and when I click on the student's name the picture must be checked. The problem is when I scroll down I see other students get checked too. `public class attendanceAdapter extends RecyclerView.Adapter{
private List<MyStudentsModel> studentsModels;
private AttendanceModel attModels;
private List<String> attList;
private Context context;
private DatabaseReference present, mr7laCount;
private String date = "1/6/2018";
public attendanceAdapter(Context context, List<MyStudentsModel> studentsModels){
    this.context = context;
    this.studentsModels = studentsModels;
}
@NonNull
@Override
public StudentAttHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.my_single_student_att_view,parent,false);
    StudentAttHolder studentAttHolder = new StudentAttHolder(view);
    attModels = new AttendanceModel();
    attList = new ArrayList<>();
    present = FirebaseDatabase.getInstance().getReference("Attendance");
    mr7laCount = FirebaseDatabase.getInstance().getReference("AllCount");
    return studentAttHolder;
}
@SuppressLint("SetTextI18n")
@Override
public void onBindViewHolder(@NonNull final StudentAttHolder holder, int position) {
    final String split[] = date.split("/");
    final MyStudentsModel student = studentsModels.get(position);
    holder.stu_name.setText(student.getFirstName() +" "+ student.getSecondName());
    if (student.getServedImage().equals("0") | student.getServedImage() == null){
        Glide.with(context).load(R.drawable.daria).into(holder.stu_img);
    }else {
        Glide.with(context)
                .load(Uri.parse(student.getServedImage()))
                .into(holder.stu_img);
    }
    final String id = student.getSid();
    holder.stu_img.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            holder.stu_tgb.toggle();
            if(holder.stu_tgb.isChecked()){
                attList.add(id);
                String date = split[2] + "x" + split[1] + "x" + split[0];
                String dateM = split[2] + "/" + split[1] + "/" + split[0];
                int total = getItemCount();
                int absence = total - attList.size();
                attModels.setDay(dateM);
                attModels.setPresence(String.valueOf(attList.size()));
                attModels.setAbsence(String.valueOf(absence));
                attModels.setTotal(String.valueOf(total));
                present
                        .child("Served")
                        .child(student.getAlmar7la())
                        .child(student.getAlfasl())
                        .child(split[0])
                        .child(split[1])
                        .child(split[2])
                        .setValue(attList);
                mr7laCount
                        .child("Served")
                        .child(student.getAlmar7la())
                        .child(String.valueOf(date))
                        .child(student.getAlfasl())
                        .setValue(attModels);
            } else {
                attList.remove(id);
                String date = split[2] + "x" + split[1] + "x" + split[0];
                String dateM = split[2] + "/" + split[1] + "/" + split[0];
                int total = getItemCount();
                int absence = total - attList.size();
                attModels.setDay(dateM);
                attModels.setPresence(String.valueOf(attList.size()));
                attModels.setAbsence(String.valueOf(absence));
                attModels.setTotal(String.valueOf(total));
                present
                        .child("Served")
                        .child(student.getAlmar7la())
                        .child(student.getAlfasl())
                        .child(split[0])
                        .child(split[1])
                        .child(split[2])
                        .setValue(attList);
                if(attList.size() == 0){
                    mr7laCount
                            .child("Served")
                            .child(student.getAlmar7la())
                            .child(String.valueOf(date))
                            .child(student.getAlfasl())
                            .removeValue();
                }else {
                    mr7laCount
                            .child("Served")
                            .child(student.getAlmar7la())
                            .child(String.valueOf(date))
                            .child(student.getAlfasl())
                            .setValue(attModels);
                }
            }
        }
    });
}
@Override
public int getItemCount() {
    return studentsModels.size();
}
final public class StudentAttHolder extends RecyclerView.ViewHolder{
    ImageView stu_img;
    TextView stu_name;
    ToggleButton stu_tgb;
    public StudentAttHolder(View itemView) {
        super(itemView);
        stu_name = itemView.findViewById(R.id.student_name_att);
        stu_img = itemView.findViewById(R.id.student_image_att);
        stu_tgb = itemView.findViewById(R.id.student_toggleButton);
    }
}
} `
when I checked Faustino Hausner


