android应用一般在启动的时候,都会预先加载配置项,耗费相当一部分时间,这时候为提升用户体验,就需要加入一个启动页面,让耗时操作在副线程中进行。
启动页的实现方式有很多种,选择最简单的一种来讲述:
设置一个LogoActivity页面作为启动页,在启动页完成延时操作后,跳转MainActivity主页面。
Demo地址:http://download.csdn.net/detail/ericfantastic/9237993
代码如下:
LogoActivity.java
package com.eric.startactivity;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
/*
*@author Eric
*@2015-11-3下午5:29:08
*/
public class LogoActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.logo);
Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case 0:
Intent intent = new Intent(LogoActivity.this,MainActivity.class);
startActivity(intent);
finish();
break;
}
}
};
Message msg = new Message();
msg.what = 0;
handler.sendMessageDelayed(msg, 2000);
}
}
manifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.eric.startactivity"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="14" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
</activity>
<activity
android:name=".LogoActivity"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>