自定义渐变背景按钮

文章目录

  • 自定义渐变背景按钮
  • 先看效果图
  • 关键代码:
    • 背景渐变色
    • 点击触发水波纹
    • 具体代码实现:
    • 注意点

先看效果图

关键代码:

背景渐变色

BoxDecoration(gradient: const LinearGradient(colors: [Color(0xff5eb680),Color(0xff00acb6),Color(0xff00acb6),]),borderRadius: BorderRadius.circular(ScreenUtil().setHeight(44.0)),)

点击触发水波纹

InkWell:
组件大家应该知道点击会有水波纹效果;但是只有给背景设置了颜色,那么就没有效果了;这里解决方式:加入Ink,Material组件进行一个包裹,颜色背景设置给上层,具体代码如下:

具体代码实现:

import 'package:flutter/material.dart';
import 'package:flutter_ad/utils/screen_util.dart';
/** 登录注册的绿色长条形按钮* text 按钮为文字内容* top为按钮距离顶部控件的高度*/
class LoginButtonWidget extends StatefulWidget {final String text;final double top;final VoidCallback onTap;const LoginButtonWidget({Key key, @required this.text, this.top = 0, this.onTap}): super(key: key);@override_LoginButtonWidgetState createState() => _LoginButtonWidgetState();
}class _LoginButtonWidgetState extends State<LoginButtonWidget> {@overrideWidget build(BuildContext context) {return Container(margin: EdgeInsets.only(right: ScreenUtil().setWidth(60.0),left: ScreenUtil().setWidth(60.0),top: ScreenUtil().setWidth(widget.top)),child: Material(borderRadius: BorderRadius.circular(ScreenUtil().setHeight(44.0)),child: Ink(decoration: BoxDecoration(gradient: const LinearGradient(colors: [Color(0xff5eb680),Color(0xff00acb6),Color(0xff00acb6),]),borderRadius: BorderRadius.circular(ScreenUtil().setHeight(44.0)),),child: InkWell(borderRadius: BorderRadius.circular(ScreenUtil().setHeight(44.0)),onTap: widget.onTap,child: Container(alignment: Alignment.center,width: ScreenUtil.screenWidth,height: ScreenUtil().setWidth(90.0),child: Text(widget.text,style: TextStyle(color: Colors.white,fontSize: ScreenUtil().setSp(38.0),),),),),),),);}
}调用:
LoginButtonWidget(text: '登录',top: 30,onTap: () {},)

注意点

  • 我这里使用了ScreenUtil这个屏幕适配的工具,记得一定得初始化;
ScreenUtil.instance = ScreenUtil(width: 720.0, height: 1080.0)..init(context);

创造不易,感谢支持,更多消息请关注公众号:浅滩里的鱼

flutter自定义渐变背景按钮相关推荐

  1. Android 自定义渐变背景

    先看一下效果图,这是线性渐变,可以通过type进行修改类型,根据自己的需求更改颜色. <?xml version="1.0" encoding="utf-8&quo ...

  2. 笔记:MATLAB自定义渐变背景

    问题: 原图: 目标: 主要是得自己定义一个colormap, 然后用fill 或patch 进行颜色填充. 完整的代码如下: clc; clear all; color_1 = [255 110 1 ...

  3. Flutter自定义背景色渐变 按钮 组件

    这是笔者写的第一个 Flutter 自定义组件,在这里和大家分享一下,可能稍微有点粗糙,就当学习使用. 首先我们先来看一下效果图: 代码: import 'package:flutter/materi ...

  4. Flutter RichText支持自定义文字背景

    extended text 相关文章 Flutter RichText支持图片显示和自定义图片效果 Flutter RichText支持自定义文本溢出效果 Flutter RichText支持自定义文 ...

  5. (六)Flutter 基础部件 TextView 和TextStyle Flutter 容器 装饰盒子 边框 圆角 阴影 形状 渐变 背景图像

    RichText:行内多样式的文字 import 'package:flutter/material.dart';class BasicDemo extends StatelessWidget {@o ...

  6. 【Flutter】Flutter 自定义字体 ( 下载 TTF 字体 | pubspec.yaml 配置字体资源 | 同步资源 | 全局应用字体 | 局部应用字体 )

    文章目录 一.Flutter 自定义字体 1.ttf 字体文件 2.ttf 字体资源配置 3.获取字体 4.全局使用字体 5.局部使用字体 二.完整代码示例 三.相关资源 一.Flutter 自定义字 ...

  7. swiper切换按钮位置改变_swiper插件自定义切换箭头按钮

    不知道大家在使用swiper时有没有遇到这样一种需求,swiper插件自定义切换箭头按钮,话不多说,直接上gif. 也就是需要把左右切换的箭头移到容器的外面,自定义箭头的样式. 给swiper容器再加 ...

  8. flex中自定义皮肤的按钮制作

    今天聊一下FLEX中自定义皮肤的按钮的制作.首先这是一个按钮皮肤文件: <?xml version="1.0" encoding="utf-8"?> ...

  9. 如何自定义火狐背景_在Firefox中自定义菜单

    如何自定义火狐背景 Would you like a way to edit menus and remove the extra entries that you do not use or nee ...

  10. 渐变背景(background)效果

    chrom and Safari浏览器: webkit核心的浏览器,使用CSS3渐变方法(css-gradient) -webkit-gradient (type , start_point , en ...

最新文章

  1. springboot 解决跨域问题
  2. Java项目目录结构与解析
  3. [Jarvis OJ - PWN]——[XMAN]level4
  4. CentOS7,zabbix3.4通过,zabbix-Java-gateway监控Tomcat
  5. Javascript实现MD5加密
  6. JoinPoint的用法
  7. win7 远程桌面 复制粘贴
  8. 走进C/C++函数的名字改编
  9. 用border做三角形
  10. 查看服务器ip配置信息失败,U-Center 纳管戴尔的服务器报错“报错获取厂商信息失败,请确认IP、用户名、密码 、厂商、协议与配置文件是否正确”...
  11. 2018 东北四省赛
  12. 【UE4 C++】角色拾取、替换武器(下)
  13. Opencv学习笔记(三) -- 图像压缩与保存
  14. 【2021知识蒸馏】Show, Attend and Distill:Knowledge Distillation via Attention-based Feature Matching
  15. 网络协议梳理(三)(网关和路由器、动态路由算法、Bellman-Ford算法、Dijkstra算法、动态路由协议、TCP和UDP)
  16. java实现数字金额转换成汉字大写金额
  17. 责任链模式实践之Zuul责任链模式
  18. css img图片按比例缩小,保持图片不失真
  19. 动量策略——yyds
  20. 2022-12-09 Ubuntu16.4中访问另一台Ubuntu samba共享出来的目录方法

热门文章

  1. 小包实用工具:国家代码大全
  2. python颜色对照表及颜色搭配
  3. 网页设计 颜色搭配
  4. SQL Server 索引优化——重复索引(部分重复)
  5. java mysql 分区表_mysql分区表
  6. ARM嵌入式核心板介绍
  7. 翠竹林 Opencv+C++之人脸识别
  8. s3c6410 开发板Linux系统支持 K9GAG08U0E的方法(第一篇)
  9. 这个夏天,飞到北纬18°去玩海——带着小样儿去三亚(二)
  10. [python3]读取docx每个段落下的table数据