启动界面Splash Screen在应用程序是很常用的,往往在启动界面中显示产品Logo、公司Logo或者开发者信息,如果应用程序启动时间比较长,那么启动界面就是一个很好的东西,可以让用户耐心等待这段枯燥的时间。
Android 应用程序创建一个启动界面Splash Screen非常简单。
布局文件: (splash.xml)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/image_splash" --@+id 自定义ID
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY"
android:src="@drawable/splash" /> --资源图片splash.jpg
</LinearLayout>
Activity文件:(SplashActivity.java)
package lcl.android.activity;
import java.util.List;
import lcl.android.R;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.support.v4.app.FragmentActivity;
import android.util.Log;
import android.view.KeyEvent;
import android.view.WindowManager;
public class SplashActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle arg0) {
super.onCreate(arg0);
setContentView(R.layout.splash);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
new Handler().postDelayed(r, 2000);// 2秒后关闭,并跳转到主页面
}
Runnable r = new Runnable() {
@Override
public void run() {
Intent intent = new Intent(SplashActivity.this, MainActivity.class); --启动住界面MainActivity
startActivity(intent);
finish();
}
};
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
return true;
}
}
AndroidManifest.xml
<activity
android:name="lcl.android.activity.SplashActivity"
android:theme="@android:style/Theme.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
运行效果:
原文:http://www.cnblogs.com/luomingui/p/3859495.html