gpt4 book ai didi

android - ViewAnimator 使用旋转动画在 View 之间转换

转载 作者:行者123 更新时间:2023-11-29 15:30:17 24 4
gpt4 key购买 nike

我想使用 ViewAnimator 从一个 View 过渡到另一个 View (在我的测试应用中, View 是 TextView)。下面列出了我的两个动画。我看到的行为是两种动画都在我触发动画制作器时立即开始,而不是让 InAnimation 运行,一旦完成就让 OutAnimation 运行。我看到的看起来像一个风车——向外旋转的 View 垂直于向内旋转的 View 。我想看到向外旋转的 View 从它的正常水平位置(0 度)到垂直(90 度);然后我想看到 View 从垂直(-90 度)旋转到水平(0 度)。

@anim/rotate_out.xml

<?xml version="1.0" encoding="UTF-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0" android:toDegrees="90" android:pivotX="50%"
android:pivotY="50%" android:repeatCount="0" android:duration="500"
android:interpolator="@android:anim/linear_interpolator">
</rotate>

@anim/rotate_in.xml

<?xml version="1.0" encoding="UTF-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="-90" android:toDegrees="0" android:pivotX="50%"
android:pivotY="50%" android:repeatCount="0" android:duration="500"
android:interpolator="@android:anim/linear_interpolator">
</rotate>

并且在主 Activity onCreate...

va = (ViewAnimator) findViewById(R.id.ViewFlipper01);
va.setInAnimation(AnimationUtils.loadAnimation(this, R.anim.rotate_in));
va.setOutAnimation(AnimationUtils.loadAnimation(this, R.anim.rotate_out));

有什么想法吗?

最佳答案

也许? @anim/rotate_outin.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0" android:toDegrees="90" android:pivotX="50%"
android:pivotY="50%" android:repeatCount="0" android:duration="500"
android:interpolator="@android:anim/linear_interpolator">
</rotate>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0" android:toDegrees="90" android:pivotX="50%"
android:pivotY="50%" android:repeatCount="0" android:duration="500"
android:interpolator="@android:anim/linear_interpolator">
</rotate>
</set>

关于android - ViewAnimator 使用旋转动画在 View 之间转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7677422/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com