倒数计时器在3秒后开始第一次计时

时间:2018-08-09 14:42:35

标签: java android

我有一个倒计时计时器,该计时器必须运行30秒,滴答间隔为3秒。 但是似乎第一次滴答就发生在计时器启动后。我希望在3秒后发生第一次滴答声。 然后每3秒滴答一次。我该怎么办?

这是我的代码-

if (!timerRunning && timer == null) {
            timer = new CountDownTimer(300000, 3000) {
                @Override
                public void onTick(long l) {
                    timerRunning = true;
                    Log.e(TAG,"Tick every 3 seconds");
                }

                @Override
                public void onFinish() {
                    timerRunning = false;
                }
            }.start();
        }

1 个答案:

答案 0 :(得分:1)

一种可能的解决方案是使用如下处理程序:

class AA {
    public:
        AA(const char* name, unsigned short number);

        int Write(int x);
    ...
    }

class BB: public AA {
    public:
        BB(const char* name, unsigned short number, const char* other);
        BB(AA aaObj, const char* other);

        int Write(double y, int x) {
            /* do something */
            AA::Write(x)
            }
    ...
    }

因此该代码可以为您提供帮助:

final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
  @Override
  public void run() {
    //Do something after 3000ms
  }
}, 3000);