可以在循环内使用CountDownTimer吗?

时间:2019-04-12 11:46:17

标签: android

我想在for循环中使用CountDownTimer,但是当我使用以下代码时,CountDownTimer仅运行一次,而我想根据for循环中的给定条件运行CountDownTimer。这可能是一个愚蠢的问题,但是如果能得到我的帮助,我将非常感谢您。在此先感谢

       for (int i=1;i<=10;i++){
        Random random = new Random();
        totalques.setText(String.valueOf(i) + "/10");

        firstnum.setText(String.valueOf(random.nextInt(100)));
        secondnum.setText(String.valueOf(random.nextInt(50)));

         new CountDownTimer(5000, 1000) {
        @Override
        public void onTick(long millisUntilFinished) {
            time.setText(String.valueOf(millisUntilFinished / 1000) 
       +"s");
        }
        @Override
        public void onFinish() {

        }
      }.start();

       }

1 个答案:

答案 0 :(得分:0)

您可以使用Timer类完成工作

 final Handler handler = new Handler();
    Timer timer = new Timer();
    TimerTask timerTask = new TimerTask() {
        @Override
        public void run() {
            handler.post(new Runnable() {
                public void run() {
                    //one second elapsed
                }
            });
        }
    };
    timer.schedule(timerTask, 0, 1000);

计划方法说直接开始,每隔1000毫秒就会通知我。 当您想使用timer.cancel()

停止计时器时,别忘了取消它

在运行过程中,您可以减少一个int值,当它达到0时,您可以停止计时器