title: Android RecyclerView Checkbox randomly checks
body: <p>I have a <code>RecyclerView</code> which loads <code>CheckBoxes</code> on <code>CardViews</code>. This is the adapter. It is fine when it loads. But when I check an item on <code>RecyclerView</code> intentionally, a <code>CheckBox</code> is checked somewhere random. How can I get rid of this problem? Here is my adapter. Thanks in advance.</p>
  
  <pre><code>public class QuestionsAdapter extends RecyclerView.Adapter&lt;QuestionsAdapter.QuestionsViewHolder&gt; {
      List&lt;QuestionModel&gt; Questions;
      public Context context;
  
      public QuestionsAdapter(Context context, List&lt;QuestionModel&gt; questions) {
          this.Questions = questions;
          this.context = context;
      }
  
      @Override
      public QuestionsViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
          View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.questions_card_view, parent, false);
          return new QuestionsViewHolder(v);
      }
  
      @Override
      public void onBindViewHolder(QuestionsViewHolder holder, final int position) {
          holder.txtQuestionText.setText(Questions.get(position).QuestionText);
      }
  
      @Override
      public int getItemCount() {
          return Questions.size();
      }
  
      @Override
      public void onAttachedToRecyclerView(RecyclerView recyclerView) {
          super.onAttachedToRecyclerView(recyclerView);
      }
  
      public class QuestionsViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
          public RadioButton rbLike;
          public RadioButton rbdisLike;
          public RadioButton rbnoComment;
          public TextView txtQuestionText;
  
          public QuestionsViewHolder(View itemView) {
              super(itemView);
              rbLike = (RadioButton) itemView.findViewById(R.id.like);
              rbdisLike = (RadioButton) itemView.findViewById(R.id.Dislike);
              txtQuestionText = (TextView) itemView.findViewById(R.id.txtCardQuestion);
              rbnoComment = (RadioButton) itemView.findViewById(R.id.NoComment);
              rbnoComment.setOnClickListener(this);
              rbdisLike.setOnClickListener(this);
              rbLike.setOnClickListener(this);
          }
  
          @Override
          public void onClick(View v) {
              switch (v.getId()) {
                  case R.id.like:
                      rbLike.setChecked(true);
                      rbnoComment.setChecked(false);
                      rbdisLike.setChecked(false);
  
                      break;
                  case R.id.Dislike:
                      rbdisLike.setChecked(true);
                      rbnoComment.setChecked(false);
                      rbLike.setChecked(false);
                      break;
                  case R.id.NoComment:
                      rbnoComment.setChecked(true);
                      rbLike.setChecked(false);
                      rbdisLike.setChecked(false);
                      //do something
                      break;
  
                  default:
              }
          }
      }
  }
  </code></pre>