java Android getview使用if条件将行移到顶部
Android getview和列表视图我需要根据条件将行移动到顶部位置。现在列表视图显示用户和组。我需要在列表视图中移动处于顶部位置的组
if (Dialog.Type.GROUP.equals(dialog.getType()))
我需要把小组名单移到最上面。这是我的全部代码。或者,如果字符串包含特定值,是否有任何方法可以将行移到顶部
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder viewHolder;
Dialog dialog = getItem(position);
if (convertView == null) {
convertView = layoutInflater.inflate(R.layout.item_dialog, null);
viewHolder = new ViewHolder();
viewHolder.avatarImageView = (RoundedImageView) convertView.findViewById(R.id.avatar_imageview);
viewHolder.nameTextView = (TextView) convertView.findViewById(R.id.name_textview);
viewHolder.lastMessageTextView = (TextView) convertView.findViewById(R.id.last_message_textview);
viewHolder.unreadMessagesTextView = (TextView) convertView.findViewById(
R.id.unread_messages_textview);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
List<DialogOccupant> dialogOccupantsList = dataManager.getDialogOccupantDataManager().getDialogOccupantsListByDialogId(
dialog.getDialogId());
if (Dialog.Type.PRIVATE.equals(dialog.getType())) {
User opponentUser = ChatUtils.getOpponentFromPrivateDialog(
UserFriendUtils.createLocalUser(currentUser), dialogOccupantsList);
if (opponentUser.getFullName() != null) {
viewHolder.nameTextView.setText(opponentUser.getFullName());
displayAvatarImage(opponentUser.getAvatar(), viewHolder.avatarImageView);
} else {
viewHolder.nameTextView.setText(resources.getString(R.string.deleted_user));
dataManager.getDialogDataManager().deleteById(dialog.getDialogId());
}
} else {
viewHolder.nameTextView.setText(dialog.getTitle());
viewHolder.avatarImageView.setImageResource(R.drawable.placeholder_group);
displayGroupPhotoImage(dialog.getPhoto(), viewHolder.avatarImageView);
}
return convertView;
}
private static class ViewHolder {
public RoundedImageView avatarImageView;
public TextView nameTextView;
public TextView lastMessageTextView;
public TextView unreadMessagesTextView;
}
共 (0) 个答案