@Olaf_Chou 更加简便和高质量的还原 App 动效

前言

在没有 Lottie 之前,一般都是通过给 PNG 序列图,或者是开发自己写,当然这些动画一般都是比较简单的,如果遇到复杂的动画,开发一般都会拒绝掉,理由一般都是这个没法实现,这个动画需要很多时间,版本迭代周期紧,这个版本没法实现了,要不以后有空给你看看吧。不过自从有了 Lottie,再也不用担心了,一般的动画开发都能高效快速的给你高保真还原。

什么叫 Lottie ?

由 Airbnb 开发的 Lottie 是一个将 After Effects 动画提供给任意一个 iOS,macOS,Android 还有 React Native 原生 APP 的文件库。这些动画通过一个叫 Bodymovin 的开源 After Effects 插件,以 JSON 文件的形式进行输出。Lottie 通过 JSON 格式下载动画数据并实时提供给开发者。

动效为何如此重要?

1、功能性(Functional)

• 优化用户对界面的感知,使其感到更轻快更全面。

• 引起用户的注意。

• 提供(用户操作后的)视觉(功能)反馈,并为下一步的跳转做准备。

2、物理性 (Material)

• 在一致的动画原则和物理的(符合物理定律的)UI模型基础上构建动画。

• 定义屏幕和UI元件之间的空间相对关系,他们的相对高度,权重以及速度。

3、趣味性 (Delightful)

• 在上面两个部分都满足的情况下,加入一些有趣的动画。

• 使它感觉独特,能在诸多动画中能让人眼前一亮。

• 娱乐用户,并让他们一想到动画就能想到该产品或者反之。

第一步:安装 bodymovin 插件

如果你还没安装 AE,那你先暂停一会,去安装一下AE 再继续。这里重点讲解一下如何安装 bodymovin 插件。

相关下载链接

ZXP Installer:见附件(Mac)

bodymovin:GitHub 地址

Mac用户:

1、打开安装器 ZXP Installer,拖动 bodymovin.zxp 到安装器上;

2、安装过程中会先看到 updating,耐心等待一分钟左右,看到 The extension was successfully installed! 则表示插件安装成功了,然后你可以在 ZXP installer 里面看到这个插件已经存在了,具体可以看下图。

Windows 用户:自己看这个 GitHub 网站的方法安装吧,对不住了~

第二步:如何导出 json 动画文件

1、打开AE,首选项—常规,将允许脚本写入文件和访问网络选项勾选上。

2、窗口—扩展—Bodymovin,选择好合成和保存路径后,点击 Render 导出 data.jason 文件,再把该文件交给 iOS 开发 (其他同理),具体如下图。

这里设置选择 Demo ,可以导出html文件,在浏览器查看动画效果。选择 Glyphs 将字体转换成图形形状。

导出文件

第三步:交付加载动画

如果你上面的步骤全部都走通了,下面我们开始做一个简单的动画,来加深一下理解,如果讲的不太好,或者有不对的地方,希望留言指出或者加我微信交流~

实现的效果

左边是静态图,右边是实现的效果

AE新建画板

通过 iOS 开发那里得知,AE 画板的尺寸等于 iOS 开发的一倍图尺寸,所以我直接新建了 50x50px 的画板大小,这样的话,最终实现的效果跟自己做的尺寸大小会一模一样。不过你们可以先做动画,然后通过新建预合成缩放到新建的 50x50px 的画板即可。(如果你听不懂,说明你需要学习一下 AE 的基础知识了,这里就不讲解 AE 基础知识了)

时间设置

动画的效果是通过走线动画完成,最终给了20帧,我设置的动画是 25 帧/秒,换算成时间就是800ms。

导出设置

记得一定要将合成修建至工作区域,否则开发那边的动画就会出现消失一段时间的情况,必须让你的动画跟能完整的来回,不要有多余的空白区域。

开发设置

这里要先声明一点,我这里的动画是不需要交互的动画,其实 lottie 调用的 json 动画文件是可交互的。lottie 本身会提供一个 progress 的参数,相当于动画的进度条,这个数值是可以用代码来控制的,能和手势等各种操作绑定,做到直接控制动画的播放进度。比如下拉刷新动画就可以通过 lottie 实现。

调节 lottie 动画的速度,也就相当于调节动画完成的时间,所以你可以坐在开发旁边慢慢的调节动画直到你满意为止。

调节动画的大小:宽度和高度,同理你也可以让开发给你调节动画的大小,还是让你满意为止。

在线测试结果

可以直接上传json文件,可以提前知道动画是否有问题,然后再交付开发

网址:https://nicolasjengler.github.io/bodymovins-json-tester/dist/

后话

1、不是所有的动效 lottie 都能实现,希望可以认识到这一点,如果不清楚是否可以实现,可以先熟读 lottie-ios 的官方文档。

2、有些可交互的动画可以通过分段来实现,可以给开发 2 个及以上的 json 文件,然后拼接在一起即可。

3、Lottie V 2.0.3 还不支持的动画有: 合并形状、表达式、3D图层、单独修剪多重形状

