本篇是將cookiesp大大的文章內碼部份加以描述,透過Android中的『AndroidManifest.xml』檔來設定歡迎畫面,並在歡迎畫面的『Activity.java』檔中經過延遲幾秒後將畫面切換至主畫面。
參考資料:cookiesp痞客邦
首先,下列是尚未修改過的『AndroidManifest.xml』檔的內容,程式碼中第11行便是我們主要入口的『MainActivity.java』檔,也就是說App一進入後會從這支java檔開始開始運行,再來我們就要將裡改成我們的『WelcomeActivity.java』,並將原本的『MainActivity.java』修改至下面的位置。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="terence.welcomeactivity" >
<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" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
下面的『AndroidManifest.xml』檔是修改過後,將入口的java檔改成我們製作的『WelcomeActivity.java』檔,並將原本的『MainActivity.java』檔新增至下面第20行~23行。這邊要注意的是我們新增的程式碼需要包在『<application></application>』之中。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="terence.welcomeactivity" >
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".WelcomeActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:screenOrientation="portrait" >
</activity>
</application>
</manifest>
再來就是我們所寫的『WelcomeActivity.java』檔如何等待數秒鐘後將整個Activity交還給『MainActivity.java』檔
package terence.welcomeactivity;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
public class WelcomeActivity extends Activity{
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.welcome_layout);
mHandler.sendEmptyMessageDelayed(GOTO_MAIN_ACTIVITY, 2000); //2秒跳轉
}
private static final int GOTO_MAIN_ACTIVITY = 0;
private Handler mHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
switch (msg.what) {
case GOTO_MAIN_ACTIVITY:
Intent intent = new Intent();
//將原本Activity的換成MainActivity
intent.setClass(WelcomeActivity.this, MainActivity.class);
startActivity(intent);
finish();
break;
default:
break;
}
}
};
}
下面是執行畫面,由於在Ubuntu系統下作業,改天開windows時再來錄製動態圖。
PS. 圖片是從google上圖片搜尋來的,若有侵權請告知,
經過2秒後,自動切換
文章標籤
全站熱搜

感謝您提供寶貴經驗