android:如何实现splashscreen

时间:2013-12-20 02:41:58

标签: java android

当我们打开Android的facebook应用程序时,在显示应用程序的内容之前,我们会看到一个带有蓝色背景和“facebook”字样的页面。我希望在用户打开我的应用程序时添加一个页面,类似于facebook应用程序。如何实现呢?

2 个答案:

答案 0 :(得分:2)

它叫做splashscreen。这是你实现的方式:

public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    /* code for Splashscreen that appears for 3s when app start*/
    new Handler().postDelayed(new Runnable() {
        @Override
        public void run() {
            Intent i = new Intent(MainActivity.this, UserManual.class);
            startActivity(i);
            finish();
        }
    }, 3000);

  }

}

Splashscreen等待3秒钟然后下一个活动开始。

注意:我猜你是Android开发的初学者。所以只是为了信息,这不是实现的唯一方法。还有其他方法。快乐的编码.. :)

答案 1 :(得分:2)

要实现此目的,请创建“WelcomeActivity”并将其设为主要活动。

在AndroidManifest.xml中

       <activity
            android:name="your.package.name.WelcomeActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

然后在您的WelcomeActivity.java中,执行此操作

public class WelcomeActivity extends Activity {                         
    private static final int DELAY_BEFORE_GOING_TO_MAIN_ACTIVITY = 2000; //2 seconds
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        getWindow().requestFeature(Window.FEATURE_ACTION_BAR);

        // this will give you a full screen, with no action bar at the top
        getActionBar().hide();

        setContentView(R.layout.activity_welcome);                      

        final Handler handler = new Handler();
        handler.postDelayed(new Runnable() {
            @Override
            public void run() {
                Intent intent = new Intent(WelcomeActivity.this,MainActivity.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent);
                finish();
            }
            }, DELAY_BEFORE_GOING_TO_MAIN_ACTIVITY);                
        }
}

这将全屏显示WelcomeActivity.java活动,然后在2秒后转换到您的主活动。

您可以在activity_welcome.xml布局中添加背景,徽标,然后就可以了。