Es ist möglich, einen CountDownTimer in Android zu pausieren? Ich habe nach guten Lösungen gesucht, aber ich finde nur einige Möglichkeiten, dies zu tun, die ich wirklich nicht mag. Speichern Sie einfach die linke Zeit in einer Variablen und initialisieren Sie einen neuen CountDownTimer mit diesen Werten.Anhalten/Fortsetzen CountDownTimer Android
Diese Art von Lösungen funktionieren, aber sie sahen nicht so gut aus, weil ich einen Kreis Progress Bar und eine Textansicht zusammen mit meinem CountdownTimer verwende. War wirklich hässlich, versuche diese beiden gut aussehen zu sehen mit dem CountDown ohne in der Lage zu sein es wirklich zu "pausieren".
Hier ist mein Code zum Initialisieren des CountDownTimer mit einer ProgressBar und einem TextView.
public void initProgress() {
if (mCountdownProgressBar == null)
mCountdownProgressBar = (CircleProgressBar) findViewById(R.id.progressBar);
mCountDownTime = 30000; //Insert your desire time in Milliseconds here
mCountdownProgressBar.setMaxProgress((int)TimeUnit.MILLISECONDS.toSeconds(mCountDownTime));
mCountDownTimer = new CustomCountDownTimer(mCountDownTime, 1000) {
@Override
public void onTick(long millisUntilFinished) {
Log.v("Log_tag", "Tick of Progress" + TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished));
mCountdownProgressBar.setmProgress(TimeUnit.MILLISECONDS.toSeconds(millisUntilFinished));
mTimer.setText(Util.getTimeForTimer(millisUntilFinished, Util.TIME_FORMAT));
}
@Override
public void onFinish() {
mCountdownProgressBar.setmProgress(0);
mTimer.setText(Util.getTimeForTimer(0, Util.TIME_FORMAT));
}
};
mCountDownTimer.start();
}
Mit diesem Code können Sie eine progressBar und eine Textview setzen zusammen mit Ihrem CountDownTimer. Um es einfach pausieren und fortsetzen zu können, werde ich als nächstes eine Custom Class für CountDownTimer veröffentlichen.
Mit freundlichen Grüßen!
Wie kommen Sie auf Ihre eigene Frage? –
Mit StackOverflow können Sie Fragen mit Ihrer eigenen Antwort erstellen. Ich habe es gemacht, weil ich nach diesem Problem gesucht habe und ich habe keine Lösung gefunden. Als ich das gemacht habe, habe ich eine Frage mit meiner Frage erstellt, um in Zukunft jemand anderem mit diesem Problem helfen zu können! –