use*_*680 9 android android-arrayadapter android-studio
如何修改此代码,以便将每个新对象添加到列表顶部而不是底部?我希望将最新的对象添加到列表的最顶部,以便在列表中向下滚动时看到较旧的对象.
public class StatusAdapter extends ArrayAdapter {
protected Context mContext;
protected List<ParseObject> mStatus;
public StatusAdapter(Context context, List<ParseObject> status) {
super(context, R.layout.homepage, status);
mContext = context;
mStatus = status;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = LayoutInflater.from(mContext).inflate(
R.layout.homepage, null);
holder = new ViewHolder();
holder.usernameHomepage = (TextView) convertView
.findViewById(R.id.usernameHP);
holder.statusHomepage = (TextView) convertView
.findViewById(R.id.statusHP);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
ParseObject statusObject = (ParseObject)mStatus.get(position);
// title
String username = statusObject.getString("newUser") + ":";
holder.usernameHomepage.setText(username);
// content
String status = statusObject.getString("newStatus");
holder.statusHomepage.setText(status);
return convertView;
}
public static class ViewHolder {
TextView usernameHomepage;
TextView statusHomepage;
}
}
Run Code Online (Sandbox Code Playgroud)
Rav*_*ari 17
如果你想以反向顺序显示列表顶部的最新项目,那么只需反转你的list.Java集合类提供一个反向方法,它可以反转列表中的所有项目.参见下面的代码 -
Collections.reverse(aList);
上面的代码反向列表项并将结果存储在同一列表中.
希望它会对你有所帮助.
List接口的每个具体实现都定义了void add(int index, E element)
在此列表中的指定位置插入指定元素(可选操作)。将当前在该位置的元素(如果有)和任何后续元素向右移动(向它们的索引添加一个)。
因此,您可以add(0,item)然后通知您的数据集已更改。这将使您新添加的项目出现在顶部而不是底部。
| 归档时间: |
|
| 查看次数: |
11159 次 |
| 最近记录: |