Ich versuche, eine Zeitfortschrittsbalken in meiner App zu machen um zu zeigen, 35 SekundenAndroid Glatte Timer progressbar mit benutzerdefinierter Form
i hinzugefügt, um es einen Countdown-Timer, aber das Problem ist, es Werte auf jeder Sekunde ändert, aber ich mag die Fortschrittsbalken zu glatt zu ändern
hier ist mein Code:
mCountDownTimer=new CountDownTimer(35000,1000) {
@Override
public void onTick(long millisUntilFinished) {
i--;
mProgressBar.setProgress(i);
}
@Override
public void onFinish() {
i--;
mProgressBar.setProgress(i);
wrongAnswer(false);
}
};
ich versuchte Animation mit, aber es war für mich ein bisschen schwer und ich habe nicht herausfinden, was zu tun ist.
Gibt es eine Möglichkeit, dies zu tun und einen reibungslosen Fortschritt in der richtigen Weise zu machen?
EDIT: I reduzierten Wert von countDownInterval
bis 40 ms, aber jetzt wirkt es seltsam auf verschiedenen Geräten. obwohl Timer ist ok und endet in 17ms, Fortschrittsbalken wirkt anders und manchmal endet in der Mitte, einige Male vor dem Abschluss und ... ist das möglich, dass progressbar
nicht genug Zeit hat, den Fortschritt alle 40ms zu ändern und so mein Problem passiert ?
das funktionierte für mich, aber ich frage, ist das ein richtiger Weg, um zu implementieren, was ich brauche? und eine andere Frage, hast du eine Idee, was ich tun soll, um die Form der Fortschrittsbalken zu ändern? – rkarami
Ich habe 'countDownInterval' auf 40ms reduziert, aber der Fortschrittsbalken verhält sich bei einigen Geräten anders! Ich denke, das Problem ist, dass Timer wegen eines kleinen Countdown-Intervalls komisch wirkt und es nicht die Zeit hat, den Fortschrittsbalken so schnell zu aktualisieren, dass ein Problem auftritt. mein Fortschrittsbalken endet manchmal in der Mitte des Fortschritts, obwohl der Timer beendet ist! – rkarami