我对ListAdapter有疑问。当我创建一个ListAdapter时,我总是需要使用new
进行记录或创建一个。
例如。
private void addListAdapter(){
MyAdapter myAdapter = new MyAdapter(getContext(), new ArrayList<String>();
listView.setAdapter(myAdapter);
}
在此示例中,我将始终调用
addListAdapter()
重新定义适配器。我想知道是否只应该创建一次myAdapter
并可以在所有活动中使用。例
private MyAdapter myAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
myAdapter = new MyAdapter(getContext(), new ArrayList<String>();
listView.setAdapter(myAdapter);
}
/** change list in MyAdapter */
private void changeListAdapter(){
List<String> list = new ArrayList<String>();
list.add("Name");
list.add("LastName");
myAdapter.changeList(list);
myAdapter.notifyDataSetChanged();
}
在J2SE / Swing中,仅在更改TableModel中的List之后,我在应用程序中创建了唯一的TableModel。使用ListAdapter可以正常工作吗?
最佳答案
每当您都无法对其进行任何控制时,都将创建一个新实例,因为您将始终引用不同的MyAdapter
实例,这也没有用。