Android 旋转动画:每次点击逆时针旋转 90 度
要实现这样的旋转动画效果,你可以使用 Android 中的属性动画来实现。
首先,在 xml 文件中定义一个 View,例如一个 Button:
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="点击旋转"
android:onClick="rotate"/>
然后,在 Java 代码中,你可以创建一个旋转动画,并使用属性动画实现逆时针旋转 90 度的效果:
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.view.View;
public class MainActivity extends AppCompatActivity {
private View button;
private int rotation = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = findViewById(R.id.button);
}
public void rotate(View view) {
rotation -= 90;
ObjectAnimator rotateAnimator = ObjectAnimator.ofFloat(button, 'rotation', rotation);
rotateAnimator.setDuration(500);
AnimatorSet animatorSet = new AnimatorSet();
animatorSet.playTogether(rotateAnimator);
animatorSet.start();
}
}
在这个例子中,我们使用了一个 int 变量 rotation 来保存当前的旋转角度,每次点击按钮时减去 90 度,并使用 ObjectAnimator 来定义旋转动画。然后,我们使用 AnimatorSet 将旋转动画组合在一起,并在每次点击时启动动画。
最后,记得在 AndroidManifest.xml 文件中添加适当的权限:
<uses-permission android:name="android.permission.INTERNET" />
这样,每次点击按钮,都会逆时针旋转 90 度并保持在新的角度上。
原文地址: https://www.cveoy.top/t/topic/fcKB 著作权归作者所有。请勿转载和采集!