Lottie简介

· 18字 · 1分钟
  • 7个月前(2016.7)airbnb开源了一款开源动画框架 lottie
  • Lottie支持AndroidiOSReactNative三个平台
  • Lottie官网为http://airbnb.design/
  • Lottie的作用是把Adobe After Effects导出的json文件渲染为动画
  • AE导出json时应该使用Bodymovin插件
  • Lottie目前支持API 14及以上的系统,早期只支持到API16。
  • Lottie最大的优势就是美术做好的动画,无需工程师用代码再实现一遍了。其体积又比帧动画或gif小很多,大大解放了工程师的劳动力。

以下是Lottie性能的官方的说明:

  • 如果没有mask和mattes,那么性能和内存非常好,没有bitmap创建,大部分操作都是简单的cavas绘制。
  • 如果存在mattes,将会创建2~3个bitmap。bitmap在动画加载到window时被创建,被window删除时回收。所以不宜在RecyclerView中使用包涵mattes或者mask的动画,否则会引起bitmap抖动。除了内存抖动,mattes和mask中必要的bitmap.eraseColor()和canvas.drawBitmap()也会降低动画性能。对于简单的动画,在实际使用时性能不太明显。
  • 如果在列表中使用动画,推荐使用缓存LottieAnimationView.setAnimation(String, CacheStrategy) 。

以下是Lottie官方示例效果:

comments powered by Disqus