如何在android(java)中设置lottiefiles动画的循环数?

时间:2019-07-18 05:48:24

标签: java android animation lottie lottie-android

我将Lottie文件用作动画时遇到问题,加载连续循环后无法设置循环号,但是我想设置固定的循环号。

活动XML

 <com.airbnb.lottie.LottieAnimationView
        android:layout_centerInParent="true"
        android:id="@+id/animation_view_1"
        android:layout_width="150dp"
        android:layout_height="150dp"
        app:lottie_autoPlay="true"
        app:lottie_loop="true" />

活动Java

animationView.setVisibility(View.VISIBLE);
        animationView.setAnimation(fileName);
        animationView.loop(true);
        animationView.playAnimation();

3 个答案:

答案 0 :(得分:3)

尝试

<com.airbnb.lottie.LottieAnimationView
        ...
        app:lottie_repeatCount="3"
        />

答案 1 :(得分:0)

此外,如果您想以编程方式进行操作,则可以使用方法setRepeatCount()

animationView.setRepeatCount(count)
  

/ **      *设置动画应重复多少次。如果重复      * count为0,永不重复播放动画。如果重复次数是      *大于0或{@link LottieDrawable#INFINITE},将采用重复模式      *考虑在内。默认情况下,重复计数为0。      *      * @param计算动画应重复的次数      * /

     

public void setRepeatCount(int count) { lottieDrawable.setRepeatCount(count); }

答案 2 :(得分:0)

animationView.loop(true); 不推荐使用。 除了Phan Van Linh解决方案之外, 使用.xml文件

<com.airbnb.lottie.LottieAnimationView
        ...
        app:lottie_repeatCount="3"
        />

使用Java即可使用

animationView.setRepeatCount(LottieDrawable.INFINITE);// for Infinite loops

OR

animationView.setRepeatCount(3);// for 3 loops