Ähnliches Thema: Der CountDownTimer von Android
Erstellung in der Layout-Datei
Android stellt ein Kontrollelement namens Chronometer zur Verfügung, das
im Layout wie eine TextView eingesetzt werden kann.
Man erzeugt im Designer eine TextView und ersetzt das Wort TextView
in der XML-Layout-Datei durch das Wort Chronometer.
<Chronometer
android:id="@+id/tvTick"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
Das Attribut android:text muss nun nicht mehr gesetzt werden. Der Chronometer
setzt ihn automatisch auf 00:00.
Start und Stop
Aus der Activity wird der Chronometer wie jede andere View über findViewById
ermittelt. Für diese existieren die Methoden start und stop.
Um den Timer auf 0 zu setzen, verwendet man setBase und übergibt den
Wert SystemClock.elapsedRealtime().
Chronometer chro = (Chronometer) findViewById(R.id.tvTick);
chro.setBase(SystemClock.elapsedRealtime());
chro.start();
Die vergangene Zeit ermittelt man, indem man einen OnChronometerTickListener
aufsetzt und in dessen Methode onChronometerTick eine globale Zählervariable
hochzählt.
Chronometer chro = (Chronometer) findViewById(R.id.tvTick);
chro.start();
chro.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener() {
@Override
public void onChronometerTick(Chronometer chronometer) {
sekunden++;
}
});