如何为倒数计时器增加时间?

Ato*_*Tim 5 android timer countdowntimer onclicklistener

我知道有这样的帖子,但它没有清楚地回答这个问题.我有一个小游戏,你点击一个头,它移动到一个随机位置,你获得+1得分.同时有一个计时器从60000(60秒)倒计时并显示在下面.如何在敲击头部时如何制作它,它会为计时器增加一秒钟?

new CountDownTimer(timer, 1) {
    public void onTick(long millisUntilFinished) {
        textTimer.setText("Timer " + millisUntilFinished/1000);
    }
    public void onFinish() {
        Intent intent = new Intent(MainActivity.this, Gameover.class);
        startActivity(intent);
    }
}.start();
Run Code Online (Sandbox Code Playgroud)

在onClickListner事件中我有:

timer=timer+1000;
Run Code Online (Sandbox Code Playgroud)

它目前无效,因为点击上没有添加时间.

任何帮助,将不胜感激 :)

G_J*_*G_J 10

您无法更改计划计时器的时间.实现您要做的事情的唯一方法是取消计时器并设置一个新计时器.

public class CountdownActivity extends Activity implements OnTouchListener{
    CountDownTimer mCountDownTimer;
    long countdownPeriod;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_countdown);
       countdownPeriod = 30000;
       createCountDownTimer();
    }

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        if (mCountDownTimer != null)
                mCountDownTimer.cancel();
        createCountDownTimer();

        return true;
    }

    private void createCountDownTimer() {
        mCountDownTimer = new CountDownTimer(countdownPeriod + 1000, 1) {

            @Override
            public void onTick(long millisUntilFinished) {
                    textTimer.setText("Timer " + millisUntilFinished / 1000);
                countdownPeriod=millisUntilFinished;
            }

            @Override
            public void onFinish() {
                Intent intent = new Intent(MainActivity.this, Gameover.class);
                startActivity(intent);
            }
        };
    }
}
Run Code Online (Sandbox Code Playgroud)