0

ここで問題があります。メニューとヘルプページのスコアのライブレベルを使用して完全に機能するゲームを作成しましたが、タイマーを正常に機能させることができません。最初はif()だと思っていましたが、実行しました。それは速くなるでしょう。

私はAndroidJava(Eclipse)を使用してゲームを作成しました。コードを投稿しますが、どのビットを見たいかわかりません。Javaの秒数はミリ秒なので、50000/1000 = 50秒ですが、方法がわかりません。それを行うために、私はいくつかの例のコードを調べましたが、それがどのように機能しているかわかりません。

タイマーは私が作ったラベルで、AVDに表示されます。atmは50000と表示され、何もしません。

私はそれをこのようにしてみました

パブリッククラスタイマーはCountDownTimer{を拡張します

        public timer(long timer, long Interval) {

            super(timer, Interval);
            // TODO Auto-generated constructor stub
        }

        @Override
        public void onFinish() {
            // TODO Auto-generated method stub
            //canvas.drawText("GAME OVER", 200, 700, paint);

        }

        @Override
        public void onTick(long millisUntilFinished) {
            // TODO Auto-generated method stub

            realtime = (int) millisUntilFinished;

        }

    }
4

1 に答える 1

2

ゲームが開始したら、システム時間を節約し、必要なテキストサイズと色で新しいペイントインスタンスを作成します。

    startTime = System.currentTimeMillis();
    text = new Paint();
    text.setColor(Color.RED);
    text.setTextSize(20);

onDrowメソッド内のキャンバス/画面にテキストを描画するには、次のようにします。

    timeNow = System.currentTimeMillis();
    long timeToGo = 50 - (timeNow - startTime) / 1000;
    if (timeToGo >= 0) {
        canvas.drawText(Long.toString(timeToGo), 10, 25, text);
    }

これにより、画面の左上に50からカウントダウンする赤いカウントダウンタイマーが配置されます。

于 2013-01-19T23:21:48.663 に答える