android啟動介面和引導介面的動畫
阿新 • • 發佈:2019-01-25
有很多應用開啟應用時都會有2到3秒的啟動介面的動畫,當一次安裝應用時還要具備有引導的功能的動畫,於是我也就寫了一個關於啟動動畫和引導圖並帶有點的demo,先上圖
啟動畫
第一張引導圖
第二張引導圖
第三張引導圖
就先展示這幾張吧,根據這幾張就可以看出要實現的功能是什麼了,下面上程式碼
package com.liuyongxiang.welcome;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.text.TextUtils;
public class SplashAty extends Activity {
boolean First = false;
private static final int GO_HOME = 1000 ;
private static final int GO_GUIDE = 1001;
// 延遲3秒
private static final long SPLASH_DELAY_MILLIS = 3000;
/**
* Handler:跳轉到不同介面
*/
@SuppressLint("HandlerLeak")
private Handler mHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case GO_HOME:
goHome();
break;
case GO_GUIDE:
goGuide();
break;
}
super.handleMessage(msg);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.entrance);
init();
}
private void init() {
// 取得相應的值,如果沒有該值,說明還未寫入,用true作為預設值
// 判斷程式第幾次執行,如果是第一次執行則跳轉到引導介面,否則跳轉到主介面
SharedPreferences share = getSharedPreferences("First", MODE_PRIVATE);
String s = share.getString("FirstEntrance", null);
if (First || !TextUtils.isEmpty(s)) {
// 使用Handler的postDelayed方法,2秒後執行跳轉到主activity
mHandler.sendEmptyMessageDelayed(GO_HOME, SPLASH_DELAY_MILLIS);
} else {
mHandler.sendEmptyMessageDelayed(GO_GUIDE, SPLASH_DELAY_MILLIS);
}
}
private void goHome() {
Intent intent = new Intent(SplashAty.this, MainActivity.class);
SplashAty.this.startActivity(intent);
SplashAty.this.finish();
}
private void goGuide() {
Intent intent = new Intent(SplashAty.this, WelcomeAty.class);
SplashAty.this.startActivity(intent);
SharedPreferences sharedPreference = getSharedPreferences("First",
MODE_PRIVATE);
Editor editor = sharedPreference.edit();
editor.putString("FirstEntrance", "FirstEtrance");
editor.commit();
SplashAty.this.finish();
}
}
Android交流群 470707794
免費下載demo地址址