我在我的活動A中有一個計數器,在完成它之後,我必須執行一些操作。問題是,當我進入另一個活動,然後回到本活動A時,計數器正在重置,這不應該發生。爲什麼這樣?重新開始活動時計數器沒有恢復
我的計數器類是:
private class Counter extends CountDownTimer {
public Counter(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
public void onFinish() {
//perform some actions
}
public void onTick(long millisUntilFinished) {
int minute = (int) (millisUntilFinished/(1000 * 60));
int sec = (int) ((millisUntilFinished - (minute * 60 * 1000))/1000);
minuteText.setText("" + minute);
secondText.setText("" + sec);
}
}
}
我打電話給我的櫃檯在onCreate()
爲:
new Counter(countdowntime * 60 * 1000), 1000).start();
如何解決這個問題?請回復。提前致謝。
我沒有這門課的經驗。如果您將定時器的狀態保存在兩個EditText Views中。使用標準技術,即使在方向更改時,這些字段的狀態也應該保持不變,以便您可以使用保存在這些視圖中的狀態重新初始化onCreate中的計數器。一個更清潔的解決方案可能是將剩餘時間寫入onSaveInstanceState中的包並讀取onCreate中的包 – JAL 2011-05-05 06:55:13