倒计时 Android 后不更新分钟和小时

Count Down Timer Not updating minutes and hours in Android

我正在使用未更新倒计时的 countDownTimer。我正在倒数分钟和小时。倒计时仅在我重新启动时更新 activity。它没有更新滴答声。 请帮我。谢谢 这是我的代码:

Date eventStartDate = Utility.stringToDate(event.eventFrom);
            Date currentDateTime = new Date();
            long ms = eventStartDate.getTime() - currentDateTime.getTime();

            long ms1 = eventStartDate.getTime() - currentDateTime.getTime();
            if (ms > 0) {
                long miliSecondsPerSecond = 1000;
                long miliSecondsPerMinute = miliSecondsPerSecond * 60;
                long miliSecondsPerHour = miliSecondsPerMinute * 60;
                long miliSecondsPerDay = miliSecondsPerHour * 24;
                long days = ms / miliSecondsPerDay;
                ms = ms - (days * miliSecondsPerDay);
                final long hours = ms / miliSecondsPerHour;
                ms = ms - (hours * miliSecondsPerHour);
               final  long minutes = ms / miliSecondsPerMinute;
                ms = ms - (minutes * miliSecondsPerMinute);


                new CountDownTimer(ms1, miliSecondsPerMinute) { // adjust the milli seconds here

                    public void onTick(long millisUntilFinished) {
                        eventTimer.setText(hours + ":" + minutes);
                    }

                    public void onFinish() {
                        eventTimer.setText("00:00");
                    }
                }.start();

在OnTick中写入如下代码

 Date eventStartDate = Utility.stringToDate(event.eventFrom);
 Date currentDateTime = new Date();
 long ms = eventStartDate.getTime() - currentDateTime.getTime();
 long ms1 = eventStartDate.getTime() - currentDateTime.getTime();
  if (ms > 0)
    {
           long miliSecondsPerSecond = 1000;
           long miliSecondsPerMinute = miliSecondsPerSecond * 60;
           long miliSecondsPerHour = miliSecondsPerMinute * 60;
           long miliSecondsPerDay = miliSecondsPerHour * 24;
           long days = ms / miliSecondsPerDay;
           ms = ms - (days * miliSecondsPerDay);
           final long hours = ms / miliSecondsPerHour;
           ms = ms - (hours * miliSecondsPerHour);
           final  long minutes = ms / miliSecondsPerMinute;
           ms = ms - (minutes * miliSecondsPerMinute);
}