http://blog.csdn.net/amohan/article/details/17372651
这个中我不知道他为什么要那么复杂,
int size=listmap.size();//获取数据集的个数
if(size>0){
System.out.println(size);
listmap.removeAll(listmap);//清空数据集
adapter.notifyDataSetChanged();//通知下观察者我更改了数据
listView.setAdapter(adapter);//重新设置adapter
}
我觉得上面很麻烦,首先需要数据集和adapter这两个局部变量 存在。但是这个一般情况下是没有的。
我的方法,既然清除,那么我只要给一个没有数据元素的adapter不就可以了吗。
//我只需要listview引用就可以办到这个事情。而且简单。
public void clear(View view) {
ArrayAdapter adapter = (ArrayAdapter) listView.getAdapter();// 获取当前listview的adapter
int count = adapter.getCount();// listview多少个组件
if (count > 0) {
//Toast.makeText(this, "Size" + count, Toast.LENGTH_LONG).show();
listView.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1));
}
}