检查游戏中的计时器时间

时间:2015-09-29 15:17:02

标签: android timer

在我的游戏中,我给5秒钟回答每个问题。如果用户选择了正确答案,那么我向他/她显示下一个问题。如果用户无法回答问题,则将级别设置为第一个问题(每个问题都是一个级别)。

如何在我的代码中加入计时器?

2 个答案:

答案 0 :(得分:0)

Timer timer;
TimerTask timertask;
timer = new Timer();
timertask = new TimerTask() {
    @Override
    public void run() {
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                // add your code here that will run after 5 seconds.        
            }
        });
    }
};
timer.schedule(timertask, 5000);

使用计时器任务来安排执行。更多信息请点击Timer TaskTimer

答案 1 :(得分:0)

来自Android developper

CountDownTimer myCountDown = new CountDownTimer(30000, 1000) {

 public void onTick(long millisUntilFinished) {
     mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
 }

 public void onFinish() {
     mTextField.setText("done!");
 }
}.start();

您可以使用这些回调来处理滴答和计时器的结束。

第一个参数确定计时器的持续时间。

CountDownTimer的第二个参数确定一个刻度的持续时间直到结束。

修改

如果您需要在5秒钟结束前停止计时器,您可以在启动倒计时之前存储当前时间:

final long timeBeforeLaunchCountDown = System.currentTimeMillis();

因此,当发生点击(用户回答您的问题)时,您可以将新的当前时间与之前的时间进行比较并停止countDown:

if((System.currentTimeMillis() - timeBeforeLaunchCountDown) > 5000){
    myCountDown.cancel();
}