Cronometro

Pessoal, porque o cronometro nao para quando damos o comando stop? quando volta no start ele esta como se somente a visualização congelasse e nao que tenha parado mesmo.

Button botaoStart = (Button) findViewById(R.id.botao_start);
		Button botaoStop = (Button) findViewById(R.id.botao_stop);
		final Chronometer crono = (Chronometer) findViewById(R.id.cronometro);
		
		botaoStart.setOnClickListener(new View.OnClickListener() {

			public void onClick(View v) {
				crono.start();
			}
		});
		botaoStop.setOnClickListener(new View.OnClickListener() {

			public void onClick(View v) {
				crono.stop();
			}
		});

xml

<Button
        android:id="@+id/botao_start"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/start" >
    </Button>
    <Button
        android:id="@+id/botao_stop"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/stop" >
    </Button>
<Chronometer
        android:id="@+id/cronometro"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Chronometer" />

Opa achei um metodo interessante

crono.setBase(SystemClock.elapsedRealtime());

esse ele reseta. porém, quando reseta ele nao fica 00:00
e como eu posso colocar assim 00:00:00 ?

É do jeito que você descobriu mesmo, ele não reseta, só pára.

Ele exibe as horas por padrão, entretanto ele só mostra se já passou mais de uma hora. Eu acho que não tem maneira simples de exibir a hora sempre. =S

usei setText(“00:00”) no stop e funcionou, Mas nao consegui fazer o mesmo para 00:00:00

Olá
Faz assim:

crono.setOnChronometerTickListener(new Chronometer.OnChronometerTickListener() { @Override public void onChronometerTick(Chronometer chronometer) { CharSequence display = chronometer.getText(); if (display.length() == 5) { chronometer.setText("00:" + display); } else if (display.length() == 7) { chronometer.setText("0" + display); } } });