倒计时器onTick方法没有显示正确的秒数

时间:2016-01-18 15:39:33

标签: java android

对于我的代码,我使用倒数计时器,但是我添加秒数,因为在得到正确答案后,计时器重置为5秒。这个问题是显示时间的文本仍然有错误的数字,它不会重复数字。例如,如果它是5秒计时器并且它变为5,4,3然后用户正确,时间将变为3,3,3,2,1。 这是我的倒计时代码

n = 5000;
time = new TextView(this);
time.setTextColor(Color.parseColor("#FFFFFF"));
    timer = new CountDownTimer(n, 1000) {

        public void onTick(long millisUntilFinished) {
           time.setText("seconds remaining: " + millisUntilFinished / 1000);
        }

        public void onFinish() {
            Intent endIntent = new Intent(MainActivity.this, Endgame.class);
            endIntent.putExtra("rounds",round);
            MainActivity.this.startActivity(endIntent);
        }

    }.start();

然后,如果用户得到正确的问题 - 这是重新启动它的部分

 if(person == false){
     picturechanger();
     n=5000;
     timer.onTick(5000);

  }

1 个答案:

答案 0 :(得分:1)

尝试:

if(person == false){
 picturechanger();
 n=5000; // Not sure why u put n=5000 here..?
 if(timer != null)
     timer.cancel();
 timer.start();

}