-1

Androidでゲームを作成しています.60秒ほど実行してゲームオーバーを表示したいです。フルーツ忍者みたい。この場合、どのように時間を処理しますか?多くの使用の android.timer ですか、それともアラーム マネージャーですか?

4

2 に答える 2

2

CountDownTimer を使用できます。

private void initTimer() {      
    mWaitTime = 60 * 1000;
    mWaitTimer = new CountDownTimer(mWaitTime, mWaitTime) {

        public void onTick(long millisUntilFinished) {/* Do nothing */ }

        public void onFinish() {
            // stop your game...
        }
    }.start();
}

onPause メソッドでタイマーを必ずキャンセルしてください。

mWaitTimer.cancel();
于 2013-01-15T15:30:40.093 に答える
0

AsyncTask を使用し、スリープ メソッド ( doInBackgroundメソッド内) でスレッドを 1 秒間実行します。これを 60 回実行します。1 秒ごとに進行状況を更新できるため、スレッドが 60 回実行された後、onProgressUpdateメソッドが毎秒呼び出されます。 AsyncTask は onPostExecute に入り、そこでアプリケーションを終了したり、時間がなくなったときにやりたいことをしたりできます。

于 2013-01-15T16:30:56.010 に答える