为什么使用CountDownTimer会显示两次“1”?我只想让它平稳倒计时,而不是看起来像在最后一秒挂起了。有人有什么解决这个问题的想法吗?
以下是来自Android开发者页面的代码:
new CountdownTimer(30000, 1000) {
public void onTick(long millisUntilFinished) {
mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
}
public void onFinish() {
mTextField.setText("done!");
}
}.start();
我创建了一个新项目,并复制粘贴了这段代码,只是为了确保我没有在我的程序中意外犯错。我一直在Tab 10.1上测试它。当我运行它时,它会输出:"5"、"4"、"3"、"2"、"1"、"1"、"done!"。
onTick(long)
方法中记录millisUntilFinished
的值。这是用于更新你的TextView
的值。 - nicholas.hauschild