当前位置: 首页 > news >正文

Flutter - 波浪动画和lottie动画的使用

demo 地址: https://github.com/iotjin/jh_flutter_demo
代码不定时更新,请前往github查看最新代码

波浪动画三方库wave

lottie动画
Lottie 是 Airbnb 开发的一款能够为原生应用添加动画效果的开源工具。具有丰富的动画效果和交互功能。

  # 波浪动画 https://pub-web.flutter-io.cn/packages/wavewave: ^0.2.2# lottie动画 https://pub-web.flutter-io.cn/packages/lottielottie: ^2.4.0

效果图

在这里插入图片描述

在这里插入图片描述

波浪动画示例

class WavePage extends StatelessWidget {const WavePage({Key? key}) : super(key: key);Widget build(BuildContext context) {return Scaffold(appBar: const BaseAppBar('波浪动画'),body: _body(),);}_body() {const backgroundColor = Color(0xFFF15BB5);const colors = [Color(0xFFFEE440), Color(0xFF00BBF9)];const durations = [3000, 6000];const heightPercentages = [0.65, 0.66];var waveView = WaveWidget(config: CustomConfig(colors: colors,durations: durations,heightPercentages: heightPercentages,),backgroundColor: backgroundColor,size: const Size(double.infinity, double.infinity),waveAmplitude: 0,);return waveView;}
}

lottie动画示例

需要先准备好加载动画文件:将预先准备好的Lottie动画文件(.json格式)放入flutter项目的资源目录中。可以从Lottie官网下载或创建自定义动画文件。
然后使用 Lottie.asset('assets/xxx.json')加载Widget

