首先要在項目的res下創建一個anim包,然後再在這個包下創建你的進出動畫風格Animation Resource File,File name 是給它起個名字Root element 後面填 translate ,上代碼:
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="100%p"
android:toYDelta="0%p"
android:duration="300">
<!--上下出只看Y軸與之對應左右只看X軸-->
<!--fromYDelta動畫開始前的y軸座標-->
<!--toYDelta動畫結束後Y軸的座標-->
<!--duration爲動畫持續的時長-->
</translate>
上面的代碼就是Activity從屏幕的底下進入的
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="0%p"
android:toYDelta="100%p"
android:duration="300">
</translate>
上面的代碼是從屏幕的底下退出的
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromYDelta="-100%"
android:toYDelta="0%"
android:duration="300">
</translate>
上面的代碼則是從屏幕的頂部進入到屏幕的
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="-100%p"
android:toXDelta="0%p"
android:duration="300">
</translate>
上面的代碼則是從屏幕的左邊進入
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="200%p"
android:toXDelta="100%p"
android:duration="300">
</translate>
上面的代碼是從屏幕的右邊進入
從上面的代碼可以看出來同一個方向的進出只是交換了from和to的值
下面來說說把進和出做成一個頁面的進出風格
在項目工程下的res下的values下的Styles.xml裏面寫下面的代碼,再到需要跳轉頁面的地方引用這個風格就可以了
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="showDir" parent="android:Animation"> <!--風格名字 動畫類型的風格-->
<item name="android:windowEnterAnimation">@anim/popup_top_in</item> <!--窗口進入的動畫(@anim後面的是之前已經設置好的)-->
<item name="android:windowExitAnimation">@anim/popup_bottom_out</item> <!--窗口退出的動畫-->
</style>
</resources>