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++; } });