FlatButton 原本已经包含了 点击水波纹 效果 不过目前已经弃用,由TextButton 代替,但 TextButton 的效果感觉没有 FlatButton 的好,另外 MaterialButton 也有 水波纹 效果
这里 选择使用 InkWell 来实现!

1、封装 RippleButton

class RippleButton extends StatelessWidget {final Function onTap;final Widget child;final BorderRadius borderRadius;final Color bgColor;Decoration decoration;RippleButton({this.child, this.onTap, this.bgColor = Colors.white, this.borderRadius, this.decoration});@overrideWidget build(BuildContext context) {if(decoration==null){decoration=BoxDecoration(//不能同时”使用Ink的变量color属性以及decoration属性,两个只能存在一个color: bgColor,//设置圆角borderRadius: borderRadius);}return Center(child: Material(//INK可以实现装饰容器child: Ink(decoration: decoration,child: InkWell(//圆角设置,给水波纹也设置同样的圆角//如果这里不设置就会出现矩形的水波纹效果borderRadius: borderRadius,//设置点击事件回调onTap: onTap,child: child))));}
}

2、调用方式

RippleButton(onTap: () {},bgColor: Colors.purple,child: Container(width: 300.0,height: 50.0,//设置child 居中alignment: Alignment(0, 0),child: Text("登录",style: TextStyle(color: Colors.white, fontSize: 16.0))))

效果如下图:

圆角widget 设置水波纹点击效果:

RippleButton(onTap: () {},borderRadius: BorderRadius.all(new Radius.circular(25.0)),bgColor: Colors.purple,child: Container(width: 300.0,height: 50.0,//设置child 居中alignment: Alignment(0, 0),child: Text("登录",style: TextStyle(color: Colors.white, fontSize: 16.0))))

效果如下图:

点击图片水波纹效果:

class RippleButton extends StatelessWidget {@overrideWidget build(BuildContext context) {return new Center(child: new Material(child: new Ink(child: new InkWell(onTap: () {},child: Container(width: double.infinity,height: 200,child: Ink.image(image: ExtendedNetworkImageProvider('http://vdposter.bdstatic.com/73d43d2afdd02fedd5ff53f765755289.jpeg',cache: true,imageCacheName: 'pageX')))))));}
}

Ink相关的有Ink、InkWell、InkFeature、Ink.image、InkSplash、InkRipple、InkResponse、InkDecoration、InkHighlight,有些是组件,有些是效果,有些是属性。

Flutter 点击水波纹 效果相关推荐

  1. android水波纹动画制作,Framer之事件 | 如何制作安卓点击水波纹效果?

    之前的 Framer 教程都是按照个人喜好去写的,没有按照难易程度形成系列.为了让大家能更好地入门,我准备由易到难写一个系列教程,尽量保持在每周一篇的频率. 导读:事件是 Framer 中的一个重要概 ...

  2. html实现鼠标移动波纹效果,js实现拖动滑块和点击水波纹效果

    本篇文章就给大家介绍js实现拖动滑块效果和点击水波纹效果的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. 拖动滑块效果: 先看看效果图: Document input[type ...

  3. android水波纹点击动画,android 控件点击水波纹效果的几种方案

    目前我所知道的至少有三种可以实现点击水波纹的效果 第一种:安卓自带的方法 在安卓中有自带的一种属性,可以实现水波纹的效果,就是在所需要点击的控件属性加上如下代码: android:background ...

  4. 点击水波纹效果html5,使用CSS实现逼真的水波纹点击效果

    这篇文章特别介绍如何使用CSS来完成水波纹的效果. div的层层叠叠 虽然webkit具有遮罩的能力(webkit mask),不过webkit虽然强大,但在跨浏览器上总是它的罩门,况且在性能上也是往 ...

  5. Flutter TabBar 标签栏背景颜色、点击水波纹颜色配置

    题记 -- 执剑天涯,从你的点滴积累开始,所及之处,必精益求精. Flutter是谷歌推出的最新的移动开发框架. [x1]微信公众号的每日提醒 随时随记 每日积累 随心而过 文章底部扫码关注 [x2] ...

  6. 去除安卓点击的水波纹效果

    在引用了appcompat_v7包后,Android Studio主题样式Base application theme会自动引用最新的主题样式Theme.AppCompat.Light:sdk21版本 ...

  7. Android点击水波纹扩散效果整理(附带一个自定义的水波纹效果控件)

    很久很久没有写博客了,说来也有点惭愧.正好最近整理自己的项目工程目录,看到一些值得分享的控件,准备在之后的几篇博客中准备把它们陆续搬运上来. 这篇博客准备整理一下Android Material De ...

  8. Flutter InkWell 和 Ink --按钮“水波纹”效果

    InkWell InkWell组件在用户点击时出现"水波纹"效果,InkWell简单用法: InkWell(onTap: (){},child: Text('这是InkWell点击 ...

  9. android自定义水波纹,Android自定义View——实现水波纹效果类似剩余流量球(示例代码)...

    最近突然手痒就想搞个贝塞尔曲线做个水波纹效果玩玩,终于功夫不负有心人最后实现了想要的效果,一起来看下吧: 效果图镇楼 一:先一步一步来分解一下实现的过程 需要绘制一个正弦曲线(sin)或者余弦曲线(c ...

最新文章

  1. 梯度下降理解和梯度下降计算检查斯坦福
  2. Java中山脉的绘制---递归方法
  3. linux shell 缺少 ps 命令
  4. Redhat Linux通过RPM安装搭建LAMP环境
  5. 深度学习的非主流应用
  6. SAP CRM Category创建场景
  7. aspx后台调用前台jquery_jQuery调用Asp.Net后台方法
  8. 一个前端的10年前端职业路
  9. LWIP2.0.2 FreeRTOS MQTT 客户端的 使用
  10. Bailian2933 停车场收费【水题】
  11. windows下创建目录函数_mkdir
  12. 微信号php756,微信机器人开发者常说的“提62”是什么?微信62数据是什么意思?...
  13. winform给textBox控件设置默认值
  14. idea 调用webservice接口
  15. PostgreSQL 透明加密(TDE,FDE) - 块级加密
  16. MFC基于select模型的套接字类之服务器(1)
  17. 他是清华姚班的天才少年,17 科满分传奇,32 岁斩获“诺贝尔风向标”斯隆奖...
  18. URLEncoder与URLDecoder编码相互转换
  19. 【稳定性day4】美团外卖高可用的演进之路 - 日活两千万的挑战
  20. C语言程序实现矩阵相乘

热门文章

  1. 单目图像深度估计 - 应用篇:Learning to be a Depth Camera
  2. 亚马逊全球开店运营不能触碰的红线
  3. linux ora01034 27101,ORA-01034和ORA-27101的解决方法
  4. 成都传智播客 不用“包就业”赚生源
  5. python中divmod函数的用法
  6. 上万个用户请求,服务器如何区分
  7. 使CPU利用率跑高的脚本致使服务器死机
  8. nginx 压缩和上传文件大小限制
  9. YOLOv3庖丁解牛(三):YOLOv3损失函数
  10. 加入ASFF,优化yolov5的手与人识别任务