@Override
  public void bindView(View view, Context context, final Cursor cursor) {
    final ViewHolder viewHolder = (ViewHolder) view.getTag();

    final User friend = DatabaseManager.getUserFromCursor(cursor);

    viewHolder.nameTextView.setText(friend.getFullName());
    //        viewHolder.statusMessageTextView.setText(friend.getStatus());
    viewHolder.nameTextView.setText(friend.getFullName());

    if (friend.isOnline()) {
      viewHolder.onlineImageView.setVisibility(View.VISIBLE);
    } else {
      viewHolder.onlineImageView.setVisibility(View.GONE);
    }

    final int position = cursor.getPosition();

    viewHolder.selectFriendCheckBox.setOnClickListener(
        new View.OnClickListener() {

          @Override
          public void onClick(View view) {
            CheckBox checkBox = (CheckBox) view;
            sparseArrayCheckBoxes.put(position, checkBox.isChecked());
            friend.setSelected(checkBox.isChecked());
            notifyCounterChanged(checkBox.isChecked());
            if (checkBox.isChecked()) {
              selectedFriends.add(friend);
            } else if (selectedFriends.contains(friend)) {
              selectedFriends.remove(friend);
            }
            viewHolder.contentRelativeLayout.setBackgroundColor(
                getBackgroundColorItem(viewHolder.selectFriendCheckBox.isChecked()));
          }
        });

    boolean checked = sparseArrayCheckBoxes.get(position);

    viewHolder.selectFriendCheckBox.setChecked(checked);

    String avatarUrl = getAvatarUrlForFriend(friend);
    displayAvatarImage(avatarUrl, viewHolder.avatarImageView);

    viewHolder.contentRelativeLayout.setBackgroundColor(getBackgroundColorItem(checked));
  }