我正在嘗試在我的一個應用程序中使用秒錶,並且我已經將它開始計算在開始時的秒數並在停止時停止計數。我的問題是它會在60秒後繼續運行。例如,如果我等了兩分鐘,我會得到120秒。格式秒錶要顯示00:00
所以我的問題是我該如何做到這一點,所以一旦秒達到60分鐘會增加一個秒會重新開始?
所以,而不是:120我會得到2:00。下面是我的代碼有:
final int MSG_START_TIMER = 0;
final int MSG_STOP_TIMER = 1;
final int MSG_UPDATE_TIMER = 2;
Stopwatch timer = new Stopwatch();
final int REFRESH_RATE = 100;
Handler mHandler = new Handler()
{
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case MSG_START_TIMER:
timer.start();
mHandler.sendEmptyMessage(MSG_UPDATE_TIMER);
break;
case MSG_UPDATE_TIMER:
tvTextView.setText(":"+ timer.getElapsedTimeSecs());
mHandler.sendEmptyMessageDelayed(MSG_UPDATE_TIMER,REFRESH_RATE);
break;
case MSG_STOP_TIMER:
mHandler.removeMessages(MSG_UPDATE_TIMER);
timer.stop();
tvTextView.setText("");
break;
default:
break;
}
}
};
也:
public void start(View v) {
mHandler.sendEmptyMessage(MSG_START_TIMER);
}
public void stop(View v) {
mHandler.sendEmptyMessage(MSG_STOP_TIMER);
}
通過我看着this question但他的問題是與時間跨度,如果我理解正確的是從秒錶不同的方式(指正如果我錯了)。感謝您的時間和精力。
問題,你提到那到是C#! – t0mm13b 2012-08-12 00:31:20
看看這個問題 - http://stackoverflow.com/questions/5937043/problem-with-stopwatch-in-android?rq=1 – t0mm13b 2012-08-12 00:32:16
爲什麼你把我的問題投下來?只是想知道,所以我可以改善未來的問題。 – ninge 2012-08-12 00:41:35