Android 活动问题
我的申请表中有3项活动。 我的第一个活动(主)有两个按钮,用于启动其他活动(一个和两个)。 One活动在UI上启动倒计时。 当我点击后退按钮时,Android会关闭此活动,当我重新打开活动时,计时器会重置 我还尝试覆盖:Android 活动问题,android,android-activity,stack,Android,Android Activity,Stack,我的申请表中有3项活动。 我的第一个活动(主)有两个按钮,用于启动其他活动(一个和两个)。 One活动在UI上启动倒计时。 当我点击后退按钮时,Android会关闭此活动,当我重新打开活动时,计时器会重置 我还尝试覆盖: public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_BACK) { moveTaskToBack(true);
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
return true;
}
return super.onKeyDown(keyCode, event);
}
它工作正常,但当我重新打开主活动时,Android会显示我的计时器活动。
如何解决此问题?在哪里重置计时器?如果某个活动在后台,它不会被销毁,而是暂停。除非它被销毁(完成),否则它不会通过onCreate。如果要在每次活动到达前台时重置计时器,请使用onResume()方法: 请看这里:
如果这不是问题,你已经考虑了活动生命周期状态,然后再粘贴一些代码。我的问题是相反的。我不想在重新打开此活动时重置计时器。所以,当我点击后退按钮时,我的活动被安卓系统破坏了。哦,对不起,我误解了你的问题。当然,活动1中的计数器被销毁,该活动既不可见也不在前景中,因此它被销毁。为什么不在主活动中保留计时器,如果需要,在启动时将其传递给活动1?这只是一个建议的快速和简单的实现,还有许多其他更详细的实现。你的问题与其说是安卓系统的问题,不如说是持久性的问题。
@Override
protected void onResume() {
super.onResume();
//reset timer
}