Мне нужно запустить последовательные таймеры CountDownTimers, каждый из них будет вызываться ПОСЛЕ завершения другого, и у них будут разные конфигурации в onTick (я реализую это позже), и каждая «последовательность» будет выполняться определенное количество времени " rounds» (который я планирую обернуть цикл while позже). Но я просто не могу понять, как вызвать этот таймер обратного отсчета В ПОРЯДКЕ, один ПОСЛЕ завершения другого. Это исследование приложений для Android. Использование JAVA в Android Studio. Помогите?
Мне нужно запустить последовательные таймеры CountDownTimers, каждый из них будет вызываться ПОСЛЕ завершения другого, и у них будут разные конфигурации в onTick (я реализую это позже), и каждая «последовательность» будет выполняться определенное количество времени " rounds» (который я планирую обернуть цикл while позже). Но я просто не могу понять, как вызвать этот таймер обратного отсчета В ПОРЯДКЕ, один ПОСЛЕ завершения другого. Это исследование приложений для Android. Использование JAVA в Android Studio. Помогите?
// Initialize the TextView textView = findViewById(R.id.textViewTimer);
// Start CDT 1 //Start the CountDown //Avoiding infite runs boolean didThreeSecondsRun = false; boolean didMainTimerRun = false; boolean didRestTimerRun = false; while (isTimerRunning) { //Run for as many rounds as necessary / //TO-DO Wrap this with FOR loops for Rounds //First Check: Is 3 Seconds Countdown? if (isThreeSecondsCountDownOver && !didThreeSecondsRun){ StartCountDownTimer(2000, 1); //Turn 3 SEC off didThreeSecondsRun = true; } if (!isThreeSecondsCountDownOver && !didMainTimerRun){ //3 Seconds Coundown is over, start main counter StartCountDownTimer(7000, 2); didMainTimerRun = true; isTimerRunning = false; } if(isMainCounterOver && !didRestTimerRun){ //Finally the Rest Round is Fired StartCountDownTimer(8000, 3); didThreeSecondsRun = true; isTimerRunning = false; } }
}//END of onCreate
//TimerType: 1. 3 SEC, 2. Main, 3. Rest public void StartCountDownTimer(int time, int whichTimerType){ new CountDownTimer(time, 1000) { @Override public void onTick(long millisUntilFinished) { // Used for formatting digits to be in 2 digits only NumberFormat f = new DecimalFormat("00"); long hour = (millisUntilFinished / 3600000) % 24; long min = (millisUntilFinished / 60000) % 60; long sec = (millisUntilFinished / 1000) % 60; textView.setText(f.format(hour) + ":" + f.format(min) + ":" + f.format(sec)); } @Override public void onFinish() { // When the task is over it will print 00:00:00 textView.setText("ZZZZZZZ"); if (whichTimerType == 1){ isThreeSecondsCountDownOver = false; } if (whichTimerType == 2){ isMainCounterOver = true; } if (whichTimerType == 3){ isMainCounterOver = false; }
Я пытаюсь настроить последовательные таймеры CountDownTimers в своем приложении для Android, используя Java в Android Studio. Мне нужно, чтобы каждый таймер запускался только после завершения предыдущего, и каждый таймер имел свою уникальную...
Я пытаюсь настроить последовательные таймеры CountDownTimers в своем приложении для Android, используя Java в Android Studio. Мне нужно, чтобы каждый таймер запускался только после завершения предыдущего, и каждый таймер имел свою уникальную...
Я пытаюсь создать последовательность таймеров CountDownTimers в своем приложении для Android с помощью Java, где каждый таймер запускается только после завершения предыдущего. Последовательность должна повторяться определенное количество раундов с...
Я пытаюсь создать последовательность таймеров CountDownTimers в своем приложении для Android с помощью Java, где каждый таймер запускается только после завершения предыдущего. Последовательность должна повторяться определенное количество раундов с...
Я пытаюсь создать последовательность таймеров CountDownTimers в своем приложении для Android с помощью Java, где каждый таймер запускается только после завершения предыдущего. Последовательность должна повторяться определенное количество раундов с...