如何在按下后退按钮后刷新先前的活动?
我正在构建一个报警应用程序。我目前有一个ListActivity,它显示报警列表和另一个改变特定报警时间的活动。我的问题是,当我决定进入活动来更改闹钟时间,然后按下后退按钮时,它不会刷新。但是,我已经实现了一个重定向回ListActivity的按钮,如果按下它,警报列表将刷新。如何在按下后退按钮后刷新警报列表?如何在按下后退按钮后刷新先前的活动?
您应该重写您的onResume()以检查警报列表是否已刷新,以便每当您返回/返回到您的ListActivity时,它都会得到更新。
在您的报警列表活动
使用
public void onRestart() {
// reload your list items if changed and adapter.notifydatastatechange();
}
如果你的onResume做的话它的呼叫两次第一,当你开始活动时,您的活动重启ñ第2位。
这个答案是正确的! OnRestart()比OnResume()更适合这个! – 2014-01-12 08:36:35
我使用onResume()进行了测试,并且在创建Activity时调用函数(并且不是必需的)。但是使用onRestart()它仅在由后退按钮调用的Activity中调用(这是我们想要的)。因此,使用onRestart()对此更好! – 2014-01-12 08:40:21
这里是代码。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Intent a = new Intent(this,yourback.class);
a.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(a);
return true;
}
return super.onKeyDown(keyCode, event);
}
我总是使用这个时,当是列表视图。
onRestart()更适合这个! onResume()执行两次程序,并且当您按下后退按钮时调用onRestart(),并且该过程只完成一次。 – 2014-01-12 08:46:13