2

私は Android プロジェクトに取り組んでおり、プログラムがメッセージを表示するまで 5 秒間待ってから先に進む必要があります。私は周りを見回して、Thread sleep(mili); を試しました。しかし、うまくいかなかったので...コードを含めましたが、何か間違ったことをしているだけですか、それとも他に何ができますか?.

...
text.setText("You picked a goat");
lose++;
loser.setText("You have picked a goat " + lose + " time(s)");

Thread time = new Thread()
{
        @Override
        public void run(){
            try {
                synchronized(this){
                    wait(5000);
                }
            }
            catch(InterruptedException ex){}           
        }
    };

    time.start();

...

また、これを独自のメソッドに入れて呼び出してみました。負けは単なるカウンターであり、「テキスト」と「敗者」は単なるテキストビューです

4

1 に答える 1

5

これを行う 1 つの方法は、HandlerRunnableクラスを使用することです。これにより、指定されたミリ秒後に aを呼び出すことができます。これは、あなたの場合のように短い期間に役立ちます。

たとえば、postDelayed()メソッドを使用すると、次のようになります。

new Handler().postDelayed(new Runnable()
{
    @Override
    public void run()
    {
        //do your stuff here.
    }
}, 5000);
于 2012-11-26T18:25:37.433 に答える