我有这个代码,我想将setText的速度更改为我的TextView。我想要更快更好地开始,但是当结束时,会减慢文本的变化。
new CountDownTimer(10000, timeToChange) {
public void onTick(long millisUntilFinished) {
if (millisUntilFinished < 7000){
timeToChange = 500;
Log.d("changed", "time 7000 changed to : " + timeToChange);
} else if (millisUntilFinished < 5000){
timeToChange = 1000;
Log.d("changed", "time 5000 changed to : " + timeToChange);
} else if (millisUntilFinished < 3000){
timeToChange = 1500;
Log.d("changed", "time 3000 changed to : " + timeToChange);
}
if (controlador){
mTextField.setText("WORD 1");
controlador = false;
} else {
mTextField.setText("WORD2");
controlador = true;
}
}
public void onFinish() {
mTextField.setText("done!");
btnTime.setEnabled(true);
}
}.start();
我认为这是不可行的。
有什么办法吗?
谢谢!
答案 0 :(得分:1)
我认为您应该创建一个取消当前CountDownTimer
的函数,并使用您想要的新timeToChange
创建一个新函数。)。
为此,您可以尝试将CountDownTimer
分配给变量以简化操作。
答案 1 :(得分:0)
从Android one开始创建自己的CountDownTimer并添加set方法以更改变量mCountdownInterval。
答案 2 :(得分:-1)
在CountDown计时器启动后,您无法自定义持续时间 你必须使用Thread来完成你的工作。
使用in thread可以使用
Thread.sleep(your_duration);
所以通过这种方式你可以处理速度。