Estu criando um timer para Android, to no inicio, mas to com um belo problema, quando preciso sair da aplicação ou até mesmo muda a orientação da tela, o contador de tempo é reiniciado.
Como posso fazer para que ele continue rodando(sem reiniciar) mesmo depois mudar a orientação da tela(simplesmente virando o celular)
Acho q preciso usar o metodo onResume do Android ou preciso usar um Handler, não faço ideia de como posso começar.
Ai esta o codigo
[code]import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.widget.TextView;
public class Timer extends Activity {
TextView tv; // textview to display the countdown
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
tv = new TextView(this);
this.setContentView(tv);
// 5000 is the starting number (in milliseconds)
// 1000 is the number to count down each time (in milliseconds)
MyCount counter = new MyCount(10000000, 100);
counter.start();
}
// countdowntimer is an abstract class, so extend it and fill in methods
public class MyCount extends CountDownTimer {
public MyCount(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
}
@Override
public void onFinish() {
tv.setText("done!");
}
@Override
public void onTick(long millisUntilFinished) {
tv.setText("Left: " + millisUntilFinished/1000/60/60 +" hours "+millisUntilFinished/1000/60%60 +" minutes "+ millisUntilFinished/1000%60+" seconds "+millisUntilFinished);
}
}
}[/code]