@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)); }