一如既往地感谢阅读和思考这个问题。
我想在一些活动中节省经过的时间并在以后使用它们,我认为SharedPreferences将是一个很好的保存选择,但我发现使用计时器效率不高。我会感激任何帮助。感谢。
答案 0 :(得分:0)
声明你的变量:
long lastTimeRecorded;
然后在onCreate上获得一个开始时间:
lastTimeRecorded = System.currentTimeMillis();
然后,当您更新时间时,请从活动中调用此函数:
public void updateTimer(){
long elapsedTime = System.currentTimeMillis() - lastRecordedTime;
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
prefs.edit().putLong("elapsedTime", elapsedTime);
}
如果您希望它以特定间隔重复:
private final int interval = 1000; // in millis
private Handler handler = new Handler();
private Runnable runnable = new Runnable(){
public void run() {
updateTimer();
}
};
...
handler.postAtTime(runnable, System.currentTimeMillis()+interval);
handler.postDelayed(runnable, interval);
来自塞缪尔,在这里 How to set a timer in android