日常效果之Activity轉場效果(一)

Android中Activity頁面轉場,分爲5.0之前和5.0之後。當然5.0之前的轉場用法在5.0之後依然適用。本次我們先介紹下5.0之前的轉場效果,5.0之後的將在下次進行介紹。
其實5.0之前的轉場動畫是通過public void overridePendingTransition(int enterAnim, int exitAnim)這個方法來實現轉場效果的。其中第一個參數爲進入的動畫,第二個參數爲退出的動畫。動畫是放在res->anim目錄下,其實android自身也幫我們寫了很多動畫,我們可以通過android.R.anim.xxx進行調用。

我們列一段android.R.anim.fade_in的示例代碼:

<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
        android:interpolator="@interpolator/decelerate_quad"
        android:fromAlpha="0.0" android:toAlpha="1.0"
        android:duration="@android:integer/config_longAnimTime" />

其實我們分析這段代碼可以發現其實就是一個透明度漸變的動畫。
所謂無圖無真相,我們先展示一個我們實現的效果。
在這裏插入圖片描述
可以看到Activity的轉場效果爲左邊進入右邊離開,其實現效果爲在startActivity(intent);之後加入了overridePendingTransition(R.anim.slide_in_left,R.anim.slide_out_right);,這樣就實現了從左邊進入的效果。而右邊出的效果則需要在Activity finish的時候調用overridePendingTransition(R.anim.slide_in_left,R.anim.slide_out_right); 來實現。
其實我們需要哪些效果我們可以根據需求來寫我們自己的anim來使用即可。
我在Demo中也寫了例子,包括淡入淡出、左進右出、右進左出、中心縮放、上進下出、下進上出等例子。
以上就是對Android 5.0以下轉場效果的記錄。
國際管理,源碼地址:CDemo源碼,anim位於CLibrary->res->anim下

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章