Android:活动动画不起作用

时间:2014-12-22 07:26:31

标签: android android-activity android-animation

我无法理解为什么当我在应用中的活动之间切换时,我的自定义动画不会覆盖系统动画。

styles.xml

<style name="AppBaseTheme" parent="android:Theme.Holo.Light"></style>

<style name="AppTheme" parent="AppBaseTheme">
    <item name="android:buttonStyle">@style/buttonStyle</item>
    <item name="android:actionBarStyle">@style/ActionBarStyle</item>
    <item name="android:editTextStyle">@style/editTextStyle</item>
    <item name="android:windowAnimationStyle">@style/ActivityAnimationStyle</item>
</style>

<!-- activities animation style start -->
<style name="ActivityAnimationStyle" parent="@android:style/Animation.Activity">
    <item name="android:activityOpenEnterAnimation">@anim/fadein</item>
    <item name="android:activityOpenExitAnimation">@anim/fadeout</item>
    <item name="android:activityCloseEnterAnimation">@anim/fadein</item>
    <item name="android:activityCloseExitAnimation">@anim/fadeout</item>
</style>
<!-- activities animation style end -->

fadein.xml:

<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="@android:integer/config_longAnimTime"
    android:fromAlpha="0.0"
    android:interpolator="@android:anim/anticipate_interpolator"
    android:toAlpha="1.0" />

fadeout.xml

<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="@android:integer/config_longAnimTime"
    android:fromAlpha="1.0"
    android:interpolator="@android:anim/anticipate_interpolator"
    android:toAlpha="0.0" />

清单:

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

随着这些全部设定,我希望看到渐弱的动画,但这根本不会发生。

仅供参考,我注意到,如果我使用android:windowEnterAnimationandroid:windowExitAnimation而是将android:duration的值增加到动画文件中的2000,那么我确实会看到非常慢的淡入淡出动画但我希望在所有四种情况下都有动画并且更快褪色。

我正在使用Kitkat 4.4.2。谢谢你的帮助

3 个答案:

答案 0 :(得分:3)

这通常发生在Android 4.4.2上。试试这个

http://blog.csdn.net/xuewater/article/details/36398803

答案 1 :(得分:-1)

据我记忆,如果您想使用主题中定义的trasition,您必须使用

更改活动

startActivity(intent, ActivityOptions.makeSceneTransitionAnimation(this).toBundle());

答案 2 :(得分:-1)

PHPJavascriptC#的社区不同,Android社区非常平静,没有解决方案没有解决方案,因为我只有解决方案才能完全禁用动画:

<item name="android:windowAnimationStyle">@null</item>