listview清空的问题

2024-12-27 10:17:08
推荐回答(2个)
回答1:

没做过手机开发,不过思路很清晰,在调用装载listview之前先清空listview,如listview1.clear(),你只要找到调用listview的入口就解决了。比如:

下面这个计时器,每隔一段时间重新加载一次listview,把内容显示出来,InitListView()方法是装载listview的入口,那么在之前用listView1.Clear()将listview清空即可。其实方法很多啦。

void timer1_Tick(object sender, EventArgs e)
{
   listView1.Clear();
   InitListView();
   timer1.Enabled = true;
}

希望对你有帮助,有问题再追问,望采纳。

回答2:

虽然离你问这个很远了,估计你自己也找到方法了,不过还是纠正一下

其实LS的思路很对,做开发的就该这么想,但是Android中的ListView是没有clear()这个方法的,因此行不通。

一般的,对于要给ListView显示东西,都会使用一个List+Adapter的方案,数据就是List中一个一个item,用adapter进行填充。所以说这就简单了,因为List是有clear()方法的,直接找到ListVIew对应的List执行一次list.clear()就行了。

...
...
listView = this.findViewById(R.id.listView);
adapter = new TAdapter(Main.this);
list = getResult();
//以及其他初始化
...
...
//显示
adapter.bindData(list);
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
...
...
//清空
adapter.list.clear();      //或者list.clear();adapter.bindData(list);
adapter.notifyDataSetChanged();