Android:显示秒数代码

时间:2011-03-26 15:09:25

标签: android

我需要显示一个小时,分钟和秒钟的计时器。目前我使用android.os.CountDownTimer(1000 * 60 * 60,1000)。我觉得它不适合我的需要,因为我不需要它停下来,所以我采用输入巨大的值作为倒计时值。

我是否可能会错过另一种无限期显示时间刻度的方法?

1 个答案:

答案 0 :(得分: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毫秒更新一次。