问题描述
如何获取回收站视图的每一行中的特定复选框(是或否)的位置我能够得到行明智的复选框的位置,但滚动两个(是和否)复选框都被检查。
How to get the position of particular checkbox(yes or no) in each row of a recycler view I am able to get the position of row wise checkbox but on scrolling both (yes and no) checkbox are getting checked.
((CheckBoxViewHolder)holder).chkNo.setOnClickListener(new
View.OnClickListener(){
((CheckBoxViewHolder) holder).chkNo.setOnClickListener(newView.OnClickListener() {
@Override
public void onClick(View v) {
((CheckBoxViewHolder) holder).chkYes.setChecked(false);
CheckBox cb = (CheckBox) v;
RatingQues contact = (RatingQues) cb.getTag();
contact.setSelected(cb.isChecked());
ratingQuestions.get(position).setSelected(cb.isChecked());
((CheckBoxViewHolder) holder).chkYes.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
((CheckBoxViewHolder) holder).chkNo.setChecked(false);
CheckBox cb = (CheckBox) v;
RatingQues ratingQues = (RatingQues) cb.getTag();
ratingQues.setSelected(cb.isChecked());
ratingQuestions.get(position).setSelected(cb.isChecked());
推荐答案
维护当前状态的模型,
Maintain a model for the current status, for example -
class MyModel{
String status;
boolean isChecked;
}
现在可以在onBind中的每个复选框标记位置。所以每当你getChangeListner只是改变模型。另外根据模型标记值绑定复选框。
Now tag position with every checkbox, in onBind. So whenever you getChangeListner just change in model. Also bind checkbox as per model flag value.
希望它会帮助,让我知道如果你需要进一步的帮助:)
Hope it will help, let me know if you need further help :)
这篇关于Recyclerview与两个复选框(是或否)在Android中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!