Как поставить логическое значение на нажатие кнопки? - PullRequest
1 голос
/ 07 мая 2020

У меня есть этот таймер обратного отсчета, который запускается при нажатии кнопки ниже - это код.

static public void starttimer() {
    t1 = date3 - date;
    progressbarstatus ();
    starttimercd ();

    timer = new CountDownTimer ( totalSeconds, 1000 ) {
        @Override
        public void onTick(long millisUntilFinished) {

            if (isclicked = true) {
                secondc = totalSeconds - millisUntilFinished;
                mEndtime = System.currentTimeMillis () + secondc;
                countdowntext ();
            }
            if (isclicked = false) {
                secondc = System.currentTimeMillis () - mEndtime;
                countdowntext ();
                timer.cancel ();

            }

            percentage = Math.round ( secondc / t1 * 100 );
            tvp.setText ( percentage + "%" );
        }

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

Я попытался поставить логическое значение на слушателя. проблема в том, что когда я запускаю приложение, таймер работает по умолчанию. Есть ли у кого-нибудь решение о том, как заставить таймер запускаться только при нажатии кнопки и как поставить логическое значение на onclicklisterner? Был бы признателен, если бы кто-нибудь мог помочь.

1 Ответ

0 голосов
/ 09 мая 2020

Не следует использовать логическое значение в функции onclick . Ставить если из таймер . Когда логическое значение равно true, функция будет работать независимо от того, будет ли логическое значение true или false после этого.

...