Amigos bom dia, estou fazendo uma programa de quiz, e estipulei um tempo para o usuário responder as perguntas ex. 30 segundos, fiz a programação para inciar a contagem ao abrir o programa, mas quando o usuário da a resposta antes de finalizar o tempo, na outra activity a contagem fica errada, alguem pode me ajudar e me explicar o que está acontecendo???
segue a programação abaixo. Obrigado!
private TextView tempo;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_questao1);
tempo = (TextView) findViewById(R.id.tempo1);
int segundos = 30;
final CountDownTimer countDownTimer = new CountDownTimer(segundos * 1000, 1000) {
@Override
public void onTick(long millisUntilFinished) {
tempo.setText("00:" + (millisUntilFinished/1000));
}
@Override
public void onFinish() {
Intent it = new Intent(Questao1.this, Questao2.class);
startActivity(it);
}
}.start();
}
// metodo para conferir resposta
public void confirma(View v) {
RadioGroup rd_group = (RadioGroup) findViewById(R.id.perguntas);
switch (rd_group.getCheckedRadioButtonId()) {
case R.id.opcaoA:
errado = +1;
break;
case R.id.opcaoB:
certo = +1;
break;
case R.id.opcaoC:
errado = +1;
break;
case R.id.opcaoD:
errado = +1;
break;
}
if (certo != 0) {
Toast.makeText(this, "Certa Resposta", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Resposta Errada", Toast.LENGTH_SHORT).show();
}
Intent it = new Intent(Questao1.this, Questao2.class);
startActivity(it);
}