我想知道如何在更改/添加数据时更新ListActivity
。列表数据更改时更新Android ListActivity?
我首先想到的是,当列表改变ListAdapter
会知道,但是当我加入的元素列表上有ListActivity
没有更新,只有当我关闭ListActivity并重新打开它,我再次看到发生的变化。
所以我搜索了任何方法,如:update(), refesh()
或类似的东西,但没有。 看来我没有得到这个概念,有人可以帮我吗?
我想知道如何在更改/添加数据时更新ListActivity
。列表数据更改时更新Android ListActivity?
我首先想到的是,当列表改变ListAdapter
会知道,但是当我加入的元素列表上有ListActivity
没有更新,只有当我关闭ListActivity并重新打开它,我再次看到发生的变化。
所以我搜索了任何方法,如:update(), refesh()
或类似的东西,但没有。 看来我没有得到这个概念,有人可以帮我吗?
如果您使用的是ArrayAdapter
,请通过适配器处理列表内容 - 请勿触摸底层列表。在ArrayAdapter
上有add()
,insert()
和remove()
方法。
如果您使用的是CursorAdapter
,请在Cursor
上运行requery()
。
尝试ArrayAdapter:notifyDataSetChanged
Google docs link
只是一个注释,如果没有任何观察员连接到适配器,那不起作用。 – Waltsu 2012-01-05 07:34:16
也许你应该这样做setListAdapter(listAdapter);
好,谢谢不,我理解它是如何工作 – 2009-10-10 16:55:24
我使用ArrayAdapter和我更新的记录。我如何刷新ListView? – 2011-08-18 02:36:01
这当然不再推荐,因为在UI线程上执行了'requery()'。如果你碰巧遇到这篇文章,你应该考虑使用'Loader'来代替。 – 2012-07-10 15:20:59