import 'package:flutter/material.dart';
import 'package:lottie/lottie.dart';
import '/project/configs/project_config.dart';class LottiePage extends StatefulWidget {const LottiePage({Key? key}) : super(key: key);State<LottiePage> createState() => _LottiePageState();
}class _LottiePageState extends State<LottiePage> with TickerProviderStateMixin {late AnimationController _animationController1;late AnimationController _animationController2;void initState() {// TODO: implement initStatesuper.initState();_init();}_init() {_animationController1 = AnimationController(vsync: this, duration: const Duration(seconds: 1));_animationController2 = AnimationController(vsync: this, duration: const Duration(seconds: 1));}_startAnimation1() {_animationController1..reset()..forward();}_startAnimation2() {_animationController2..reset()..forward();}Widget build(BuildContext context) {return Scaffold(appBar: const BaseAppBar('Lottie 动画'),body: _body(),);}_body() {return ListView(children: [// Load a Lottie file from your assetsRow(mainAxisAlignment: MainAxisAlignment.center,children: [Lottie.asset('assets/lottie/首页.json', width: 50, height: 50),Lottie.asset('assets/lottie/星球.json', width: 65, height: 65),],),Row(mainAxisAlignment: MainAxisAlignment.center,children: [GestureDetector(onTap: () => _startAnimation1(),child: Lottie.asset('assets/lottie/首页.json',width: 50,height: 50,controller: _animationController1,onLoaded: (composition) => _startAnimation1(),),),GestureDetector(onTap: () => _startAnimation2(),child: Lottie.asset('assets/lottie/星球.json',width: 65,height: 65,controller: _animationController2,onLoaded: (composition) => _startAnimation2(),),),],),Lottie.asset('assets/lottie/Aniki Hamster.json', height: 200),// Load a Lottie file from a remote urlLottie.network('https://assets5.lottiefiles.com/packages/lf20_0LNPii4uOv.json'),],);}
}

相关文章:

Flutter - 波浪动画和lottie动画的使用

demo 地址: https://github.com/iotjin/jh_flutter_demo 代码不定时更新&#xff0c;请前往github查看最新代码 波浪动画三方库wave lottie动画 Lottie 是 Airbnb 开发的一款能够为原生应用添加动画效果的开源工具。具有丰富的动画效果和交互功能。 # 波浪动画 https://pub-web…...

忘记压缩包密码?解决方法一键找回,省时又便捷!

使用在线rar/zip解密工具&#xff0c;找回rar/zip密码并解密压缩包的方法非常简单。具体步骤如下&#xff1a;首先&#xff0c;在百度上搜索“密码帝官网”&#xff0c;这是一个专业的解密服务网站。然后&#xff0c;点击搜索结果中的链接&#xff0c;进入官网首页。在页面上方…...

“UTONMOS”掀起元宇宙游戏热潮,全球发展前景广阔

我们都知道&#xff0c;市面上无论是PC端的网游还是移动端手游&#xff0c;它如果要做到源源不断的内容输出&#xff0c;不仅取决于游戏公司产品质量和业绩&#xff0c;也与公司的决策和市场沟通密不可分。 元宇宙游戏市场受到关注 近年来&#xff0c;元宇宙游戏市场逐渐升温…...

用idea工具scala 和 Java开发 spark案例:WordCount

目录 一 环境准备 二 scala代码编写 三 java 代码编写 一 环境准备 创建一个 maven 工程 添加下列依赖 <dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.12</artifactId><version>${spark.version}</vers…...

【git merge/rebase】详解合并代码、解决冲突

目录 1.概述 2.merge 3.rebase 4.merge和rabase的区别 5.解决冲突 1.概述 在实际开发中&#xff0c;一个项目往往是多个人一起协作的&#xff0c;头天下班前大家把代码交到远端仓库&#xff0c;第二天工作的第一件事情都是从服务器上拉最新的代码&#xff0c;保证代码版本…...

nrm,npm源的管理工具

npm手动切换淘宝源 查看当前的仓库 npm config get registry设置成淘宝源 npm config set registry https://registry.npmmirror.com/设置回官方源 npm config set registry https://registry.npmjs.org/手动切换不免不太方便&#xff0c;而且网上很多资料淘宝源还是过期的链接…...

HarmonyOS/OpenHarmony原生应用-ArkTS万能卡片组件Stack

堆叠容器&#xff0c;子组件按照顺序依次入栈&#xff0c;后一个子组件覆盖前一个子组件。该组件从API Version 7开始支持。可以包含子组件。 一、接口 Stack(value?: { alignContent?: Alignment }) 从API version 9开始&#xff0c;该接口支持在ArkTS卡片中使用。 二、…...

腾讯云2核4G服务器一年和三年价格性能测评

腾讯云轻量2核4G5M服务器&#xff1a;CPU内存流量带宽系统盘性能测评&#xff1a;轻量应用服务器2核4G5M带宽&#xff0c;免费500GB月流量&#xff0c;60GB系统盘SSD盘&#xff0c;5M带宽下载速度可达640KB/秒&#xff0c;流量超额按照0.8元每GB的价格支付流量费&#xff0c;轻…...

集线器、交换机、路由器是如何转发包的

集线器、交换机、路由器是如何转发包的 集线器交换机MAC地址表的维护 路由器路由表中的信息路由器的包接收操作查询路由表确定输出端口找不到匹配路由时选择默认路由包的有效期通过分片功能拆分大网络包路由器发送操作中的一些特点 参考文档 集线器 集线器是一层&#xff08;物…...

交通物流模型 | MDRGCN:用于多模式交通客流预测的深度学习模型

城市交通拥堵是造成交通事故的重要原因,也是城市发展的主要障碍。通过学习历史交通流数据,我们可以预测未来一些区域的交通流,这对城市道路规划、交通管理、交通控制等都有重要意义。然而,由于交通网络拓扑结构的复杂性和影响交通流的因素的多样性,交通模式往往是复杂多变…...

保研经历分享(一)

这个系列的文章主要是想记录一下自己大学期间最重要的一件事&#xff08;保研!!&#xff09;的经历、过程&#xff0c;外加一些保研流程介绍、面试经验、院校投递、踩坑经历&#xff0c;主要给学弟学妹们避雷&#xff0c;也做一些借鉴吧~ 这一篇主要是对保研过程的一些介绍&…...

【手写数字识别】数据挖掘实验二

文章目录 Ⅰ、项目任务要求任务描述&#xff1a;主要任务要求(必须完成以下内容但不限于这些内容)&#xff1a; II、实现过程数据集描述实验运行环境描述KNN模型决策树模型朴素贝叶斯模型SVM模型不同方法对MNIST数据集分类识别结果分析(不同方法识别对比率表及结果分析) 完整代…...

什么是云计算?云计算简介

其实“云计算”作为一个名词而言&#xff0c;那是相当成功滴。很多人都有听过。但提及云计算”具体是什么?很多人&#xff0c;知其然&#xff0c;却不知其所以然! 利用软件将这些成千上万不可靠的硬件组织成一个稳定可靠的IT系统&#xff0c;以此支撑其公司的IT基础服务。这家…...

Vue路由进阶--VueRouter声明式导航

Vue路由进阶–VueRouter声明式导航 文章目录 Vue路由进阶--VueRouter声明式导航1、声明式导航1.1、导航链接1.2、高亮类名1.3、跳转传参1.4、动态路由参数可选符 1、声明式导航 1.1、导航链接 需求&#xff1a;实现导航高亮效果 vue-router提供了一个全局组件router-link(取…...

Oracle 云服务即将支持 PostgreSQL!

2023 年 9 月 19 日&#xff0c;Oracle 产品团队发布了一篇文章&#xff0c;宣布 Oracle 云基础架构&#xff08;OCI&#xff09;开始提供 PostgreSQL 服务。目前支持的版本为 PostgreSQL 14.9&#xff0c;提供有限支持&#xff0c;12 月份将会提供正式版本。 众所周知&#x…...

数字孪生项目:突破技术难关,引领未来发展

项目背景 数字孪生技术一直在不断发展&#xff0c;为企业提供了无限的潜力和机会。在这个数字时代&#xff0c;公司需要不断进化&#xff0c;以适应市场的需求和客户的期望。北京智汇云舟一直以“视频孪生”为标签&#xff0c;是数字孪生领域的头部企业&#xff0c;拥有强大的…...

MySQL 如何使用离线模式维护服务器

离线模式 作为 DBA&#xff0c;最常见的任务之一就是批量处理 MySQL 服务的启停或其他一些活动。在停止 MySQL 服务前&#xff0c;我们可能需要检查是否有活动连接&#xff1b;如果有&#xff0c;我们可能需要把它们全部杀死。通常&#xff0c;我们使用 pt-kill 杀死应用连接或…...

期权开户流程合集——期权开户的操作步骤

最详细的期权开户流程介绍是怎样的&#xff0c;下文为大家介绍期权开户流程合集——期权开户的操作步骤的知识点&#xff0c;希望对读者有所帮助&#xff0c;期权开户流程和方式分两种&#xff0c;一种券商&#xff0c;一种期权分仓平台&#xff0c;有啥区别下文揭秘。本文来自…...

mysql改造oracle,以及项目改造

mysql改造oracle&#xff0c;以及springboot项目改造 oracle改造说明 这次的任务是springboot mysql版本改造为oracle版本&#xff0c;mysql5.7&#xff0c;oracle11.2&#xff0c;springboot2.0.2&#xff08;springboot版本无所谓&#xff0c;都差不多&#xff0c;自己记录…...

利用互斥锁实现多个线程写一个文件

代码 #include <stdio.h> #include <pthread.h> #include <string.h> #include <unistd.h>FILE *fp;//线程函数1 void *wrfunc1(void *arg); //线程函数2 void *wrfunc2(void *arg); //线程函数3 void *wrfunc3(void *arg);//静态创建互斥锁 pthread_…...

基于vLLM与OpenAI API的LLM生产部署框架实战指南

1. 项目概述&#xff1a;一个面向生产环境的LLM部署框架最近在折腾大语言模型&#xff08;LLM&#xff09;的部署&#xff0c;发现了一个挺有意思的项目&#xff1a;run-llama/llama_deploy。这名字乍一看&#xff0c;可能会让人以为它只是用来部署Meta的Llama系列模型的&#…...

ubantu安装vscode

在火狐浏览器中搜索vscode官网&#xff0c;找到.deb文件下载&#xff0c;下载完成后文件所在的位置为 主文件夹/下载 文件夹内。...

模块六-数据合并与连接——32. merge 合并(上)

32. merge 合并&#xff08;上&#xff09; 1. 概述 merge 是 Pandas 中最强大的数据合并函数&#xff0c;类似于 SQL 中的 JOIN 操作。它可以根据一个或多个键将两个 DataFrame 的行连接起来。 import pandas as pd import numpy as np# 创建示例数据 # 员工表 employees pd.…...

学生综合素质评价系统设计实现【附程序】

✨ 长期致力于综合素质评价、AHP层次分析、BP神经网络、遗传算法研究工作&#xff0c;擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流&#xff0c;点击《获取方式》 &#xff08;1&#xff09;三层指标体系构建与AHP动态权重分配&…...

从刺绣到互动:用导电绣线与微控制器打造光控可穿戴艺术

1. 项目概述与核心价值最近在捣鼓一个特别有意思的玩意儿&#xff1a;把会发光的电子元件“绣”到衣服上&#xff0c;让它不仅能穿&#xff0c;还能跟你互动。这个光控发光琵琶鱼刺绣项目&#xff0c;就是一个绝佳的入门案例。它完美地融合了传统手工艺&#xff08;刺绣&#x…...

手工打造柔性LED眼罩:从SMD焊接入门到可穿戴电路实践

1. 项目概述&#xff1a;从零打造你的赛博格之眼如果你和我一样&#xff0c;对《银翼杀手》里那些闪烁着冷光的义眼&#xff0c;或是赛博朋克美学中标志性的发光装饰着迷&#xff0c;那么亲手制作一个属于自己的LED眼罩&#xff0c;绝对是一次令人兴奋的旅程。这不仅仅是一个酷…...

交通一线运维优选:Smart-S3 多模光时域反射仪

铁路、高速公路现场运维常需轻便、快速、易用的光纤检测工具&#xff0c;Smart-S3 多模光时域反射仪以超轻机身和稳定性能&#xff0c;成为一线巡检与抢修的理想选择。Smart-S3 多模光时域反射仪是一款便携式光纤测试仪表&#xff0c;可精准测量光缆长度、损耗、故障点位置&…...

英雄联盟智能助手Seraphine:免费开源的战绩查询与BP辅助神器

英雄联盟智能助手Seraphine&#xff1a;免费开源的战绩查询与BP辅助神器 【免费下载链接】Seraphine 英雄联盟战绩查询工具 项目地址: https://gitcode.com/gh_mirrors/se/Seraphine 还在为错过对局接受而懊恼吗&#xff1f;还在BP阶段犹豫不决错失最佳英雄选择吗&#…...

stm32 FOC从学习开发(七)SVPWM算法MATLAB仿真进阶:从模型搭建到代码生成

1. SVPWM算法仿真与代码生成全流程 搞电机控制的朋友都知道&#xff0c;SVPWM&#xff08;空间矢量脉宽调制&#xff09;是FOC&#xff08;磁场定向控制&#xff09;的核心算法之一。前几期我们聊过Clark变换、Park变换&#xff0c;也讲过SVPWM的基本原理&#xff0c;今天咱们就…...

2026最权威的六大AI辅助论文神器推荐榜单

Ai论文网站排名&#xff08;开题报告、文献综述、降aigc率、降重综合对比&#xff09; TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 飞速发展着的人工智能技术&#xff0c;在学术领域里应用变得越发广泛&#xff0c;特别是在毕…...