2

所以我在我的android程序中使用一个线程来等待一秒钟或更长时间,但有时它会正确,有时它根本不等待,那么可能有另一种方法来等待几秒钟吗?

Thread logotimer = new Thread(){
    public void run(){
        try{
            sleep(1500);
            Intent leveloverview = new Intent("com.technopolisapp.FROGLEVEL");
            startActivity(leveloverview);
        }
        catch(InterruptedException e){
            e.printStackTrace();
        }
        finally{
            finish();
        }
    }
};

logotimer.start();
4

2 回答 2

7

相反,您可以使用 Handler 的线程睡眠概念...

new Handler().postDelayed(new Runnable(){
    public void run() {
        Intent leveloverview = new Intent("com.technopolisapp.FROGLEVEL");
        startActivity(leveloverview);
    }
}, 5000);

此代码可能对您有帮助...

于 2012-05-03T10:06:15.937 回答
4

您应该看一下 Timer 类,它会创建一个新线程,该线程将在经过特定时间后运行您指定的任何 TimerTask(又名方法)。您还可以安排计时器以特定间隔重复。

这是 Timer 类:http: //developer.android.com/reference/java/util/Timer.html

这是 Timer 的基本实现:http ://steve.odyfamily.com/?p=12

于 2012-05-03T09:47:30.567 回答