android – overridePendingTransition显示第二个活动太快了

我有2个活动,我想在两个活动之间创建一个动画转换,这样两个活动的观点就像第二个活动向上推动第一个活动一样滑动.在我的第一个活动中,我使用:
Intent iSecondActivity = new Intent(FirstActivity.this,SecondActivity.class);
FirstActivity.this.startActivity(iSecondActivity);
FirstActivity.this.overridePendingTransition(R.anim.slide,R.anim.slide2);

我的slide.xml看起来像:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator">
    <translate
        android:interpolator="@android:anim/decelerate_interpolator"
        android:fromYDelta="0"
        android:toYDelta="-100%p"
        android:duration="2000"
    />
</set>

而我的slide2.xml看起来像:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:interpolator="@android:anim/accelerate_interpolator">
    <translate
         android:interpolator="@android:anim/decelerate_interpolator"
         android:fromYDelta="100%p"
         android:toYDelta="0"
         android:duration="2000"
    />
</set>

然而,问题是当调用“startActivity”时,第二个活动的视图已经在转换刚刚开始滑动时呈现.我想看到第一个活动的视图向上滑动…但是我看到第二个活动的视图(呈现在第一个活动的视图)向上滑动.

第二个问题是我看到替换视图是第一个活动的视图.我想将替换视图作为向上推动的第二个活动的观点.

很难解释,所以请让我知道,如果我可以更详细地解释任何事情.对任何混乱感到歉意,并感谢您阅读.

附:我正在使用文字浏览…我猜这个渲染太快了?我也在使用摩托罗拉Razr,而不是应该重要.

解决方法

Nevermind,这是一个愚蠢的错误 – 我不明白“输入动画”对“退出动画”的意义.我需要更换xmls:
FirstActivity.this.overridePendingTransition(R.anim.slide,R.anim.slide2);

FirstActivity.this.overridePendingTransition(R.anim.slide2,R.anim.slide);

相关文章

ADB Remote ATV Android TV 的遥控器,基于 ADB Shell 命令 ...
使用Flutter自带的SearchDelegate组件实现搜索界面,通过魔改...
上篇文章讲解了怎么使用Kotlin的协程配合Retrofit发起网络请...
安卓开发——WebView+Recyclerview文章详情页,解决高度...
Android 如何解决dialog弹出时无法捕捉Activity的back事件 在...