在許多的Android App中,我們點擊進入時,都可以看到一個歡迎頁面,大概持續了幾秒,然后跳轉至主頁面。以下是我開發過程中總結出的一些方法和例子。
一、創建一個新的Activity
首先,新建了一個新的項目之后,這個項目只自帶了一個MainActivity,然后使用右鍵點擊MainActivity往上的java文件夾,然后點擊New,再點擊Activity,選擇Empty Activity,就可以新建出一個新的Activity,然后使新建的Activity繼承AppCompatActivity類,這里命名為Welcome。
二、在新的Activity的布局文件中放入圖片
在res-->layout文件夾中點開新建的Activity的布局文件,可以加入以下代碼:
<ImageView
android:layout_width="match_parent" android:layout_height="match_parent" android:src="@mipmap/ic_launcher"/>
其中,android:src中放入的是圖片的名稱。
三、設置布局的啟動順序
首先,打開項目的Manifest.xml文件,然后調整代碼:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.dell.myapplication">
<application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".Welcome"> <!--要顯示的歡迎頁面的Activity的名字--> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".testMainActivity"></activity> <!--MainActivity名--> </application> </manifest>
四、在歡迎頁面的Activity中設置界面
//設置全屏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
//隱藏頂部標題欄
getSupportActionBar().hide();
通過以上兩條代碼可以實現歡迎頁面的全屏和隱藏它的標題欄,使得頁面更加美觀。
到這里,項目的布局已經完成,接下來開始對顯示3秒歡迎頁面再跳轉至首頁進行實現。
五、使用Handler類實現顯示3秒進行頁面跳轉
Handler 主要用於異步消息的處理。當發出一個消息之后,就會先進入消息隊列,發送消息的函數會立刻返回,而另外一部分則將消息取出,然后進行處理。而這里,主要是用到Handler中的sendEmptyMessageDelayed方法。
首先,重寫Handler類中handleMessage()方法。
private Handler handler=new Handler(){ @Override public void handleMessage(Message msg){
//實現頁面的跳轉 Intent intent=new Intent(Welcome.this,testMainActivity.class); startActivity(intent); finish(); super.handleMessage(msg); } };
然后,在Activity中的onCreate()中調用sendEmptyMessageDelayed方法
//設置延時時間
handler.sendEmptyMessageDelayed(0,3000);
這樣,一個簡單的App的歡迎頁面就完成了。