【Flutter 3-5】Flutter进阶教程——在Flutter中使用Lottie动画
2021/4/14 20:25:12
本文主要是介绍【Flutter 3-5】Flutter进阶教程——在Flutter中使用Lottie动画,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
作者 | 弗拉德
Lottie动画
在移动开发中总是需要展示一些动画特效,作为程序员的我们并不是很擅长用代码做动画,即便是有些动画可以实现,在跨平台的过程中也会因为API的差异性导致动画在各个平台中展示的有差异。
所以为了释放程序员的双手,不再陷入写动画调参数的苦恼,Airbnb开源了一款专门用于跨平台的动画解决方案:Lottie
。
Lottie
可以解析使用Bodymovin导出为json的Adobe After Effects动画,并在移动端和Web端展示。这样我们就可以把做动画的工作交给专业做动画的同事来完成,我们只需要使用导入json文件即可,这样是不是大大减少了程序员的工作量,并且能够:实现专业的人做专业的事。
导入Lottie框架
在Flutter中已经存在开源的[Lottie库],所以我们只需要在pubspec.yaml
中的dependencies
导入相关的依赖即可
dependencies: lottie: ^0.7.0
使用Lottie库
在需要展示Lottie动画Widget导入头文件
import 'package:lottie/lottie.dart';
默认读取本地json文件
Lottie.asset("json/fun_do_like.json"),
只需要一句话即可展示Lottie动画,是不是很简单。
我们来看其他的属性
-
repeat 是否重复执行。默认是true,如果是false,动画执行一遍就会停止
-
reverse 是否倒序播放。默认是false,如果设置为true,动画会先正序播放一遍,然后再倒序播放一遍
-
animate 是否允许播放动画。默认是true,如果设置为false,则不会播放动画
从网络读取json文件
Lottie.network("https://cdn.jsdelivr.net/gh/johnson8888/blog_pages/images/lottie_test.json",),
同样我们可以设置获取到网络资源后的回调
Lottie.network("https://cdn.jsdelivr.net/gh/johnson8888/blog_pages/images/lottie_test.json", onLoaded: (LottieComposition composition) { print("onLoaded"); }, ),
好了,关于Lottie
的使用就总结这些了。
想体验以上的示例的运行效果,可以到[我的Github仓库] github.com/Johnson8888/learn_flutter 项目flutter_app
->lib
->routes
->lottie_demo_page.dart
查看,并且可以下载下来运行并体验。
这篇关于【Flutter 3-5】Flutter进阶教程——在Flutter中使用Lottie动画的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-01-18android.permission.read_media_video
- 2024-01-18android_getaddrinfo failed eai_nodata
- 2024-01-18androidmo
- 2024-01-15Android下三种离屏渲染技术
- 2024-01-09Android 蓝牙使用
- 2024-01-06Android对接华为AI - 文本识别
- 2023-11-15代码安全之代码混淆及加固(Android)
- 2023-11-10简述Android语音播报TTS
- 2023-11-06Android WiFi工具类
- 2023-07-22Android开发未来的出路