我有一个带有 ArrayAdapter 的 ListFragment 来显示对象列表。我想刷新 ListFragment 的内容。这些项目本身会稍微改变它们的文本,也会改变它们的顺序。我有一百多个项目,我发现这样做的唯一方法是清除列表并重新添加它们,但这感觉效率低下。
例如:
ListFragment 显示无序:
Object A
Object D
Object F
Object B
Object E
Object C
ListFragment 显示排序:
Object A
Object B
Object C
Object D
Object E
Object F
我这样设置我的 ArrayAdapter:
mAdapter = new ArrayAdapter<Store>(mContext,
android.R.layout.simple_list_item_1,
OtherClass.list);
mAdapter.setNotifyOnChange(true);
setListAdapter(mAdapter);
“其他类”是:
public class OtherClass extends Object {
public ListArray<Object> list;
...
}
有问题的代码:
mAdapter.clear();
for (Object o : list) {
mAdapter.add(store);
}
我已经阅读了很多关于它如何工作以及如何使用的答案,mAdapter.notifyDataSetChanged()
但没有一个能解决我的问题或回答我的问题。刷新列表的唯一方法是从列表中添加/删除某些内容吗?