android - 旋转动画保持回到默认状态

标签 android android-animation

我有一个垂直开始并水平结束(90 度)的旋转动画。
我需要让动画保持水平直到按下某个按钮,但它只是一直回到垂直状态

点击监听器:

holder.options.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                holder.options.startAnimation(AnimationUtils.loadAnimation(context,R.anim.rotate_right));
                setMenuOptionsButton();
            }}

动画

<set xmlns:android="http://schemas.android.com/apk/res/android">
<rotate
    android:fromDegrees="0"
    android:toDegrees="90"
    android:pivotX="50%"
    android:pivotY="50%"
    android:duration = "500"
    android:fillAfter="true"
    android:interpolator="@android:anim/linear_interpolator"
    />

我看到了 some solutions here 它对我没有帮助

最佳答案

试试这个:

Animation anim = AnimationUtils.loadAnimation(context,R.anim.rotate_right);
anim.setAnimationListener(new Animation.AnimationListener() {
    @Override
    public void onAnimationStart(Animation animation) {

    }

    @Override
    public void onAnimationEnd(Animation animation) {
        holder.options.setRotation(90);
    }

    @Override
    public void onAnimationRepeat(Animation animation) {

    }
});

holder.options.startAnimation(anim);

关于android - 旋转动画保持回到默认状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52749073/

相关文章:

java - 谷歌地图 API v2 抛出 java.lang.runtimeexception : unable to start activity java. lang.nullpointerexception

Android Reveal Animation 启动一个Activity

android - 如何使 ListView 动画化以逐一显示?

android - 动画图像的饱和度

android - 不支持的操作异常 : Tried to obtain display from a Context not associated with one

java - 如何在android中检查用户输入的字符串是否为mm/dd/yyyy格式?

java - 如何管理媒体播放器的多个实例?

android - 使用 Admob 强制关闭

android - 如何在 Android 中的两个 Activity 之间应用幻灯片动画?

android - ImageView ObjectAnimator转场+转场时的碰撞检测