0

我在我的 android 问答游戏中使用 countdoen。有时它工作得很好,有时它会给力关闭。我正在为 8 个问题初始化 8 个计时器并取消它。所有计时器在 onTick 方法中使用一个常见的文本视图。

switch (question_display_number) {
    case 1:
        startTime = 30 * 1000;
        q1 = new MyCountDownTimer(startTime, interval);
        q1.start();
        break;
    case 2:
        startTime = 30 * 1000;
        q2 = new MyCountDownTimer(startTime, interval);
        q2.start();
        break;
    case 3:
        startTime = 30 * 1000;
        q3 = new MyCountDownTimer(startTime, interval);
        q3.start();
        break;
    case 4:
        startTime = 30 * 1000;
        q4 = new MyCountDownTimer(startTime, interval);
        q4.start();
        break;
    case 5:
        startTime = 60 * 1000;
        q5 = new MyCountDownTimer(startTime, interval);
        q5.start();
        break;
    case 6:
        startTime = 60 * 1000;
        q6 = new MyCountDownTimer(startTime, interval);
        q6.start();
        break;
    case 7:
        startTime = 60 * 1000;
        q7 = new MyCountDownTimer(startTime, interval);
        q7.start();
        break;
    case 8:
        startTime = 60 * 1000;
        q8 = new MyCountDownTimer(startTime, interval);
        q8.start();
        break; 

这是计时器。

public class MyCountDownTimer extends CountDownTimer {
    public MyCountDownTimer(long startTime, long interval) {
        super(startTime, interval);
    }

    @Override
    public void onTick(long millisUntilFinished) {
        timer.setText(""+millisUntilFinished / 1000);
      // timer is a TextView.
    }

    @Override
    public void onFinish() {
        // alert dialog with two buttons.           
    }

请帮助我,突然强制关闭应该是什么原因?我知道这是因为倒数计时器,因为我以前的版本游戏运行良好,无需强制关闭。

4

1 回答 1

0

timer.setText(""+millisUntilFinished / 1000);

你在哪里初始化计时器?此时它将为空并抛出一个NullPointerException

于 2013-09-13T01:41:37.433 回答