Android 5.0 windowEnterTransition 不影响过渡

标签 android android-transitions

我希望我的启动器 Activity 在打开或从上一个 Activity 返回时从右向左滑入。当它切换到另一个 Activity 时,它目前从右向左滑动,但在打开或按下后退按钮时不会。

这是应用于我的启动器 Activity 的样式的相关 XML:

样式.xml

    <item name="android:windowContentTransitions">true</item>
    <item name="android:windowEnterTransition">@android:transition/slide_left</item>
    <item name="android:windowExitTransition">@android:transition/slide_left</item>
    <item name="android:windowReenterTransition">@android:transition/slide_right</item>
    <item name="android:windowReturnTransition">@android:transition/slide_left</item>

单击按钮时,我的 Activity 将移动到下一个 Activity 。这是我的 onClickListener:

Button register = (Button)findViewById(R.id.registerBtn);
        register.setOnClickListener(new Button.OnClickListener(){
            public void onClick(View v) {
                Intent i = new Intent(LoginActivity.this, RegisterActivity.class);
                startActivity(i, ActivityOptions.makeSceneTransitionAnimation(LoginActivity.this).toBundle());
            }
        });

我相信 ActivityOptions.makeSceneTransitionAnimation 方法可能与退出过渡起作用的原因有关,但我如何将其应用于进入过渡?

最佳答案

如果您的 Activity 是AppCompatActivity,试试这个:

Intent intent = new Intent(LoginActivity.this, RegisterActivity.class);
Bundle bundle = ActivityOptionsCompat.makeSceneTransitionAnimation(LoginActivity.this).toBundle();
ActivityCompat.startActivity(RegisterActivity.this, intent, bundle);

关于Android 5.0 windowEnterTransition 不影响过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28002202/

相关文章:

android - 与整个项目共享嵌入式字体的最佳实践

java - Android Rest Web 服务调用,连接拒绝问题

返回 2 个屏幕时,Android Activity 返回过渡刹车

android - 尝试构建共享元素 Lollipop 过渡时过渡名称为空

android - 缩放 Canvas 以在 Android 中调整 SVG 的大小

java - 我的位置应用程序未访问 getLastKnownLocation

android - 如何在android sqlite中设置外键

java - Android 上的两个级别的 Activity 。无缝过渡

android - 将 androidx 生命周期从 2.2.0-alpha03 更新到 alpha04 后出现 "androidx.transition.TransitionSet cannot be cast to android.transition.Transition"

ImageView 尺度上的 Android 共享元素转换是错误的