Я делаю повторяющийся таймер обратного отсчета. Мне нужно, чтобы таймер обратного отсчета перезапускался с другим временем. Я использую глобальную переменную в конструкторе таймера обратного отсчета. Но проблема в том, что он всегда перезапускается от начала первого заданного интервала.Перезапустить таймер countodown с другим таймером android
public void chance(final int tota, final int cur, final int exercise,int pass,int flag)
{
Log.i("inside value","reached");
a = new CountDownTimer((tempmilliseconds) * 1000 + 100, 1000) {
@Override
public void onTick(long millisUntilFinished) {
tempmilliseconds = (int) millisUntilFinished/1000;
Log.i("inside value",Integer.toString(tempmilliseconds));
updatetimer(millisUntilFinished);
}
@Override
public void onFinish() {
mtext.setText("0:00");
cancel();
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
currentcompleted++;
if (on == 0) {
on = 1;
int exercis = MainActivity.restmint * 60 + MainActivity.restsec;
tempmilliseconds=exercis;
chance(tota, curr + 1, exercis, 0, 0);
} else {
on = 0;
int exercis = MainActivity.exermint * 60 + MainActivity.exersec;
tempmilliseconds=exercis;
chance(tota, curr + 1, exercis, 0, 0);
}
}
}, 1000);
}
};
a.start();
}
Ниже приведен код для резюме операций:
public void resume(View view) {
Button mytext=(Button) findViewById(R.id.resume);
if(mytext.getText().toString()=="Pause") {
mytext.setText("Play");
a.cancel();
}
else {
mytext.setText("Pause");
Log.i("Value of temp",Integer.toString(tempmilliseconds));
a.start();
}
}
Таймер останавливается, но при запуске в функции возобновления перезагружается с исходным временем и не указано tempmilliseconds.Note tempmilliseconds обновляется каждую секунду , Любая помощь/фрагменты/предложения оценены. Спасибо!