2011-03-26 79 views
3

我需要顯示一個計時器,小時,分鐘和秒。目前我使用android.os.CountDownTimer(1000 * 60 * 60,1000)。我有一種感覺,它不適合我的需求,因爲我不需要它停下來,所以我打算輸入巨大的值作爲倒數值。安卓:顯示秒數報價

我可能缺少另一種無限期顯示時間滴答的方法嗎?

+0

看看[從計時器更新用戶界面](http://developer.android.com/resources/articles/timed-ui-updates.html) – rajath 2011-03-26 16:16:30

+0

謝謝Rajath。發佈作爲答案,然後我可以標記它。 – 2011-03-27 18:15:42

+0

完成Hein。乾杯。 – rajath 2011-03-28 06:49:26

回答

2

在我的情況下上面的例子開始後,才作出這樣的修改工作:

private final Runnable mUpdateTimeTask = new Runnable() { 
     @Override 
     public void run() { 
       final long start = 0; 
//    long millis = SystemClock.uptimeMillis() ; 
       long millis = SystemClock.uptimeMillis() - start; 
       int seconds = (int) (millis/1000); 
       int minutes = seconds/60; 
       seconds  = seconds % 60; 

       if (seconds < 10) { 
        waitingTime_Time.setText("" + minutes + ":0" + seconds); 
       } else { 
        waitingTime_Time.setText("" + minutes + ":" + seconds);    
       } 

       mHandler.postAtTime(this, 
         start + (((minutes * 60) + seconds + 1) * 1000)); 
      } 
     };  

mStartTime = System.currentTimeMillis(); - 返回值遠遠超過mStartTime = System.currentTimeMillis();
,這就是導致負值更新。 但設置開始時間爲零,計時器每100毫秒更新一次。