我正在尝试使用 .cancel() 函数暂停倒数计时器。但它不会暂停。
我的 cdTimer 是一个全局变量,以便我从其他方法访问。
public void startTimer()
{
//create timer
cdTimer = new CountDownTimer(timeLimit, 1000) {
public void onTick(long millisUntilFinished) {
timeLeft = (int)millisUntilFinished;
if(millisUntilFinished < 60000)
timer.setText("Time : 00 : " + String.valueOf(millisUntilFinished / 1000) );
else if(millisUntilFinished >= 60000 && millisUntilFinished < 120000)
timer.setText("Time : 01 : " + String.valueOf((millisUntilFinished / 2) / 1000));
else if(millisUntilFinished >= 120000 && millisUntilFinished < 180000)
timer.setText("Time : 02 : " + String.valueOf((millisUntilFinished / 3) / 1000));
if(millisUntilFinished < 20000)
timer.setTextColor(Color.RED);
}
public void onFinish() {
showGameOverScreen();
}
}.start();
}
然后从另一种方法,我试图像这样访问它。
public void pauseMenu()
{
cdTimer.cancel();
}
有任何想法吗?