在Android上刷新Adapter / ListView的最佳方式是什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (32)

“Hello Android”将此作为使用自定义数据库帮助程序,设置游标,然后设置适配器的一种方式,如下所示:

Cursor cursor
CustomDatabaseHelper test = new CustomDatabaseHelper(this);
try {
        cursor = getData();
        showData(cursor);
} finally {
        test.close();
}

不过,每次我需要刷新数据集时,我都需要继续运行这段代码(由于“this”不可用,在onClick()中为一个按钮有点困难。

提问于
用户回答回答于

在设置Adapter它为我工作之前,简单地添加这些代码:

    listView.destroyDrawingCache();
    listView.setVisibility(ListView.INVISIBLE);
    listView.setVisibility(ListView.VISIBLE);

或者在改变数据资源后直接使用下面的方法:

   adapter.notifyDataSetChanged()
用户回答回答于

你应该使用adapter.notifyDataSetChanged()。日志在使用时会表示出什么?

扫码关注云+社区