一、简介

  Lottie是Airbnb开源的一个面向IOS、Android、React Native的动画库,能分析Adobe After Effects导出的动画,并且能让原生App像使用静态素材一样使用这些动画,完美实现动画效果。
  现在使用个平台的native代码实现一套复杂的动画是一件很困难并且很耗时的事,需要为不同尺寸的屏幕加载不同的素材资源,还需要写大量难维护的代码,而Lottie可以做到同一个通话文件在不同平台上实现相同的效果,极少减少开发时间,实现不同的动画,只需要设置不同的动画文件即可,极少减少开发和维护成本。

二、使用

1.在项目的build.gradle文件添加依赖

dependencies {
compile 'com.airbnb.android:lottie:2.1.0'
}

2.在布局文件中使用

  动画的文件可以在https://www.lottiefiles.com/这个网址下载。

    <com.airbnb.lottie.LottieAnimationView
android:id="@+id/animator_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:lottie_fileName="trophy.json"
app:lottie_loop="true"
app:lottie_autoPlay="true"
/>

3.常用的方法

3.1.animationView.loop(true)

  设置动画循环演示。

3.2.animationView.setAnimation("trophy.json")

  设置动画文件。文件在assets文件夹中。

3.3.animationView.isAnimating()

  是否在演示中。

3.4.animationView.setProgress(0.5f)

  设置演示的进度。

3.5.animationView.getProgress()

  获取演示的进度。

3.6.animationView.getDuration()

  获取演示的时间。

3.7.animationView.palyAnimation()

  运行动画。

3.8.animationView.pauseAnimation()

  暂停动画。

3.9.animationView.cancleAnimation()

  关闭动画。我写的例子,运行animationView.pauseAniamtion()与cancleAnimation()的效果是一样,运行完cacleAnimation()之后,再运行playAnimation()动画不是从头开始,而是接着演示动画,查看源码,查看pauseAniamtion()与cancleAniamtion()的实现,差别只是pauseAnimation()方法多了一个setProgress(progress)而已,而cancleAnimation()没有将progress设置为0,所以显示是一样的。如果要解决,可以在使用cancleAniamtion()之前,加上animationView.setProgress(0)。

参考文章:https://mp.weixin.qq.com/s/LrkZtDZY3SE8IUQ-x1hsmQ

Lottie的使用的更多相关文章

  1. Lottie简介(翻译)

    以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/6364634.html Lottie简介(翻译) 新的向本地ap ...

  2. Lottie安卓开源动画库使用

    碉堡的Lottie Airbnb最近开源了一个名叫Lottie的动画库,它能够同时支持iOS,Android与ReactNative的开发.此消息一出,还在苦于探索自定义控件各种炫酷特效的我,兴奋地就 ...

  3. iOS开发之 Lottie -- 炫酷的动效

    动效在软件开发中非常常见,炫酷的动画能提升应用的B格,然而由设计师的设计转化成程序猿GG的代码是个非常"痛苦"的过程.对于复杂动画,可能要花费很多时间去研究和实现.Lottie 的 ...

  4. 站在 Android 开发的角度,聊聊 Airbnb 的 Lottie!!!

    一.前言 你有没有遇上一些设计师,对一些酷炫的动画着迷,喜欢根据场景设计出可爱而流畅的动画.但是在实际工作中,哪怕开发人员也觉得这些动画非常的棒,可我们知道,越是定制化的动画,实现起来将会越麻烦和耗时 ...

  5. Android之Lottie动画详解

    文章大纲 一.Lottie介绍二.Lottie实战三.项目源码下载四.参考文章   一.Lottie介绍 1. 什么是Lottie   Lottie是Android和iOS的移动库,用于解析Adobe ...

  6. 程序员也想改 Lottie 动画?是的!

    一.前言 Hi,大家好,我是承香墨影! Lottie 是 Airbnb 开源的一套跨平台的完整的动画效果解决方案,用过都说好.完全解耦开发人员和设计师,让设计师设计的动画,在程序中无缝还原,真是一旦拿 ...

  7. 使用Lottie将AE项目转换为 Web 原生动画

    使用Lottie转换AE项目为 Web 原生动画 首先打开链接https://github.com/airbnb/lottie-web/blob/master/build/extension/body ...

  8. Lottie 动画里有图片怎么办?设计师小姐姐也能帮你减少开发量!

    一.序 Hi,大家好,我是承香墨影! Lottie 是 Airbnb 开源的一套跨平台的完整解决方案,设计师只需要使用 After Effectes (之后简称 AE)设计出动画之后,使用 Lotti ...

  9. 在vue里添加好看的lottie动画 (^_^)

    为什么用lottie ★~★ 1.能让你的程序不那么单调 2.能让一些有审美强迫症的同学好受一点 3.网上有丰富的资源 点我进入lottie资源网站 引入lottie库 (>.<) 在vu ...

随机推荐

  1. JAVA入门[5]-初步搭建SpringMVC站点

    一.新建Module 1.新建Module,类型如下图所示: 2.为项目添加Spring框架支持,操作步骤如下: 首先在Module右键->Add Framework Support: 2.Sp ...

  2. vertical-align 和 img属性 和 鼠标样式

    一.vertical-align 一)定义:定义行内元素的基线相对于该所在基线的垂直对齐.(只针对行类块inline/inline-block/<img>,块级不适用!) 二)语法:  三 ...

  3. 通过gitbub桌面工具同步

    1.先创建目录,和选择路径 2.commit -> sync 3. cd ~/.ssh 查看公钥 在github 添加公钥. 4. 克隆文件git clone git@github.con:cu ...

  4. <大话设计模式>笔记

    读完了<大话设计模式>这本书,收获很多,对程序设计有了很多新的理解.将每章模式的大概要点做了些笔记以备查阅,一些设计模式书读完也对其了解得不是很透彻,需要以后在实践中来不断地加深理解吧.读 ...

  5. Linux简介,虚拟机安装,网络设置,桌面和vim安装

    Linux简介: linux代表系统内核.Linux系统指基于Linux内核的操作系统,由内核和程序结合组成.比较流行的发行版本由RedHat Linux.Fedora.Centos.Debian.U ...

  6. iOS开发之Xcode常用调试技巧总结

    转载自:iOS开发之Xcode常用调试技巧总结 最近在面试,面试过程中问到了一些Xcode常用的调试技巧问题.平常开发过程中用的还挺顺手的,但你要突然让我说,确实一脸懵逼.Debug的技巧很多,比如最 ...

  7. Java用代码获取classes目录下的文件的方式

    假设我们有个Maven的Web项目,其中有src/main/java和src/main/resources两个输出目录(注意这两个目录下的内容运行后都会输出到classes目录下), 而在src/ma ...

  8. ToolStrip和MenuStrip控件簡介及常用屬性(转)

    ToolStrip和MenuStrip實際上是相同的控件,因為MenuStrip直接派生於ToolStrip.也就是說ToolStrip可以做的工作,MenuStrip也能完成. ToolStrip( ...

  9. 链表创建和链表遍历算法的演示_C语言

    今天搞了一个多小时,头是疼的,应该是没休息好吧,学习了数据结构这一节,感觉收益良多,下面贴上代码和心得: /*24_链表创建和链表遍历算法的演示*/ # include <stdio.h> ...

  10. Find the Maximum sum

    Given an array of n elements.Find the maximum sum when the array elements will be arranged in such w ...