android - 倒数计时器无法正常工作

标签 android countdowntimer

我正在尝试使用这个计时器...当我调用countDownTimer.start()

我可以在调试器中看到 timeleft 变量已更新为我想要的 value=120000,但计时器不执行 onTick 方法。它直接跳转到 onFinish。但是,如果我给 timeLeft 一个文字,它就可以工作。

    volatile long timeLeft=0;
    CountDownTimer countDownTimer=new CountDownTimer( timeLeft,1000) {
    @Override
    public void onTick(long timeLeft) {
            TextView timeView= (TextView)findViewById(R.id.timer);
    long longTime=(timeLeft / 1000);
    Integer intTime=(int)longTime;// convert long to int
    timeView.setText(String.valueOf(intTime));}

    @Override
    public void onFinish() {correctDialog("Sorry,Time Is Up!!");}};}


    (timeLeft is not fixed)

最佳答案

此处 CountDownTimer() 构造函数中的第一个参数是 millisInFuture 。您将此值设为 0。因此只要您启动计时器,它就会完成。给它的值你想要执行多少时间,比如 10000 或 20000 等......

所以初始化timeleft

volatile long timeLeft=10000;

查看文档 CountDownTimer

关于android - 倒数计时器无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31071875/

相关文章:

android - 管理可重命名的 Android 应用程序

javascript - 倒计时器 - 凌乱的 Javascript 函数

Android,处理程序消息传递

android - 没有环境模式就一直打开?或者进入环境时不变暗?

java - 带有倒数计时器的 ProgressBar - Android

javascript - 简单倒计时器mm :ss

javascript - 当我插入一些数字(例如 31,41,51,61)时,倒计时器无法正常工作

java - 如何使用服务中的倒计时器更新文本

java - Android 应用程序更新版本在 keystore 中有 2 个不同的别名

java - 有一个实例变量指向 fragment 内的 Activity 是否安全?