可以通过以下方法实现:
LottieAnimationView animationView = findViewById(R.id.lottie_animation);
animationView.addAnimatorListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {
// 动画开始时执行的操作
}
@Override
public void onAnimationEnd(Animator animation) {
// 动画结束时执行的操作
}
@Override
public void onAnimationCancel(Animator animation) {
// 动画被取消时执行的操作
}
@Override
public void onAnimationRepeat(Animator animation) {
// 动画重复时执行的操作
}
});
LottieAnimationView animationView = findViewById(R.id.lottie_animation);
LottieDrawable drawable = (LottieDrawable) animationView.getDrawable();
drawable.pauseAnimation(); // 暂停动画
drawable.resumeAnimation(); // 恢复动画
LottieAnimationView animationView = findViewById(R.id.lottie_animation);
for (int i = 0; i < animationView.getComposition().getLayers().size(); i++) {
String layerName = animationView.getComposition().getLayers().get(i).getName();
// 暂停名为Layer 1的图层
if (layerName.equals("Layer 1")) {
KeyPath keyPath = new KeyPath(layerName);
Lottie