0

ゲームを作っているのですが、スコアが0で10ずつ増えると、スコアは0から10までのすべての数字で増加するようにスコアを表示したいと思います。新しいスコアに達した後は、次のようになります。少なくとも少しの間、停止します。

再び、スコアがさらに10増加した場合、スコアボードは10から20までのすべての数値で増加し、その後再び停止する必要があります。

ハンドラーを使用してみましたが、一時停止または停止することができませんでした。

このビデオの例は、私が達成しようとしていることを示しています。右上のスコアボードを見ると、スコアが絶えず増加していることがわかります。上記のリンクが機能しない場合のURLは次のとおりです:http ://www.youtube.com/watch?v = NdZ8YupmEmA&feature = fvwrel

これは、Runnableがスコアをインクリメントするためのコードです。

final Handler mHandler=new Handler();
    mRunnable=new Runnable() {

        public void run() {
            String s = null;
                   ++i;
                   s= new Integer(i).toString();    
                   tv.setText(s);
                   mHandler.postDelayed(mRunnable,1000);       

                }

        /*protected void onStop() {
            mHandler.removeCallbacks(mRunnable);
        }*/
    };

    mHandler.postDelayed(mRunnable,1000);

特に必要なのは、コードのカウントを停止する方法です。

4

1 に答える 1

0

2つのエンドポイント間のすべての数値を簡単に印刷できます。言う:

int counter = 0;
while(counter%10 != 0)
{
textView.setText(counter.toString());
counter++;
}

そして、再びループを続行します。今回は0ではなく11から開始します。

テンプルランの例のように、希望どおりに機能するかどうかはわかりません。非常に少量を追加したいのですsleep()が、昨日sleep()、Android開発ではメソッドを使用しないようにアドバイスされました。

編集:

Ok。このチュートリアルは非常に扱いやすいようです。Handler(おそらくご想像のとおり)を使用して、スコア表示メカニズムに同じロジックを適用できます。

于 2012-06-10T12:58:51.737 に答える