替自己的应用程序设置切换动画
要想为自己的应用界面切换是值统一的动画效果,在style下设置一个统一的风格,然后再mainfest.xml文件中的aplication 或activity标签中引用改风格即可
如下
1.style文件设置动画效果
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppTheme" parent="@android:style/Theme.Holo" >
<item name="android:windowTitleBackgroundStyle">@drawable/title_bar</item>
</style>
<style name="iphonestyle" parent="@android:style/Theme.Black.NoTitleBar">
<item name="android:windowAnimationStyle">@style/MyAnimation</item>
</style>
<style name="MyAnimation">
<item name="android:activityOpenEnterAnimation">@anim/slide_in_right</item>
<item name="android:activityOpenExitAnimation">@anim/slide_out_left</item>
<item name="android:activityCloseEnterAnimation">@anim/slide_in_left</item>
<item name="android:activityCloseExitAnimation">@anim/slide_out_right</item>
<item name="android:taskOpenEnterAnimation">@null</item>
<item name="android:taskOpenExitAnimation">@null</item>
<item name="android:taskCloseEnterAnimation">@null</item>
<item name="android:taskCloseExitAnimation">@null</item>
<item name="android:taskToFrontEnterAnimation">@null</item>
<item name="android:taskToFrontExitAnimation">@null</item>
<item name="android:taskToBackEnterAnimation">@null</item>
<item name="android:taskToBackExitAnimation">@null</item>
<item name="android:wallpaperOpenEnterAnimation">@null</item>
<item name="android:wallpaperOpenExitAnimation">@null</item>
<item name="android:wallpaperCloseEnterAnimation">@null</item>
<item name="android:wallpaperCloseExitAnimation">@null</item>
<item name="android:wallpaperIntraOpenEnterAnimation">@null</item>
<item name="android:wallpaperIntraOpenExitAnimation">@null</item>
<item name="android:wallpaperIntraCloseEnterAnimation">@null</item>
<item name="android:wallpaperIntraCloseExitAnimation">@null</item>
<item name="android:fragmentOpenEnterAnimation">@anim/slide_in_left</item>
<item name="android:fragmentOpenExitAnimation">@anim/slide_in_right</item>
<item name="android:fragmentCloseEnterAnimation">@anim/slide_out_left</item>
<item name="android:fragmentCloseExitAnimation">@anim/slide_out_right</item>
<item name="android:fragmentFadeEnterAnimation">@null</item>
<item name="android:fragmentFadeExitAnimation">@null</item>
</style>
</resources>
解释一下,设两个Activity A,B,
从A界面启动进入B
android:activityOpenEnterAnimation 启动B界面时,B界面进入动画
android:activityOpenExitAnimation 启动B界面时A界面的退出动画
B按Back键返回A界面
android:activityCloseEnterAnimation A界面恢复动画
android:activityCloseExitAnimation B界面退出动画
从3.0之后加入的fragment与此类似
本文为附几个动画文件
界面从左向右滑入
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:duration="300" android:fromXDelta="-119.99817%" android:toXDelta="0.0" />
</set>
界面从右向左滑入
<set
xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:duration="300" android:fromXDelta="119.99817%" android:toXDelta="0.0" />
</set>
左方滑出
<set
xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:duration="300" android:fromXDelta="0.0" android:toXDelta="-119.99817%" />
</set>
右方滑出
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:duration="300" android:fromXDelta="0.0" android:toXDelta="119.99817%" />
</set>