代码之家  ›  专栏  ›  技术社区  ›  Tamir Abutbul AVK

旋转动画保持其默认状态

  •  1
  • Tamir Abutbul AVK  · 技术社区  · 6 年前


    我需要使动画保持水平,直到一些按钮被按下,但它只是继续回到它的垂直状态

    单击侦听器:

    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

    1 回复  |  直到 6 年前
        1
  •  1
  •   nupadhyaya    6 年前

    试试这个:

    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);