Android EditText中的倒计时在最后一秒中延迟
我想设置一个带有计时器的Android EditText中的倒计时在最后一秒中延迟,android,Android,我想设置一个带有计时器的EditText,这要感谢CountDownTimer。 我的EditText一秒一秒地写数字3和2,但是对于1有一个延迟(需要1,5到2秒)。 也许我做错了 这是我的代码: CountDownTimer mCountDownTimer = new CountDownTimer(4000, 1000) { @Override public void onTick(long millisUntilFinished) {
EditText
,这要感谢CountDownTimer
。
我的EditText一秒一秒地写数字3和2,但是对于1有一个延迟(需要1,5到2秒)。
也许我做错了
这是我的代码:
CountDownTimer mCountDownTimer = new CountDownTimer(4000, 1000) {
@Override
public void onTick(long millisUntilFinished) {
txt_timer.setText(String.valueOf(millisUntilFinished / 1000));
}
@Override
public void onFinish() {
txt_timer.setText("GO");
}
};
mCountDownTimer.start();
这是因为UI线程做了太多的工作。尝试在UI线程本身上运行新线程:
runOnUiThread(new Runnable() {
public void run()
{
//Insert your code
}
});
}
如果可以,请告诉我;我不能让它工作 设备中的内存导致问题。我找到了一个运行新线程的解决方案 我必须声明
inti=4代码>之前,然后使用此代码:
new Thread() {
public void run() {
while (i-- > 1) {
try {
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
txt_timer.setText(String.valueOf(i));
}
});
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
txt_timer.setText("GO");
}
}.start();
您的代码看起来是正确的,可能是设备内存导致了问题。我也有同样的问题!原因是你的设备我有一个非常好的设备。真奇怪。。。没有别的解决办法了吗?