您可以做的是使用LottieAnimationView,线程和标志的进度 ,这将允许您暂停某个进度并在需要再次播放动画时完全恢复
我创建了以下示例:
animationView.playAnimation()
animationView.loop(false)
isAnimating = true // Setup your flag
thread {
while (isAnimating){ // Loop that checks the progress of your animation
if (animationView.progress >= 0.5f){// If animation reaches 50%
runOnUiThread {
animationView.pauseAnimation()// Pause Animation
}
Thread.sleep(5000) // Pause for 5 seconds
runOnUiThread {
animationView.playAnimation(0.5f,1f) // Resume your animation from 50% to 100%
}
isAnimating = false
}
if(animationView.progress >= 1f){ // If animation reaches 100% stop animation
runOnUiThread {
animationView.cancelAnimation()
isAnimating = false
}
}
}
}
希望能帮助到你。