取消Activity跳转与返回默认动画

1.在styles文件添加如下内容

<style name="noAnimation">

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

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

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

    <item name="android:activityCloseExitAnimation">@null</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>
</style>

2.添加无跳转动画的主题

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

<style name="AppThemeNoAnimation" parent="AppTheme">
    <item name="android:windowAnimationStyle">@style/noAnimation</item>
</style>

3.在AndroidManifest文件中使用该主题

<activity
        android:name=".xxx.xxActivity"
        android:theme="@style/AppThemeNoAnimation" />

4.在跳转后的Activity中设置

@Override
protected void onPause() {
    overridePendingTransition(0,0);
    super.onPause();
}

最后一步必须实现,否则会导致跳转无动画,返回有动画

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容