如何在按钮内使用Lottie Animation而不是圆形进度条

时间:2017-08-22 07:53:47

标签: android view lottie

我想在一个按钮内放一个小动画,这个动画是JSON格式,并使用After Effect制作,通常这种类型的动画可以编译并与Lottie插件https://airbnb.design/lottie/一起使用,但现在我想要将此动画放在按钮内而不是使用常规循环进度条

2 个答案:

答案 0 :(得分:0)

您必须像按钮一样使用LottieAnimation。

    lt_loading_view = (LottieAnimationView) findViewById(R.id.lt_loading_view);
    lt_loading_view.setAnimation("loading.json");
    lt_loading_view.loop(true);
    lt_loading_view.playAnimation();
    lt_loading_view.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            //Your code
            lt_loading_view.pauseAnimation();
        }
    });

像按钮一样使用背景

    <com.airbnb.lottie.LottieAnimationView
    android:id="@+id/lt_loading_view"
    android:layout_width="80dp"
    android:layout_height="80dp"
    android:background="@color/colorPrimary"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"/>

您可以将相同的背景设置在按钮

答案 1 :(得分:0)

为此,您必须创建一个与按钮相同的自定义视图,并将事件绑定到该视图,使用XML将自定义背景设置为“视图”并在其中包含动画(airbnb lottie的库代码)。 仍然不满意,请更具体地说明您希望使用按钮实现的事情,而上述方法无法实现。