【发布时间】:2016-01-11 20:15:58
【问题描述】:
我正在构建一个 Android 游戏,我需要显示倒计时。为了让用户不作弊,如果用户更改应用程序,我无法停止此倒计时,因为他们将有更多时间思考答案。
我需要做的是让 CountDownTimer 继续工作,即使我的应用当前不在前面(已调用 onPause)。
我想知道我拥有的代码(似乎可以工作)是否可以解决问题,或者在某些情况下它是否会失败。
现在倒计时继续,当它变为 0 时,结果屏幕显示在当前应用程序上(当然,这不是我想要的)。 我认为对于第二个问题,解决方案是存储一个变量或其他东西,并在启动结果屏幕之前检查它。
所以,总而言之,我想要的是即使用户更改当前应用程序也能继续倒计时,但是当倒计时到 0 时,在用户返回游戏之前不要显示结果屏幕。
我的代码如下:
new CountDownTimer(10000, 1000) {
public void onTick(long millisUntilFinished) {
tvTime.setText(String.valueOf(millisUntilFinished / 1000));
}
public void onFinish() {
startActivity(new Intent(GameActivity.this, ResultActivity.class));
}
}.start();
谢谢。
【问题讨论】:
标签: java android android-service countdowntimer