2015-02-26 5 views
-1
new CountDownTimer(400000, 100) { 

     public void onTick(long millisUntilFinished) { 

      Timer.setText((millisUntilFinished/10000)+":"+(millisUntilFinished % 6000/100)); 

     } 

     public void onFinish() { 
      Timer.setText("done!"); 

      Intent intent = new Intent(ExamActivity.this,ResultActivity.class); 
      intent.putExtra("Score", score); 
      startActivity(intent); 
      finish();  
     } 
    }.start(); 

Проблема в том, что секунды отсчитываются так быстро. я пытаюсь добиться 40minutes счета down..above мой кодТаймер для Android Тайм-аут Секундомер быстро

+0

Вы рассчитываете в ** ** сантисекундах интервалы, а не в миллисекундах ** **. См. 'New CountDownTimer (400000, 100)' –

+0

ok .... как я могу рассчитывать в миллисекундах? –

+0

его подсчет секунд вниз на 10 .. то есть 59,49,39,29 .... –

ответ

3

Если вы хотите 40 минут, попробуйте следующее:

new CountDownTimer(40*60*1000, 1000) 
0

визит CountDownTimer Documentation

new CountDownTimer(2400000, 1000) { 

     public void onTick(long millisUntilFinished) { 

      Timer.setText((millisUntilFinished/10000)+":"+(millisUntilFinished % 6000/100)); 

     } 

     public void onFinish() { 
      Timer.setText("done!"); 

      Intent intent = new Intent(ExamActivity.this,ResultActivity.class); 
      intent.putExtra("Score", score); 
      startActivity(intent); 
      finish();  
     } 
    }.start(); 
0

Вы рассчитывали в сантисекундах интервалы, не в миллисекундах.

Попробуйте установить его отдельно.

new CountDownTimer(40*60*1000, 1000) { 

     public void onTick(long millisUntilFinished) { 

      Timer.setText((millisUntilFinished/10000)+":"+(millisUntilFinished % 6000/100)); 

     } 

     public void onFinish() { 
      Timer.setText("done!"); 

      Intent intent = new Intent(ExamActivity.this,ResultActivity.class); 
      intent.putExtra("Score", score); 
      startActivity(intent); 
      finish();  
     } 
    }.start(); 
0
new CountDownTimer(40*60*1000, 1000) { 

     public void onTick(long millisUntilFinished) { 

     long minute= millisUntilFinished/(1000*60); 
     long second= (millisUntilFinished -(minute*60*1000))/1000; 

      Timer.setText(minute+":"+ 
        second); 

     } 

     public void onFinish() { 
      Timer.setText("done!"); 

          Intent intent = new Intent(ExamActivity.this,ResultActivity.class); 
          intent.putExtra("Score", score); 
          startActivity(intent); 
          finish();  
     } 
    }.start(); 
} 
Смежные вопросы