Lottie第三方库的使用方法
Lottie介绍
Lottie,Airbnb开源的动画框架,是基于CALayer的动画, 所有的路径预先在AE中计算好, 转换为Json文件, 然后自动转换为Layer的动画。
**官网:**http://airbnb.io/lottie/#/android
Lottie的使用
前置技术
java或kotlin,安卓相关技术
使用步骤
-
在项目中导入Lottie第三方库
在项目中的build.gradle文件中的dependencies中导入
implementation 'com.airbnb.android:lottie:5.0.3'
-
把json文件放入项目中的assets目录中,如果json文件中有要求图片资源的话也需要把图片资源放入assets目录中。
如图,json文件中的assets中要求了三张图片,u代表图片存放路劲,p代表图片名字。依据json文件中的要求存放资源如下图所示:
-
在相关的布局代码中引入Lottie控件
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/image_wave"
android:layout_width="0dp"
android:layout_height="0dp"
android:visibility="invisible"
app:layout_constraintBottom_toTopOf="@id/guide_line"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintWidth_percent="0.731"
app:layout_constraintDimensionRatio="H, 1:1"
app:lottie_fileName="wave.json"
app:lottie_imageAssetsFolder="images"
app:lottie_loop="true" />
在代码中声明Lottie动画的json文件和动画播放所需图片的存放路径,通过lottie_loop设置是否循环。
-
在Lottie动画播放的相关代码中对Lottie控件进行控制
-
播放控制
image_wave.playAnimation()
-
展示控制
image_wave.visibility = View.VISIBLE
通过展示控制可以控制动画是否出现在界面上
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)