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

一种方法是使用Handler类,它允许您Runnable在给定的毫秒数后调用 a 。这对于较短的时间跨度很有用,例如您的情况。

例如,使用postDelayed()方法:

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