Recyclerview与两个复选框(是或否)在Android中 [英] Recyclerview with two checkbox (yes or no) in Android

查看:229
本文介绍了Recyclerview与两个复选框(是或否)在Android中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何获取回收站视图的每一行中的特定复选框(是或否)的位置我能够得到行明智的复选框的位置,但滚动两个(是和否)复选框都被检查。

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(new View.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中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