Android 通过单击按钮向倒计时计时器添加5秒
嗨,我正在实施一个测验游戏,每个问题都有一个计时器。 倒计时计时器当前为10秒长,在onCreate方法中启动,并按预期倒计时 然而,我试图实现当用户点击一个按钮时,计时器会额外更新五秒钟。我尝试的任何东西似乎都不起作用。我不确定我是否需要创建一个新的计时器并更新文本视图 我当前的代码可以在下面看到。非常感谢您的帮助Android 通过单击按钮向倒计时计时器添加5秒,android,timer,countdowntimer,Android,Timer,Countdowntimer,嗨,我正在实施一个测验游戏,每个问题都有一个计时器。 倒计时计时器当前为10秒长,在onCreate方法中启动,并按预期倒计时 然而,我试图实现当用户点击一个按钮时,计时器会额外更新五秒钟。我尝试的任何东西似乎都不起作用。我不确定我是否需要创建一个新的计时器并更新文本视图 我当前的代码可以在下面看到。非常感谢您的帮助 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
...........
}
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
startTimer(10000);
}
private void startTimer(long remaningMillis){
new CountDownTimer(10000, 1000){
public void onTick(long millisUntilFinished) {
time.setText("Timer: " + millisUntilFinished / 1000);
}
public void onFinish() {
time.setText("Timer: 0");
alert("Oh, no! You are out of Time! You Lost a Life");
--mLives;
lives.setText(String.valueOf(mLives));
saveData();
}
}.start();
}
public void onTimeBoostButtonClicked(View arg0) {
Log.d(TAG, "Time Boost button clicked.");
if (mTimeBoosts == 0) alert("Oh, no! You are out of Time Boosts! Try buying some!");
else {
--mTimeBoosts;
TextView NumTimeBooststextView = (TextView) this.findViewById(R.id.NumTimeBooststextView);
NumTimeBooststextView.setText(String.valueOf(mTimeBoosts));
saveData();
//TODO Add 5 seconds to timer
}
}
根据这篇文章,你不能改变一个定时计时器的倒计时,你可以取消它并开始一个新的。请检查链接中已接受的答案。我怎么看不到这一点?我会接受这个答案,谢谢。