启动后旋转动画不会立即开始

时间:2019-01-15 19:07:07

标签: android animation

我尝试制作按钮旋转的动画。问题是它仅在启动后大约1秒钟后启动

RotateAnimation rotate = new RotateAnimation(0, 360,
            Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,
            0.5f);

    rotate.setDuration(1000);
    rotate.setRepeatCount(0);
    rotate.setInterpolator(new LinearInterpolator());
    performSync.setAnimation(rotate);

如何使其立即启动?

1 个答案:

答案 0 :(得分:0)

在您的res文件夹中,创建xml作为其名称,例如将其命名为rotation.xml并使用此代码

 <?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" >

    <rotate
        android:duration="1000"
        android:fromDegrees="0"
        android:interpolator="@android:anim/overshoot_interpolator"
        android:pivotX="50%"
        android:pivotY="50%"
        android:repeatCount="10"
        android:toDegrees="360" />
</set>

然后在您的活动中将动画设置为这样的视图

private void startAnimations() {

    Animation anim = AnimationUtils.loadAnimation(this, R.anim.rotate);
    yourView.startAnimation(anim);
}

之后,您可以在任何要启动的地方使用startAnimation方法