我尝试将Lottie Animation以编程方式添加到Java(Android)中,但一直失败。我将在下面显示我的代码,我需要从可绘制更改为Lottie。
下面是可绘制对象的代码:
if (status.equals("connect")) {
vpnBtn.setBackgroundResource(R.drawable.but_connect_light);
logTv.setTextColor(getResources().getColor(R.color.font_color));
} else if (status.equals("connecting")) {
vpnBtn.setBackgroundResource(R.drawable.but_connecting_dark);
logTv.setTextColor(getResources().getColor(R.color.font_color));
} else if (status.equals("connected")) {
vpnBtn.setBackgroundResource(R.drawable.but_disconnect_dark);
logTv.setTextColor(getResources().getColor(R.color.purple));
} else if (status.equals("failed")) {
vpnBtn.setBackgroundResource(R.drawable.but_connect_dark);
}
这是上面相关的xml
<ImageView
android:id="@+id/vpnBtn"
android:layout_alignParentBottom="true"
android:layout_gravity="center_horizontal"
android:tag="1"
android:layout_width="140dp"
android:layout_height="140dp"
android:background="@drawable/but_connect_light"
android:layout_centerHorizontal="true"
android:layout_marginBottom="50dp"/>
4条答案
按热度按时间cbwuti441#
以上解决方案对我不起作用。它使应用程序崩溃。
试试用这个
第一个月
或者把它加到无穷大的答案上
字符串vpnsBtn;
if(检查.等于("夜间")){
niknxzdl2#
最后我用下面的解决方案实现了这个
希望这将有助于其他谁想要使用动态按钮与洛蒂在Android上。
vsikbqxv3#
首次使用此依赖项:
在xml中添加
LottieAnimationView
:根据用途更改动画:
注:在asset文件夹中添加您的lottie animation json文件。
bzzcjhmw4#
为了使用Lottie,我做了以下操作:
在
build.gradle(:app)
中添加以下内容并同步:然后,添加
assets
文件。然后,在那里添加JSON文件。然后,转到activity_main.xml
文件,添加: