Android:启动画面没有显示,为什么?

kas*_*rma 5 android splash-screen

我正在学习Android.从我到目前为止阅读的文档中我无法弄清楚如何使用show view来显示(在睡眠期间屏幕保持空白).看来我需要为主布局开始一个新的活动,但这看起来很浪费(飞溅应该永远消失,我想重用它的线程).

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class Ext3 extends Activity {

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.splash);

        Log.v("Ext3", "starting to sleep");

        try {
            Thread.sleep (5000);
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        Log.v("Ext3", "done sleeping");

        setContentView (R.layout.main);
    }

}
Run Code Online (Sandbox Code Playgroud)

Mat*_*ieu 7

我相信你的启动画面永远不会被显示,因为你永远不会给你的UI线程(你在那里)画一个机会,因为你只是在那里无所事事地睡觉.

而不是Thread.sleep,我建议您查看一个Timer或类似的东西来安排刷新和更改视图的内容; 另一种方法是启动AsyncTask,您可以在更改视图之前进行睡眠,就像现在一样.

不要睡觉或以任何其他方式阻止UI线程,这是不好的...(导致ANR)