Я делаю проект курса, и для этого проекта мне нужно будет показать таймер обратного отсчета. Будет кнопка, которая увеличивает таймер на 5+ секунд. Например, если таймер установлен и запущен в 1:00, и если пользователь нажимает кнопку, таймер должен увеличиться +5, как 1:05.Как увеличить таймер обратного отсчета во время выполнения?
Мой код:
public class MainActivity extends Activity {
Button incrementTime, startTime;
public TextView timedisplay;
long millisInFuture = 1000;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
incrementTime = (Button) findViewById(R.id.button2);
startTime = (Button) findViewById(R.id.button3);
timedisplay = (TextView) findViewById(R.id.mycounter);
resetText();
incrementTime.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
millisInFuture += 1000;
resetText();
}
});
startTime.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
CountDownTimer wavetimer = new myTimer(millisInFuture + 3000, 1000).start();
//^add 3 seconds.
}
});}
protected void resetText() {
timedisplay.setText("Time Left: " + millisInFuture/1000);
}
public class myTimer extends CountDownTimer {
private long millisActual;
public myTimer(long millisInFuture, long countDownInterval) {
super(millisInFuture, countDownInterval);
millisActual = millisInFuture - 3000;
}
@Override
public void onTick(long millisUntilFinished) {
//v start showing the tick after 3 seconds.
if (millisUntilFinished <= millisActual) {
timedisplay.setText("Time Left: " + millisUntilFinished/1000);
}
}
@Override
public void onFinish() {
timedisplay.setText("Countdown Finished");
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
Моя проблема:
Это работает так же, как я хочу, но он увеличивает только после того, как таймер закончит работу. Я хочу, чтобы он увеличивался во время обратного отсчета!
** Помните: ** В этом примере я использую +1 приращение. – mrbrucewyn
Возможный дубликат этого сообщения: http://stackoverflow.com/questions/13478471/incrementing-the-countdowntimer-android –
Я пробовал это, но я не хочу, чтобы он дождался окончания предыдущего таймера. О Боже!! @ FrankN.Stein – mrbrucewyn