1. 程式人生 > >Activity頁面跳轉時的過度效果

Activity頁面跳轉時的過度效果

 

廢話不多說,直接上乾貨!

 

 

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一下工程再試試或者網上搜一下,很多解決辦法