【发布时间】:2012-12-26 16:25:24
【问题描述】:
我的应用程序中有一个列表。在另一个活动中,用户从数据库中删除一行并返回到主活动(我在这里使用 finish())。当它返回时,已从数据库中删除的行仍在列表中。如果用户按下刷新按钮,它就会消失。
如何自动刷新?
【问题讨论】:
标签: android database list refresh
我的应用程序中有一个列表。在另一个活动中,用户从数据库中删除一行并返回到主活动(我在这里使用 finish())。当它返回时,已从数据库中删除的行仍在列表中。如果用户按下刷新按钮,它就会消失。
如何自动刷新?
【问题讨论】:
标签: android database list refresh
覆盖你原来的 Activity(当用户按下返回时显示的那个)onResume(),所以它看起来像:
@Override
protected void onResume()
{
refreshListMethod();
super.onResume();
}
refreshListMethod(); 是您选择刷新列表的任何方法,因为您说:
用户按下刷新按钮,它消失了。
因此,将这种方法变成一种方法,以便您可以在任何需要的地方使用它。
【讨论】:
notifyDataSetChanged() 的列表。只是想知道我是否需要重新考虑我的做事方式
onResume() 是更好的做法;它绝对更干净。因此,它应该更快,并且遵守 Activity 生命周期约定。当您想更改 Activity 的 UI 时,您无需重新创建它,而是继续使用 Activity。
重新创建Activity 当您单击列表项时,您可以在ListActivity 上调用finish(),然后在删除新的Activity 中的行后使用Intent 重新创建Intent
【讨论】: