列表数据更改时更新Android ListActivity?

Sim*_*mon 14 android listactivity android-listview

我想知道ListActivity当我更改/添加数据时如何刷新.

我首先想到的是,ListAdapter当列表发生更改时会知道,但是当我向列表添加元素时,没有更新ListActivity,只有当我关闭ListActivity并再次重新打开它时,我才会看到更改发生.

所以我搜索了任何方法,例如:update(), refesh()或类似的东西,但没有.似乎我没有得到这个概念,有人可以帮助我吗?

Com*_*are 22

如果您使用的是ArrayAdapter,通过适配器操作列表的内容 - 请勿触摸基础列表.还有add(),insert()remove()上的方法ArrayAdapter.

如果您使用的是CursorAdapter,运行requery()Cursor.

  • 当然,不再推荐这样做,因为在UI线程上执行`requery()`.如果你碰巧偶然发现这篇文章,你应该考虑使用`Loader`. (3认同)

bha*_*982 7

尝试使用ArrayAdapter:notifyDataSetChanged
Google文档链接

  • 只是一个注释,如果没有任何观察者连接到适配器,则不起作用. (2认同)