覆盖android中的挂起转换

Sha*_*ini 4 android

我有两个活动..活动A和活动B.

当我从活动A开始活动B.我希望活动A对其位置和动画是静态的,仅显示活动B.我如何使用overridingPendingTransition实现此目的?

单击按钮时,将从ActivityA调用以下代码,如下所示:

活动A:

public void onClick(View v) {
        super.onClick(v);
         if (v.getId() == R.id.button) {
            Intent intent = new Intent();
            intent.setClass(getApplicationContext(), MyProfileActivity.class);
            startActivity(intent);
            overridePendingTransition(R.anim.slide_in_up, R.anim.slide_out_up);
        }
Run Code Online (Sandbox Code Playgroud)

活动A也与活动B一起滑动.如何停止活动A的动画并单独启用活动B的动画?

slide_out_up xml如下:

<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false" >

    <translate
        android:duration="400"
        android:fromYDelta="0%"
        android:toYDelta="-100%" />

    <alpha
        android:duration="400"
        android:fromAlpha="1"
        android:toAlpha="0" />

</set>
Run Code Online (Sandbox Code Playgroud)

slide_in_up:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false" >

    <translate
        android:duration="400"
        android:fromYDelta="100%"
        android:toYDelta="0%" />

    <alpha
        android:duration="400"
        android:fromAlpha="0"
        android:toAlpha="1" />

</set>
Run Code Online (Sandbox Code Playgroud)

Ego*_*gor 7

你可以采用的最简单方法是为第二个参数传递0,而不是R.anim.slide_out_up.但是,这通常会导致活动A显示为活动B后面的黑屏,因此作为一种解决方法,您可以提供任何无效的动画 - 例如从0%转换为0%.