title: CheckBox in RecyclerView keeps on checking different items
body: <p>Here's the XML for my items inside the RecyclerView</p>
  
  <pre><code>&lt;android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:card_view="http://schemas.android.com/apk/res-auto"
      android:id="@+id/cvItems"
      android:layout_height="wrap_content"
      android:layout_width="fill_parent"
      android:layout_margin="2dp"
      card_view:cardElevation="0dp"
      card_view:contentPadding="0dp"
      card_view:cardBackgroundColor="#FFFFFF"
      &gt;
  
      &lt;LinearLayout
          android:orientation="horizontal"
          android:layout_height="fill_parent"
          android:layout_width="fill_parent"&gt;
          &lt;TextView
              android:layout_width="0dip"
              android:layout_height="match_parent"
              android:layout_weight="0.8"
              android:id="@+id/tvContent"
              android:textSize="15dp"
              android:paddingLeft="5dp"
              android:paddingRight="5dp" /&gt;
          &lt;CheckBox
              android:id="@+id/cbSelect"
              android:layout_width="0dip"
              android:layout_weight="0.2"
              android:layout_height="match_parent"
              android:button="@drawable/cb_checked"
              android:gravity="center_horizontal"
              android:textAlignment="center"
              android:layout_gravity="center_horizontal" /&gt;
      &lt;/LinearLayout&gt;
  &lt;/android.support.v7.widget.CardView&gt;
  </code></pre>
  
  <p>And here's the RecyclerView adapter that inflate the layout above for each of its items:</p>
  
  <pre><code>public class AdapterTrashIncome extends RecyclerView.Adapter&lt;AdapterTrashIncome.ViewHolder&gt; {
  
      private ArrayList&lt;ObjectIncome&gt; myItems = new ArrayList&lt;&gt;();
  
      public AdapterTrashIncome(ArrayList&lt;ObjectIncome&gt; getItems, Context context){
          try {
              mContext = context;
              myItems = getItems;
          }catch (Exception e){
              Log.e(FILE_NAME, "51: " + e.toString());
              e.printStackTrace();
          }
      }
  
      public class ViewHolder extends RecyclerView.ViewHolder {
          public TextView tvContent;
          public CheckBox cbSelect;
  
          public ViewHolder(View v) {
              super(v);
              tvContent = (TextView) v.findViewById(R.id.tvContent);
              cbSelect = (CheckBox) v.findViewById(R.id.cbSelect);
          }
      }
  
      @Override
      public void onBindViewHolder(ViewHolder holder, final int position) {
          final ObjectIncome objIncome = myItems.get(position);
          String content = "&lt;b&gt;lalalla&lt;/b&gt;";
          holder.tvContent.setText(Html.fromHtml(content));
      }
  }
  </code></pre>
  
  <p>The problem is, let's say I have 10 items inside the RecyclerView. When I checked the checkbox on item 1,2,3 then I scroll down the RecyclerView, suddenly some of the other items eg items 8,9 is checked. And when I scroll up again, item 1 and 3 is checked but not item 2. Any idea why this happen?</p>