0

我有两个活动,我希望用户认为他们是背靠背的,就像一些老电影中的经典秘密旋转墙:当用户切换到第二个活动时,第一个活动从右到左旋转,显示第二个活动的背面。

我真的不擅长动画,这是我尝试的第一个..我在 res/anim 中制作了这个 xml 文件:

旋转1:

<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
        android:toDegrees="-90"
        android:toYScale="0.0"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="1000"/>

旋转 2:

<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="-90"
        android:toDegrees="-180"
        android:toYScale="0.0"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="1000"/>

在代码中,简单地说:

startActivity(matchIntent);
overridePendingTransition( R.anim.first_rotate, R.anim.second_rotate );

但我只是获得了一个快速闪光作为过渡......我也将持续时间设置为 1000!

编辑:我在这里找到了答案:如何在 android 中的两个活动之间应用 3d 过渡? 现在剩下的唯一问题是在动画期间背景默认为白色..有没有办法将其设置为另一种颜色,例如红色?

4

1 回答 1

0

您看到的白色背景可能是: 1. 第一个 Activity 的背景。尝试为活动的父布局更改/添加背景。2. 它可能是第一个活动下方的内容 - 即打开第一个活动的另一个活动。

希望这可以帮助。

于 2012-09-25T16:26:55.603 回答