Pessoal, possuo uma classe cronometro com um metodo cronometrar.
public void cronometrar(){
tm.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
contador++;
seg = contador % 60;
min = contador / 60;
hora = min / 60;
min %= 60;
tempo=(String.format("%02d:%02d:%02d", hora,min,seg));
}
}, 1000, 1000);
}
Em minha classe controladora eu instancio o cronometro e rodo o cronometrar e salvo no banco a variavel tempo.
Minha dificuldade esta ocorrendo quando tempo recuperar o tempo que esta armazenado no banco e volta-lo ao cronometro, para iniciar o cronometro a partir do tempo coletado. Estou tentando retornar os dados para o cronometro da seguinte forma abaixo, porém sem sucesso ainda.
public void recuperarDados(Cronometro cronometro){
String array[] = new String[3];
array = dao.readTempo(cronometro).split(":");
int seg = Integer.parseInt(array[2]);
int min = Integer.parseInt(array[1]);
int hora = Integer.parseInt(array[0]);
cronometro.seg = seg ;
cronometro.min = min;
cronometro.hora = hora;
}
Da seguinte forma que esta, esta recuperando o tempo até 1 minuto.
Por exemplo, se o tempo salvo for abaixo de 00:00:59, recupera o tempo, se passar de 1 min não esta recuperando o valor correto.