因此,我正在创建一个习惯跟踪器,每次您选中 viewHolder 上的复选框时都会添加一个值,我遇到的问题是,当我在列表中有 6 个或更多习惯时,复选框无法正常工作(他们开始随机检查订购)再给我上面的错误。
我在我的回收器适配器上使用它:
public void onBindViewHolder(@NonNull final MyViewHolder holder, final int position){
holder.nombre.setText(mHabitosList.get(position).getNombre());
FirebaseDatabase mDatabase = FirebaseDatabase.getInstance();
mDatabaseReference = mDatabase.getReference("Habitos");
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if(user != null) {
userId = user.getUid();
habitosReference = mDatabaseReference.child(userId);
habitosReference.child(mHabitosList.get(holder.getAdapterPosition()).getHabitosId()).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Habitos habitos = dataSnapshot.getValue(Habitos.class);
if(habitos != null) {
updateHabitosTotal[position] = habitos.getTotal();
checkBox1 = habitos.isCheckbox1();
checkBox2 = habitos.isCheckbox2();
checkBox3 = habitos.isCheckbox3();
checkBox4 = habitos.isCheckbox4();
checkBox5 = habitos.isCheckbox5();
checkListeners(holder, position);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
我为代码转储道歉......任何形式的帮助将不胜感激!(:
繁星点点滴滴
慕尼黑的夜晚无繁华
相关分类