Activity頁面跳轉時的過度效果
阿新 • • 發佈:2018-11-29
廢話不多說,直接上乾貨!
1.準備過度動畫xml(in_from_right)
動畫描述:Activity進場動畫,從手機螢幕右邊不可見位置運動到手機螢幕中央,時間500毫秒,運動模式(加速)
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" android:interpolator="@android:anim/accelerate_interpolator"> <translate android:fromXDelta="100%p" android:toXDelta="0%p"/> </set>
2.準備過度動畫xml(out_to_left)
動畫描述:Activity離場動畫,從手機螢幕中央運動到手機螢幕左邊不可見位置,時間500毫秒,運動模式(加速)
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" android:interpolator="@android:anim/accelerate_interpolator"> <translate android:fromXDelta="0%p" android:toXDelta="-100%p"/> </set>
3.在需要它的地方新增語句
overridePendingTransition(R.anim.in_from_right, R.anim.out_to_left);
語句說明
1.引數1,接收的是int enterAnim,表示跳轉目標頁面的進入動畫
2.引數2,接收的是int exitAnim,表示當前頁面的離場動畫
3.此方法要在startActivity(),或者finish()之後呼叫
Ok,到此已經可以實現頁面跳轉過度效果了,但是有幾點需要強調一下
1.xml要放在res下的anim檔案下
2.此文展示的是平移動畫,如果想要更精彩的過度效果,就自己配置動畫XML,如淡入淡出,上下平移,左右交錯等
3.如果overridePendingTransition函式不起作用,請Rebuild一下工程再試試或者網上搜一下,很多解決辦法