android 加载动画素材,【AE教程】教你用Lottie实现App加载动画相关推荐

  1. android 图标弹跳动画,动效教程 | 5 分钟快速做个弹跳加载小动画

    小编:APP的动效现今是越来越重要了,以前是加分项,现在是必会技能-今天给大家带来的是AE动效教程 -- 5 分钟快速做个弹跳加载小动画,一起来学习学习吧-- 前言 哈喽,今天给大家解禁一个墨染动效特 ...

  2. 2021新年全屏标题动画素材ae模板

    Modern New Year Typography是一个很棒的After Effects模板,其中包含12个全屏标题动画的集合.您可以在各种不同的视频中使用这些动画,包括电视节目,商业广告,卡通,广 ...

  3. 简单实用 铃铛运动动画制作AE教程

    铃铛的摆动是有一定幅度和要求的,我们要如何通过AE制作铃铛动画呢?接下来就给大家分享一波铃铛晃动的技巧. 铃铛晃动动画AE教程 1.在绘图工具中绘制铃铛本体和铛簧,选中之后导入AE: 2.铃铛本体锚点 ...

  4. 熊猫头动画人物表情、场景图片、物品抠图等等动画素材总共60GB

    正文: 沙雕动画目前非常的火爆,有很多的博主都在用这些相关的资源, 如果你也有过这样的想法,那么好巧. 我知道你缺素材! 分享一波自己在某宝花Q的沙雕动画素材及教程,包含了CTA.PS.AI.Flas ...

  5. Advanced Mechanics in CG Animation CG动画高级力学教程 Lynda课程中文字幕

    Advanced Mechanics in CG Animation 中文字幕 CG动画高级力学教程 中文字幕Advanced Mechanics in CG Animation 力学 - 动画的支柱 ...

  6. android listview左右滑动动画效果,Android基于ListView实现类似QQ空间的滚动翻页与滚动加载效果...

    本文实例讲述了Android基于ListView实现类似QQ空间的滚动翻页与滚动加载效果.分享给大家供大家参考,具体如下: 1. 滚动加载 listView.setOnScrollListener(n ...

  7. js修改本地json文件_Flutter加载本地JSON文件教程建议收藏

    今天农村老家的天气不是很好 而且外面还下雨了,每天只能坐在老家 打开电脑,看看文章,写写文章 今天我给大家带来一篇Flutter加载本地JSON文件教程 本头条核心宗旨 欢迎来到「技术刚刚好」作者,「 ...

  8. android 仿快递步骤_Android实现仿美团、顺丰快递数据加载效果

    我们都知道在Android中,常见的动画模式有两种:一种是帧动画(Frame Animation),一种是补间动画(Tween Animation).帧动画是提供了一种逐帧播放图片的动画方式,播放事先 ...

  9. android滚动广告图片素材,安卓手机宣传视频制作软件如何在视频底部添加一行滚动的广告语?视频加滚动水印...

    窝是帮助用户解决问题 提供教程解决方案 在这个过程中有我们.... 『安卓手机端教程方案』上周,小编介绍了手机视频片尾滚动字幕制作的方法,今天要介绍的是在视频底部加一行滚动水印的方法,适合到不限于制作 ...

最新文章

  1. ElasticSearch聚合分析API——非常详细,如果要全面了解的话,最好看这个
  2. 设置eclipse文件的默认打开方式
  3. JAVA基础知识(2)
  4. 使用 Pandas GUI 进行数据探索
  5. java操作poi如何更改excel中的数据
  6. 前端学习(1355) 子模板
  7. c++ list容器获取第n给元素_Java总结之容器家族--Collection*
  8. Java笔记-腾讯验证码平台使用实例
  9. 公式化学习urllib(第一卷)
  10. JDBC系列(二):JDBC代码的编写步骤
  11. 如何在软件UI设计中运用格式塔心理学5项法则?
  12. 计算机考研复试题(近十万字)
  13. RTF(rich textformat)富文本格式
  14. 树莓派使用usb摄像头
  15. java mp3文件合并,java怎么实现mp3合并
  16. win8.1打开网络上的计算机没有权限,Win8无网络访问权限_Win8无internet访问权限怎么解决-192路由网...
  17. 举例解释大数定律、中心极限定理及其在机器学习中的应用
  18. python读取整个txt文件-python读取一个目录下所有txt里面的内容方法
  19. elasticsearch删除过期数据
  20. Quick BI可以帮助我们大大提升响应速度

热门文章

  1. 电子计算机说明文作文,电脑说明文
  2. Oracle中varchar2()类型
  3. 期末前端web大作业:HTML+CSS+JavaScript简洁的餐饮网站(8个页面) 学生美食网页设计作品静态HTML网页模板源码 大学生美食文化网站制作 简单餐饮文化网页设计成品
  4. 修改eclipse皮肤护眼
  5. python tkinter 计算器V1.0
  6. 微软发布Windows重要更新 为开发者带来更多机缘
  7. 八字推断系统:(二) 初试翻译子平真诠部分章节到模板
  8. Android点击无响应,Android Studio无响应打不开的解决办法
  9. 为什么有HTTP协议,还要有websocket协议
  10. 最新emoji表情代码大全_8月最新早安祝福语的动画表情图片大全,8月最新早安祝福语表情动态图片带字...