让UI忙碌的安卓Lottie动画渲染库(一)

简介: 今天工作时突然在项目xml布局看到了一个完全不认识的控件,一开始以为是自定义View之类的:

前言

今天工作时突然在项目xml布局看到了一个完全不认识的控件,一开始以为是自定义View之类的:

<com.airbnb.lottie.LottieAnimationView
    android:id="@+id/lt_gift"
    android:layout_width="200dp"
    android:layout_height="200dp"
    app:lottie_autoPlay="true"
    app:lottie_fileName="lottie/gift.json"
    app:lottie_loop="true"
    app:lottie_repeatMode="restart"/>

但一看包所在名称,再一结合这个控件的显示效果与该布局中的命名,我以为是用来专门加载GIF动图的,但经过我在网上检索,查阅一些博客,访问Lottie的GitHub项目地址后,我才有了大致的印象,原来这个就是为我们开发者省心,让UI设计师忙碌的动画加载利器。

正篇

开场说过,本人对此库的认知也有限,本篇仅供参考用法,如有纰漏,望各位大佬能指正!

介绍

其实最好的介绍就是官方自我介绍,如下:


网络异常,图片无法展示
|


大致意思就是,首先它能多个系统开发上使用,如:安卓Android,苹果IOS,以及Windows、React Native、 Web上都可以使用。

而官方的自我介绍也很幽默:

Lottie是一个适用于Android和iOS的移动库,可以解析使用Bodymovin导出为json的AE(Adobe After Effects)动画,并在移动设备上以本机方式呈现它们!第一次,可以让设计师去创建和发布这些精美的动画,而不需要工程师煞费苦心地手动重新创建。他们说一张图片胜过1000个单词,所以这里有13000个单词。

总结而言,就是我们可以不用花费大量时间用代码调试动画,而是让UI设计去制作好成品,我们直接用就行。

如何放入项目中

首先,因为是新的库,我们需将包导入到我们build.gradle(app)中:

implementation 'com.airbnb.android:lottie:5.2.0'

网络异常,图片无法展示
|


接着就是文章开篇的代码,我们需要在XML布局的合适位置放入:

<com.airbnb.lottie.LottieAnimationView          使用Lottie
    android:id="@+id/lt_gift"                          id名
    android:layout_width="200dp"                   控件宽度
    android:layout_height="200dp"                  控件高度
    app:lottie_autoPlay="true"                        自动播放动画(default: false)
    app:lottie_fileName="lottie/gift.json"         目录下的json文件名(json文件可以直接放到assets目录下,比如“gift.json”,也可新建子目录,比如"lottie/gift.json")
    app:lottie_loop="true"                              循环播放(default:false)
    app:lottie_repeatMode="restart"                循环模式(default:restart)
   />            

总结

本节我们看了如何将Lottie放入我们的安卓项目中并在XML中写入,下节我们会继续看它在逻辑代码中的使用方法,感谢您的观看!

相关文章
|
2月前
|
搜索推荐 Android开发 开发者
探索安卓开发中的自定义视图:打造个性化UI组件
【10月更文挑战第39天】在安卓开发的世界中,自定义视图是实现独特界面设计的关键。本文将引导你理解自定义视图的概念、创建流程,以及如何通过它们增强应用的用户体验。我们将从基础出发,逐步深入,最终让你能够自信地设计和实现专属的UI组件。
|
8天前
|
前端开发 Linux C#
一款开源、免费、美观的 Avalonia UI 原生控件库 - Semi Avalonia
一款开源、免费、美观的 Avalonia UI 原生控件库 - Semi Avalonia
39 10
|
1月前
|
XML 搜索推荐 前端开发
安卓开发中的自定义视图:打造个性化UI组件
在安卓应用开发中,自定义视图是一种强大的工具,它允许开发者创造独一无二的用户界面元素,从而提升应用的外观和用户体验。本文将通过一个简单的自定义视图示例,引导你了解如何在安卓项目中实现自定义组件,并探讨其背后的技术原理。我们将从基础的View类讲起,逐步深入到绘图、事件处理以及性能优化等方面。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。
|
2月前
|
XML 前端开发 Android开发
Android:UI:Drawable:View/ImageView与Drawable
通过本文的介绍,我们详细探讨了Android中Drawable、View和ImageView的使用方法及其相互关系。Drawable作为图像和图形的抽象表示,提供了丰富的子类和自定义能力,使得开发者能够灵活地实现各种UI效果。View和ImageView则通过使用Drawable实现了各种图像和图形的显示需求。希望本文能为您在Android开发中使用Drawable提供有价值的参考和指导。
47 2
|
2月前
|
人工智能 API Apache
推荐3款开源、美观且免费的WinForm UI控件库
推荐3款开源、美观且免费的WinForm UI控件库
340 6
|
3月前
|
Android开发 UED
Android 中加载 Gif 动画
【10月更文挑战第20天】加载 Gif 动画是 Android 开发中的一项重要技能。通过使用第三方库或自定义实现,可以方便地在应用中展示生动的 Gif 动画。在实际应用中,需要根据具体情况进行合理选择和优化,以确保用户体验和性能的平衡。可以通过不断的实践和探索,进一步掌握在 Android 中加载 Gif 动画的技巧和方法,为开发高质量的 Android 应用提供支持。
|
3月前
|
安全 Java 网络安全
Android远程连接和登录FTPS服务代码(commons.net库)
Android远程连接和登录FTPS服务代码(commons.net库)
37 1
|
2月前
|
API C# 开发者
基于Material Design风格开源、免费的WinForms UI控件库
基于Material Design风格开源、免费的WinForms UI控件库!
|
3月前
|
Linux API 开发工具
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
ijkplayer是由B站研发的移动端播放器,基于FFmpeg 3.4,支持Android和iOS。其源码托管于GitHub,截至2024年9月15日,获得了3.24万星标和0.81万分支,尽管已停止更新6年。本文档介绍了如何在Linux环境下编译ijkplayer的so库,以便在较新的开发环境中使用。首先需安装编译工具并调整/tmp分区大小,接着下载并安装Android SDK和NDK,最后下载ijkplayer源码并编译。详细步骤包括环境准备、工具安装及库编译等。更多FFmpeg开发知识可参考相关书籍。
120 0
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库