2011-09-09 14 views

Respuesta

6

Esto se puede comprobar mediante variable.when booleano se inicia el cronómetro configura variable booleana true y cuando se detiene, establece la variable booleana como falsa.

boolean isChronometerRunning = false; 
if (true) // condition on which you check whether it's start or stop 
{ 
    chronometer.start(); 
    isChronometerRunning = true; 
} 
else 
{ 
    chronometer.stop(); 
    isChronometerRunning = false; 
} 
2

Es es extraño que no expone esa propiedad. Realmente no veo una forma ideal de verificarlo más allá de hacer un seguimiento por tu cuenta.

Se podía tomar the source code para esa clase, implementarlo en su proyecto usted mismo, y añadir un método como este:

public boolean getStarted() { 
    return mStarted; 
} 
5

Puede extendChronomter, así:

import android.content.Context; 
import android.os.SystemClock; 
import android.util.AttributeSet; 
import android.widget.Chronometer; 

public class MyChronometer extends Chronometer { 

    private boolean isRunning = false; 

    public MyChronometer(Context context) { 
     super(context); 
    } 

    public MyChronometer(Context context, AttributeSet attrs) { 
     super(context, attrs); 
    } 

    public MyChronometer(Context context, AttributeSet attrs, int defStyle) { 
     super(context, attrs, defStyle); 
    } 

    @Override 
    public void start() { 
     super.start(); 
     isRunning = true; 
    } 

    @Override 
    public void stop() { 
     super.stop(); 
     isRunning = false; 
    } 

    public boolean isRunning() { 
     return isRunning; 
    } 

} 

Y luego simplemente llamar isRunning().

0
private boolean isChronometerRunning = false; 

private Chronometer chronometer; 

chronometer = (Chronometer) findViewById(R.id.chronometer); 

chronometer.setBase(SystemClock.elapsedRealtime()); 
chronometer.start(); 

isChronometerRunning = true; 

Ahora, cuando quiera detener el cronómetro, utilice el siguiente código para comprobar si el cronómetro está funcionando o no.

if (isChronometerRunning){ 
     chronometer_call.stop(); 
    } 
Cuestiones relacionadas