public boolean[] getStatus() {
   boolean[] bArray = new boolean[mItems.size()];
   int increment = 0;
   for (CheckBoxifiedText cboxtxt : mItems) {
     bArray[increment] = cboxtxt.getChecked();
   }
   return bArray;
 }
    public View getView(int position, View convertView, ViewGroup parent) {
      CheckBoxifiedTextView btv;
      CheckBoxifiedText ctv;

      if (convertView == null) {
        btv = new CheckBoxifiedTextView(mContext, mItems.get(position), position);
        CheckBoxifiedText src = mItems.get(position);
      } else {
        CheckBoxifiedText src = mItems.get(position);
        btv = (CheckBoxifiedTextView) convertView;
        btv.setText(src.getText());
        btv.setCheckBoxState(src.getChecked());
      }
      return btv;
    }
    public CheckBoxifiedTextView(
        final Context context, CheckBoxifiedText aCheckBoxifiedText, final int position) {
      super(context);
      this.setOrientation(HORIZONTAL);
      mCheckBoxText = aCheckBoxifiedText;
      mCheckBox = new CheckBox(context);
      mCheckBox.setPadding(0, 0, 20, 0); // 5px to the right
      mCheckBox.setChecked(aCheckBoxifiedText.getChecked());
      mCheckBox.setOnCheckedChangeListener(
          new OnCheckedChangeListener() {

            public void onCheckedChanged(CompoundButton arg0, boolean arg1) {
              try {
                bArray[position] = mCheckBox.isChecked();
                // Toast.makeText(context, " position = " + Boolean.toString(bArray[0]) +
                // Boolean.toString(bArray[1]), Toast.LENGTH_LONG).show();
              } catch (Exception e) {
                // bArray[position] = mCheckBox.isChecked();
                // Toast.makeText(context, " position = " + Boolean.toString(bArray[0]) +
                // Boolean.toString(bArray[1]) + Boolean.toString(bArray[2]),
                // Toast.LENGTH_LONG).show();
                // Toast.makeText(context, " position = "+Integer.toString(position)+" rows =
                // "+Integer.toString(rows),Toast.LENGTH_SHORT).show();
              }
            }
          });

      /* bArray[position] = mCheckBox.isChecked();
      Toast.makeText(context, " position = " + Boolean.toString(bArray[0]) + Boolean.toString(bArray[1]) + Boolean.toString(bArray[2]), Toast.LENGTH_LONG).show();
      }
      });*/
      addView(
          mCheckBox,
          new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
      mText = new TextView(context);
      mText.setText(aCheckBoxifiedText.getText());
      addView(
          mText,
          new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
    }
 public void setCheckBoxState(boolean bool) {
   mCheckBox.setChecked(mCheckBoxText.getChecked());
   mCheckBoxText.setChecked(true);
 }
 public void selectAll() {
   for (CheckBoxifiedText cboxtxt : mItems) {
     cboxtxt.setChecked(true);
   }
   this.notifyDataSetInvalidated();
 }