作为一个程序员,无论是学习编程或者实际开发过程中,不管是移动端、PC端或者Web端,我们经常可以看到一些动画,比如图标、按钮、加载与刷新、提示与弹框、启动与关闭等等场景中,都会使用动画效果,美观灵动的动画效果,让产品页面的交互感也会变得更好。
不过,虽然在页面中添加动画有很多好处,但也会有诸多问题限制动画效果的实现,比如运行性能问题、效果还原度问题、开发效率问题等等……
基于此,小编在这里分享几个开发动画效果的好方法,好好利用,说不定可以有效帮助我们通过代码,完成想要的精美效果。
01、Lottie
为什么使用Lottie作为开发动画的手段呢?
因为Lottie方式,能够解析渲染通过在AE上制作好动画,再导出成 json 文件,接下来在代码中可以完美还原动画效果。
由于这个特性,于是让Lottie具备两个很强的优势:
- 动画数据源多样,可以使用网络加载动画资源,动态更新;
- 跨平台且效果还原度高,设计稿导出一份动画描述文件,android,ios,react native通用。
Lottie是由Airbnb团队开发的一个适用于iOS、Android、React Native、Web和Windows的开源动画库,用于解析使用Bodymovin导出为JSON的Adobe After Effects动画,实时渲染AE动画并在设备上呈现它们!Lottie允许应用程序像使用静态图像一样轻松使用动画。
使用Lottie库解析AE动画,首先需要下载Bodymovin插件,将AE动画导出为JSON文件并包含一个JS库,之后在你的项目中,调用Lottie库来解析、渲染JSON动画效果,并且支持实体、形状图、蒙版、alpha遮罩、修剪路径和虚线图案等,不用担心动画维度或文件大小。
02、Keyframes
Keyframes是由Facebook团队开发的一个开源库,用于将基于Adobe AE的动画转换为允许在Android和iOS设备上呈现的数据格式,整体流程与Lottie类似。
在使用Keyframes库前,首先需要安装Adobe ExtendScript Toolkit脚本,将AE动画导出为JSON文件,之后调用Keyframes库导出和渲染具有复杂形状和路径曲线的高质量、基于矢量的动画。
与Lottie不同的是,Keyframes对AE动画有一些约束,比如不支持预合成、形状层不支持路径合并、不支持路径修剪等等,使用场景和适用范围略有区别,感兴趣的朋友可以对比体验一下区别。
03、犸良
上面的两种方式,主要是基于AE导出JSON文件快速实现动画效果以及Lottie动画资源,但是这种方式毕竟流程比较复杂,对新手不太友好。
对于新手而言,我们可以使用阿里团队推出的犸良:基于Lottie的动效设计平台,犸良内置了一些动效素材,即使不会动效你也可以基于动效库和素材库快速开发出相关动画。
具体使用办法,我们可以通过支付宝扫码登录或者账号密码登录犸良,选择背景模版素材、自定义画布或上传背景图片开始创建动画,进入动画编辑页面,可以调整背景尺寸、修改文字、替换图片素材、编辑或替换动画素材等。
编辑完动画点击页面右上角的「完成编辑」按钮,网站将会把你的动画生成一个可预览的JSON动画效果,你可以用支付宝扫描该动画二维码在手机端预览动画,也可以下载该动画的JSON文件,好方便的用在自己的代码中。
目前犸良网站有200+动效模版,包含banner插图、金币红包、人物素材、button按钮、氛围图、icon以及阿里蚂蚁形象等等,丰富的动画素材及模板让你随心创作你的动画,赶紧去看看有没有适合自己的动画素材吧。
04、LottieFiles 社区
LottieFiles是由DesignBarn公司推出的Lottie官方动画社区,用于发现、测试和分享为Lottie和Bodymovin设计的精彩动画,网站提供英文、简体中文和德文三种语言。
在LottieFiles可以免费搜索来自全球动画师创作的1000多个精美动画,包括单个动画及动画包,可免费下载或付费下载,下载格式包括AE源文件、Lottie JSON文件、GIF动画及MP4文件等,同时兼容iOS、Android和Web。
LottieFiles还支持你测试你的动画文件,无论在网站的任何位置只需要将你的JSON文件拖放进来就可以立即预览动画并生成动画二维码、链接地址,在iOS和Android上安装使用LottieFiles扫描动画二维码或者粘贴Lottie JSON动画链接地址在手机端预览动画效果。
同时,该社区还支持上传自己的动画作品,如果我们有相关才能,赶紧去发布作品开始展示吧。
以上就是本次分享的全部内容,我是@杨老师教你写BUG,专注于开发资讯和编程教程分享,感兴趣的朋友可以关注我。