flutter闪烁动画效果
闪烁浮动效果:
import 'package:flutter/material.dart';class FlickerAnimation extends StatefulWidget {final String iconPath;FlickerAnimation({this.iconPath});@overrideState<StatefulWidget> createState() {// TODO: implement createStatereturn _FlickerAnimation();}
}
class _FlickerAnimation extends State<FlickerAnimation> with TickerProviderStateMixin{/*height = Tween<double>(begin:.0 ,end: 300.0,).animate(CurvedAnimation(parent: controller,curve: Interval(0.0, 0.6, //间隔,前60%的动画时间curve: Curves.ease,),),);*//*color = ColorTween(begin:Colors.green ,end:Colors.red,).animate(CurvedAnimation(parent: controller,curve: Interval(0.0, 0.6,//间隔,前60%的动画时间curve: Curves.ease,),),);*//*padding = Tween<EdgeInsets>(begin:EdgeInsets.only(left: .0),end:EdgeInsets.only(left: 100.0),).animate(CurvedAnimation(parent: controller,curve: Interval(0.6, 1.0, //间隔,后40%的动画时间curve: Curves.ease,),),);*/AnimationController animationController;Animation<double> opacity;Animation<EdgeInsets> padding;@overridevoid initState() {// TODO: implement initStatesuper.initState();animationController = new AnimationController(duration: Duration(milliseconds: 630),vsync: this);opacity = Tween<double>(begin: 0.0 ,end: 1.0,).animate(CurvedAnimation(parent: animationController,curve: Interval(0.0, 1.0, //间隔,前60%的动画时间curve: Curves.ease,),),);padding = Tween<EdgeInsets>(begin:EdgeInsets.only(bottom: .0),end:EdgeInsets.only(bottom: 20.0),).animate(CurvedAnimation(parent: animationController,curve: Interval(0.0, 1.0, //间隔,后40%的动画时间curve: Curves.ease,),),);animationController.addStatusListener((status) {if(status == AnimationStatus.completed){animationController.reverse();}else if(status == AnimationStatus.dismissed){animationController.forward();}});animationController.forward();}@overridevoid dispose() {// TODO: implement disposeanimationController.dispose();super.dispose();}@overrideWidget build(BuildContext context) {// TODO: implement buildreturn onActivityCreate(context);}@overrideonActivityCreate(BuildContext context) {// TODO: implement onActivityCreatereturn AnimatedBuilder(builder: _buildAnimation,animation: animationController);}Widget _buildAnimation(BuildContext context, Widget child) {return Container(padding: padding.value,alignment: Alignment.bottomCenter,height: 80.0,width: 80.0,//color: Colors.red,child: Opacity(child: ShaderMask(shaderCallback: (rect) {return LinearGradient(begin: Alignment.topCenter,end: Alignment.bottomCenter,colors: [Colors.black, Colors.transparent],).createShader(Rect.fromLTRB(0.0, 0.0, rect.width, rect.height));},blendMode: BlendMode.dstIn,child: Image.asset(widget.iconPath,width: 50.0,height: 50.0),),opacity: opacity.value,));}
}
引用:
Container(color: Colors.white,width: 200.0,height: 200.0,child: FlickerAnimation(iconPath: 'assets/image/f_image.webp',),)
flutter闪烁动画效果相关推荐
- 高逼格UILabel的闪烁动画效果
高逼格UILabel的闪烁动画效果 最终效果图如下: 源码: YXLabel.h 与 YXLabel.m // // YXLabel.h // // Created by YouXianMing o ...
- CSS3实现闪烁动画效果
给class属性名为className的元素添加闪烁动画效果 .className{ -webkit-animation: twinkling 1s infinite ease-in-out ...
- css3 div跳动动画_CSS3实现闪烁动画效果
本文实例讲述了CSS3实现闪烁动画效果的方法.分享给大家供大家参考.具体方法如下: 给class属性名为className的元素添加闪烁动画效果 复制代码 代码如下: .className{ -web ...
- css 3d闪烁动画,CSS3实现闪烁动画效果的方法
本文实例讲述了CSS3实现闪烁动画效果的方法.分享给大家供大家参考.具体方法如下: 给class属性名为className的元素添加闪烁动画效果 复制代码代码如下: .className{ -webk ...
- 闪烁点击效果css,CSS3自定义闪烁动画效果实例
都说HTML5和CSS3的出现直接终结了FLASH时代,不管这其中有没有夸张的成分,但是CSS3的动画功力还真不可小觑.下面我们就分享一下CSS3的自定义闪烁动画实现方法,先定义好动画样式代码:@-w ...
- Leaflet中实现矩形闪烁动画效果
场景 Leaflet快速入门与加载OSM显示地图: Leaflet快速入门与加载OSM显示地图_霸道流氓气质的博客-CSDN博客_leaflet 显示地图 在上面加载地图显示的基础上,实现矩形闪烁显示 ...
- 微信小程序 创建动画效果背景——球体闪烁动画效果组件
根目录下新建文件夹pyp,然后新建组件pyp/animation/animation1/index index.js文件夹中键入代码 // pyp/animation/animation1/index ...
- iOS之iPhone解锁界面的滑动来解锁闪烁动画效果
各位亲爱的朋友们,你们每天解锁iPhone,看到底部"滑动来解锁"这个效果,难道不好奇么???那么好学的博主,今天在github上看到个库,facebook搞的,非常简单的API就 ...
- reflect动画,Flutter Animations动画效果合集(全网最全)
CurvedAnimation(曲线动画) Tween(补间动画/伸缩动画) Loading加载动画(ProgressDialog) Fade 渐入淡出动画 AnimatedBuilder(曲线动画) ...
最新文章
- 三十之惑–面霸的八月(第一部分)
- mysql修改字段为现在时间_mysql如何修改字段自动生成时间
- B2B平台推广技巧让网络营销更上一个台阶!
- 使用C#格式化字符串 1
- 电脑能上网,手机连上wifi不能上网
- @RabbitListener组合注解消费消息
- Windows桌面任务栏透明化
- 2021年中国成人商店市场趋势报告、技术动态创新及2027年市场预测
- 16.高性能MySQL --- MySQL用户工具
- Pyspark:电影推荐
- 关于attachEvent与addEventListener事件绑定兼容问题
- 万能密码 php,分析PHP网站下的万能密码
- C# 如何将EMF文件转换成PNG文件
- 【引人深思】程序员锁死服务器致公司倒闭
- ISM频段ZigBee传输距离的估算
- Linux(一) VFS虚拟文件系统
- root 红米note5_红米Note5 root教程_红米Note5卡刷root包来获取root权限
- TLC2558IDWIC 12BIT 400 KSPS AD S/O 20-SOIC
- 【Python个人学习笔记】--- pyc文件(了解)
- ant desigh of angular:让nz-tree-select与nz-tree的值保持一致
热门文章
- 微信小程序 获取nickName为 “微信用户” 而且 头像 为null
- 涂鸦智能模组SDK开发系列课程——SoC开发环境搭建(一)
- linux学习记录-coredump segment fault
- 苹果全新iCloud战略:附加服务+价格战
- VIM 将一个文件中的多行复制到另一个文件
- 电竞比分源码 免买分 可二开
- Mac: imovie导出视频报错-1(com.apple.Compressor.CompressorKit.ErrorDomain 错误 -1)
- 用计算机弹可能否,《计算机网络对抗技术》.pdf
- Java---根据姓查找学生的信息
- 网友自制华硕Eee PC信封版广告