Таймер обратного отсчета устанавливается с помощью кнопки - PullRequest
0 голосов
/ 06 апреля 2019

Я хотел запрограммировать таймер, который можно настроить, нажав кнопку.Например, кнопка 1 устанавливает таймер на 1 минуту.Кнопка 2 устанавливает таймер на 2 минуты.третья кнопка должна запустить и остановить таймер.Я пробовал много примеров кода, но он не работает.У кого-нибудь есть идеи, как это решить?

public void mittelBtn (View view){

    EditText timerText = (EditText) findViewById(R.id.timerText);
    timerText.setText("7:00");

    countDownTimer =new CountDownTimer(420000, 1000) {
        @Override
        public void onTick(long millisUntilFinished) {

        }

        @Override
        public void onFinish() {

        }
    }.start();
}

public void weichPlusBtn (View view){

    EditText timerText = (EditText) findViewById(R.id.timerText);
    timerText.setText("5:00");

    countDownTimer =new CountDownTimer(300000, 1000) {
        @Override
        public void onTick(long millisUntilFinished) {

        }

        @Override
        public void onFinish() {

        }
    }.start();

1 Ответ

0 голосов
/ 06 апреля 2019

Потому что в onTick вы должны что-то делать.

public void weichPlusBtn (View view){

    EditText timerText = (EditText) findViewById(R.id.timerText);

    timerText.setText("5:00");
    
    //Set a couter variable
    int counter = 5 * 60;

    countDownTimer =new CountDownTimer(300000, 1000) {
        @Override
        public void onTick(long millisUntilFinished) {
          counter--;
          String newTime = secondsToString(counter);
          timerText.setText(newTime);
        }

        @Override
        public void onFinish() {

        }
    }.start();
    
 private String secondsToString(int pTime) {
        return String.format("%02d:%02d", pTime / 60, pTime % 60);
    }

Надеюсь, это поможет. Удачи.

...