android的閃屏效果,就是咱們剛開始啓動應用的時候彈出的界面或者動畫,過2秒以後自動的跳轉到主界面。java
其實,實現這個效果很簡單,使用Handler對象的postDelayed方法就能夠實現。在這個方法裏傳遞一個Runnable對象和一個延遲的時間。該方法實現了一個延遲執行的效果,延遲的時間由第2個參數指定,單位是毫秒。第一個參數是Runnable對象,裏面包含了延遲後須要執行的操做android
代碼:app
1.寫好閃屏的佈局文件:splashscreen_layout.xml ,爲了界面好看一些,這裏要準備一張用於顯示閃屏界面的圖片,並命名爲aa,copy到drawable文件下。 ide
1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:id="@+id/mainactivity" 4 android:layout_width="match_parent" 5 android:layout_height="match_parent" 6 android:gravity="center" 7 android:orientation="vertical"> 8 9 <TextView 10 android:layout_width="wrap_content" 11 android:layout_height="wrap_content" 12 android:text="閃一下" 13 android:textSize="30sp" /> 14 15 <ImageView 16 android:layout_width="match_parent" 17 android:layout_height="match_parent" 18 android:src="@drawable/aa" /> 19 20 </LinearLayout>
2. SplashScreenActivity.java文件,用於顯示閃屏並跳轉到主IU
1 package com.example.administrator.testactivity; 2 3 import android.app.Activity; 4 import android.content.Intent; 5 import android.os.Bundle; 6 import android.os.Handler; 7 import android.support.v4.widget.SlidingPaneLayout; 8 9 10 /** 11 * Created by Administrator on 2015/11/2. 12 */ 13 public class SplashScreenActivity extends Activity { 14 @Override 15 protected void onCreate(Bundle savedInstanceState) { 16 super.onCreate(savedInstanceState); 17 setContentView(R.layout.splashscreen_layout); 18 new Handler().postDelayed(new Runnable() {//如下是核心代碼 19 @Override 20 public void run() { 21 //從啓動動畫ui跳轉到主ui 22 Intent intent = new Intent(SplashScreenActivity.this, MainActivity.class); 23 startActivity(intent); 24 // 結束當前啓動動畫的界面 25 SplashScreenActivity.this.finish(); 26 } 27 }, 3000); //,設置動畫的顯示時間,單位爲毫秒 28 } 29 }
3.主界面(UI)的佈局文件。佈局
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!,Welcome!This is UI layout." /> </RelativeLayout>
4.主界面的java文件了:MainActivity.javapost
1 public class MainActivity extends AppCompatActivity { 2 3 @Override 4 protected void onCreate(Bundle savedInstanceState) { 5 super.onCreate(savedInstanceState); 6 setContentView(R.layout.activity_main); 7 } 8 }
以上代碼基本能夠實現了閃屏的效果。固然了,閃屏的佈局還能夠只使用一張圖片,你們能夠本身試一試。動畫
若是在閃屏的過程當中實現動畫是否是更酷了呢?請看個人下一篇分享。ui