Activity退出动画无效的解决方案

许多手机的Activity的退出动画失效了,即使调用finish()后执行如下代码也没有用

overridePendingTransition(R.anim.activity_open_in_anim, R.anim.activity_open_out_anim);

无意中查看到了系统的动画配置,改为己用,解决了Activity退出动画无效的问题。
配置好后不需要调用overridePendingTransition

<style name="AppTheme.Common" parent="AppTheme.Base">
        <item name="android:windowAnimationStyle">@style/animation_translucent_translate</item>
</style>

<style name="animation_translucent_translate" parent="@android:style/Animation.Translucent">
        <item name="android:windowEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:windowExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:taskOpenEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:taskOpenExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:taskToFrontEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:taskToFrontExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:activityOpenEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:activityOpenExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:activityCloseEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:activityCloseExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:taskCloseEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:taskCloseExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:taskToBackEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:taskToBackExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:wallpaperOpenEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:wallpaperOpenExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:wallpaperCloseEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:wallpaperCloseExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:wallpaperIntraOpenEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:wallpaperIntraOpenExitAnimation">@anim/activity_open_out_anim</item>
        <item name="android:wallpaperIntraCloseEnterAnimation">@anim/activity_open_in_anim</item>
        <item name="android:wallpaperIntraCloseExitAnimation">@anim/activity_open_out_anim</item>
</style>
其实就是把Activity的动画全都替换了一遍,很暴力😄
    原文作者:扎心痛不痛
    原文地址: https://www.jianshu.com/p/661a8c02ee11
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