android 如何使用按钮内的Lottie动画而不是圆形进度条

sauutmhj  于 2022-11-03  发布在  Android
关注(0)|答案(2)|浏览(237)

我想把一个小动画放在一个按钮里面,这个动画是JSON格式的,用After Effect制作的,通常这种类型的动画可以编译并与Lottie plugin一起使用,但是现在我想把这个动画放在按钮里面,而不是使用一个常规的圆形进度条

j9per5c4

j9per5c41#

为此,你必须做一个自定义视图,看起来像按钮一样,并绑定事件到该视图,使用XML设置自定义背景视图,并包括动画(airbnb lottie的库代码在它)。仍然不满意,然后更具体地评论,什么事情你想实现使用按钮,这是不可能实现使用上述方法。

5f0d552i

5f0d552i2#

您必须像使用按钮一样使用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"/>

你可以在按钮上加上相同的背景

相关问题