?动画是UI界面的重要元素之一,精心设计的动画能使UI界面更直观,有助于改进应用程序的外观并改善用户体验。
ArkUI开发框架为开发者提供了丰富的动画能力,如属性动画、转场动画及自定义动画等。这些动画能力帮助开发者美化了UI界面,但不适用于绘制某些比较复杂的动画,例如,属性动画主要针对动画的通用属性进行动态变化,内容动效不够丰富,且变更时需要修改或重写代码;Gif动态图放大后锯齿明显,精度越高占用存储空间越大,直接影响安装包的大小;svg动画DOM节点多开销大,缺乏与用户的交互。因此,我们引入了比较成熟的Lottie组件,提升了ArkUI开发框架的动画能力。一、Lottie介绍
1
什么是Lottie?
Lottie是一款能够为应用添加动画的开源组件,它可以解析AE(AfterEffects)导出的json文件,让复杂的动画资源轻松运行在应用程序中。如图1所示,动画文件通过AE的bodymovin插件转换成通用的json格式描述文件后,应用开发者只需使用Lottie解析json文件,就能将动画绘制出来。
图1整体流程
2
Lottie绘制流程
Lottie解析json格式的动画描述文件后,会基于canvas画布进行2D渲染,并结合原生组件Animator实现动画效果。具体绘制流程如下图2所示:
图2lottie绘制流程动画加载准备,在使用Lottie加载动画前需先通过插件bodymovin将AE生成的动画文件转换为通用的json格式描述文件。开发者也可以从互联网获取合适的动画资源直接应用。获取链接:转载请注明:http://www.0431gb208.com/sjszjzl/1238.html