1

私は Android 2.2 でゲームを構築していますが、プレイ中に画面にタイマーを表示し、ゲームオーバー時にリーダーボードに時間を保存するのに苦労しています。

ゲーム ループがあり、SurfaceView を拡張してグラフィックを表示しました。

私のゲームloopはミリ秒ごとに正確に実行されるとは思わないので、時間を把握するのが難しいと感じています.

私はtime、ミリ秒を格納するという変数を格納し、次のgetFormattedTime()ように時間を取得するメソッドを呼び出す必要があります。Minutes:Seconds:Milliseconds

これを行う最良の方法は何ですか?

4

4 に答える 4

3

を呼び出すと、1970 年 1 月 1 日からの現在の時刻をミリ秒単位で取得できますSystem.currentTimeMillis()。次に、保存された値と新しい currenTimeMillis の差をとって、経過したミリ秒数を判断できます。

于 2013-03-29T11:32:59.447 に答える
0

希望どおりにならない場合は上記を試してください。これを試すことができますが、丸められます

Calendar c = Calendar.getInstance(); 
int seconds = c.get(Calendar.SECOND);
int min= c.get(Calendar.MINUTE);
String time=min+":"+seconds
于 2013-03-29T11:38:02.193 に答える
0

Timerandを作成し、TimerTaskこれらを計時用の別のループとして使用することで、これを自分で解決しました。とにかく助けてくれてありがとう。

于 2013-03-29T14:14:57.587 に答える