Example #1
0
  /** Returns the view for a specific item on the list */
  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
    View row = convertView;

    final ToDoItem currentItem = getItem(position);

    if (row == null) {
      LayoutInflater inflater = ((Activity) mContext).getLayoutInflater();
      row = inflater.inflate(mLayoutResourceId, parent, false);
    }

    row.setTag(currentItem);
    final CheckBox checkBox = (CheckBox) row.findViewById(R.id.checkToDoItem);
    checkBox.setText(currentItem.getText());
    checkBox.setChecked(false);
    checkBox.setEnabled(true);

    checkBox.setOnClickListener(
        new View.OnClickListener() {

          @Override
          public void onClick(View arg0) {
            if (checkBox.isChecked()) {
              checkBox.setEnabled(false);
              if (mContext instanceof ToDoActivity) {
                ToDoActivity activity = (ToDoActivity) mContext;
                activity.checkItem(currentItem);
              }
            }
          }
        });

    return row;
  }