我正在为音乐播放器应用在圆形视图上应用无限重复计数旋转动画。
当我在视图上开始动画时(即,按音乐上的播放按钮),视图将完美地无限旋转。
您可以在此处查看视图的预览图像:
问题在于,当我调用clearAnimation()[以在单击暂停音乐按钮时停止动画]时,视图会完全转换为初始状态,看起来不太好。
我希望视图一直保持与旋转相同的角度,直到单击暂停按钮为止。例如,当我单击“播放”时,动画将视图旋转到30度,然后按“暂停”,视图应在该30度位置停止。
文件:
旋转文件:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" android:fillAfter="true">
<rotate
android:duration="5000"
android:fromDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:repeatCount="infinite"
android:startOffset="0"
android:toDegrees="360" />
</set>
清除动画:
private fun stopDiskAnimation() {
v.rotate_view_album_art.clearAnimation()
}
答案 0 :(得分:0)
Animator
应该为您提供帮助
val animator = ObjectAnimator.ofFloat(yourView, "rotation", 0f, 360f).apply {
duration = 5000
repeatCount = ObjectAnimator.INFINITE
start()
}
// ...
animator.pause()
资源:
http://cogitolearning.co.uk/2014/01/android-property-animations-controlling-animation-flow/