本文介绍Flutter中常用按钮控件,包括:MaterialButton 、RaisedButton 、FlatButton 、IconButton 、FloatingActionButton 、OutlineButton...有一个onPressed属性来设置点击回调,当按钮按下时会执行该回调,如果不提供该回调则按钮会处于禁用状态,禁用状态不响应用户点击。 1、按钮点击示例 ?...IconButton 图标按钮,只能是纯图标,按钮不可展示文案。 FloatingActionButton 浮动按钮,可显示文字和图标,二者选其一。...OutlineButton 外边框按钮,可设置按钮外边框颜色。 ButtonBar 水平布局的按钮容器,可放置多个Button或Text。...,可设置按钮外边框颜色。
), ), ), ), ); }), ); } 方法三 1.场景 现在需要做一个Test按钮...2.思路 1)悬浮按钮可以使用flutter提供的Overlay + OverlayEntry 组合实现 2)拖拽功能可以使用GestureDetector手势按钮或者Draggable实现(PS:我做了一版...,把它包裹在MaterialApp外面,就可以实现悬浮在所有的组件之上的一个按钮啦(当然也可以不是按钮,具体样式可以自己定义)。...下面我们来看一下PubScaffold中的代码吧~ import 'dart:math'; import 'package:flutter/material.dart'; class PubScaffold...这里我们用的是flutter自带的material库中的Overlay组件,具体使用方法如下: void _insertOverlay(BuildContext context) { return
, ), ), ), ); }), ); } 方法三 1.场景 现在需要做一个Test按钮...2.思路 1)悬浮按钮可以使用flutter提供的Overlay + OverlayEntry 组合实现 2)拖拽功能可以使用GestureDetector手势按钮或者Draggable实现(PS:我做了一版...,把它包裹在MaterialApp外面,就可以实现悬浮在所有的组件之上的一个按钮啦(当然也可以不是按钮,具体样式可以自己定义)。...下面我们来看一下PubScaffold中的代码吧~ import 'dart:math'; import 'package:flutter/material.dart'; class PubScaffold...这里我们用的是flutter自带的material库中的Overlay组件,具体使用方法如下: void _insertOverlay(BuildContext context) { return
Flutter提供了丰富的按钮组件可以让我们快速的构建UI界面。 常见的按钮组件如下: 1. RaisedButton :凸起的按钮; 2. FlatButton :扁平化的按钮; 3....OutlineButton:线框按钮; 4. IconButton :图标按钮; 5. ButtonBar:按钮组; 6....FloatingActionButton:浮动按钮; 按钮组件常见的属性: 1. onPressed 按下按钮时触发的回调方法,为必填参数,如果值为 null 表示禁用按钮,会显示禁用相关样式; 2....CircleBorder() 全圆形; 代码示例: import 'package:flutter/material.dart'; class ButtonPage extends StatelessWidget...用浮动按钮实现类似闲鱼APP的底部导航条效果,以下是代码示例: import "package:flutter/material.dart"; // 标签切换页 class Tabs extends
任何人都可以建议创建一个自定义按钮的方式/需要什么FloatingActionButton吗? 我认为RawMaterialButton更适合。...例: import 'package:flutter/material.dart'; class SettingPage extends StatefulWidget { @override...CircleAvatar( backgroundImage: NetworkImage(userAvatarUrl), ) 按钮示例: CircleAvatar(...child: IconButton( icon: Icon(Icons.home), onPressed: () {}, ), ) 此代码将帮助您添加按钮而不会出现不必要的填充
实现下图的一个按钮 截屏2019-12-2611.00.10.png 代码如下 /// 登录按钮 Widget buildLoginButtonWidget() { return Container
2.常用组件 在Flutter中,有多种按钮组件可以用于创建交互式界面。主要的按钮组件包括: ElevatedButton:这是一个凸起的按钮,常用于主要的操作。...MaterialButton:这是一个更通用的按钮组件,可以高度自定义,包括形状、颜色、阴影等。 DropdownButton:这是一个下拉按钮,允许用户从一系列项中选择一个。...InkWell:虽然不是一个标准的按钮组件,但它可以用来给几乎任何widget添加水波纹效果,从而制作自定义按钮。...import 'package:flutter/material.dart'; void main() { runApp(MaterialApp( // 应用程序的标题,显示在任务管理窗口中...使用 Image 组件: import 'package:flutter/material.dart'; void main() { runApp(MaterialApp( // 应用程序的标题
Flutter提供了丰富的按钮组件可以让我们快速的构建UI界面。 常见的按钮组件如下: 1. RaisedButton 凸起的按钮; 2. FlatButton 扁平化的按钮; 3....OutlineButton 线框按钮; 4. IconButton 图标按钮; 5. ButtonBar 按钮组; 6....FloatingActionButton 浮动按钮; 按钮组件常见的属性: 1. onPressed 按下按钮时触发的回调方法,为必填参数,如果值为 null 表示禁用按钮,会显示禁用相关样式; 2....CircleBorder() 全圆形; 代码示例: import 'package:flutter/material.dart'; class ButtonPage extends StatelessWidget...APP的底部导航条效果,以下是代码示例: import "package:flutter/material.dart"; // 标签切换页 class Tabs extends StatefulWidget
Flutter 中的单选按钮组件有两种。 1. Radio 单选按钮,一般用来表现一些简单的信息。...常用属性如下: (1). value 单选的值; (2). onChanged 选择改变触发的事件; (3). activeColor 选中时的颜色; (4). groupValue 多个按钮选择组的值...常用的属性如下: (1). value 单选的值; (2). onChanged 选择改变触发的事件; (3). activeColor 选中时的颜色; (4). groupValue 多个按钮选择组的值...代码示例 import 'package:flutter/material.dart'; class RadioPage extends StatefulWidget { RadioPage...:Text("这是二级标题"), secondary:Image.network('https://www.itying.com/images/flutter
Flutter提供三个基本按钮控件: FloatingActionButton:圆形按钮,一般在屏幕内容前面,处理界面中最常用、最基础用户动作。...这就对应按钮控件中的两个最重要参数: onPressed参数用于设置点击回调,告诉Flutter在按钮被点击时通知我们。...若onPressed参数为空,则按钮会处于禁用状态,不响应用户点击 child参数用于设置按钮内容,告诉Flutter控件应长成啥样,即控制按钮控件的基本样式。...最后学习按钮控件。Flutter提供多种按钮控件,使用方法类似。控件初始化的child参数用于设置按钮长什么样,而onPressed参数则用于设置点击回调。...与Text类似,按钮内部也有丰富UI定制接口。 UI基本信息表达,Flutter经典控件与原生Android、iOS系统提供的控件无本质区别。
Flutter 中的多选按钮组件有两种。 1. Checkbox 多选按钮,一般用来表现一些简单的信息。...代码示例 import 'package:flutter/material.dart'; class CheckBoxPage extends StatefulWidget { CheckBoxPage
Flutter中有很多Button组件,例如RaisedButton、FlatButton、IconButtton、OutlineButton、ButtonBar、FloatingActionButton...FlatButton:扁平化的按钮 OutlineButton:线框按钮 ButtonBar:按钮组 FloatingActionButton:浮动按钮 RaisedButton 属性 描述 textColor...文本颜色 color 按钮颜色 disabledColor 按钮被禁用时的颜色 disabledTextColor 按钮被禁用时的文本颜色 splashColor 点击按钮时水波纹的颜色 highlightColor...点击(长按)按钮后按钮的颜色 elevation 阴影的范围,值越大阴影范围越大 padding 内边距 shape 设置按钮形状 FloatingActionButton 属性 描述 child...context) { // TODO: implement build return Scaffold( appBar: AppBar(title: Text('Flutter
与iOS、Android和React类似,作为一个UI框架,Flutter自然也提供了很多UI控件。而文本、图片和按钮,则是这些不同的UI框架中构建视图都要用到的三个最基本的控件。...按钮 通过按钮,我们可以响应用户的交互事件。Flutter提供了三个基本的按钮控件:FloatingActionButton、FlatButton和RaisedButton。...既然是按钮,因此除了控制基本样式之外,还需要响应用户点击行为。这就对应着按钮控件中两个最重要的参数了: onPressed 参数用于设置点击回调,告诉Flutter在按钮点击时通知我们。...如果 onPressed 参数为空,则按钮会处于禁用状态,不响应用户点击。 child 参数用于设置按钮的内容,告诉Flutter控件应该长成什么样,也就是控制着按钮控件的基本样式。...最后,我们学习了按钮控件,Flutter提供了多种按钮控件,而它们的使用方法也都类似。其中,控件初始化的child参数用于设置按钮长什么样,而onPressed参数则用于设置点击回调。
我在之前的文章文本、图片和按钮在Flutter中怎么用中,简单介绍过按钮组件,本篇文章来详细聊聊Flutter中的各种按钮组件的各种应用场景。...在Flutter中,有很多的按钮组件,常见的有:FlatButton、RaisedButton、OutlineButton、IconButton、ButtonBar、FloatingActionButton...首先来看一下按钮组件的属性: onPressed,必填参数,按下按钮时触发的回调,接收一个方法,传null值表示按钮禁用,会显示禁用相关样式 child,表示按钮展示状态的Widget,一般为一个文本组件...textColor,文本颜色 color,按钮的背景颜色 disabledColor,按钮禁用时的背景颜色 disabledTextColor,按钮禁用时的文本颜色 splashColor,点击按钮时水波纹的颜色...ButtonBar是一个按钮组,也就是说将多个按钮组合在一起。
Button 在日常中是必不可少的,和尚尝试过不同类型的 Button,也根据需求自定义过,今天和尚系统的学习一下最基本的 Button; Flutter 中没有 Button Widget,但提供了很多不同类型的...IconButton 系列 IconButton 系列属于图标按钮,使用相对简单;其核心是 InkResponse 水波纹效果; IconButton 源码分析 const IconButton({...// 内容周围边距 this.constraints = const BoxConstraints(minWidth: 88.0, minHeight: 36.0), // 默认按钮尺寸...foregroundColor 为按钮上层子元素颜色,若子元素本身设置颜色则不生效;backgroundColor 为按钮背景色; foregroundColor: Colors.redAccent.withOpacity...elevation 按钮默认阴影高度,即 z轴高度;highlightElevation 为点击高亮时阴影高度; elevation: 0.0, highlightElevation: 10.0, ?
和尚前两天刚学习了 ButtonBar 按钮容器,今天顺便学习一下 ToggleButtons 按钮切换容器组,其切换效果可以应用在日常 TabBar 切换位置; ToggleButtons 源码分析...// 初始水波纹颜色 this.splashColor, // 选中时水波纹颜色 this.focusNodes, // 接受对应于每个切换按钮焦点列表...// 边框圆角弧度 this.borderWidth, // 边框宽度 }) 简单分析源码可得,ToggleButtons 是一组水平方向切换按钮容器组...Widgets 是通过 Row 进行排列的;children 和 isSelected 是必备属性,两者数组长度要一致; 案例尝试 1. children & isSelected children 的按钮状态由...8. focusNodes focusNodes 用于接受对应于每个切换按钮的 FocusNode 列表,焦点用于确定键盘事件应该影响哪个子 Widget,若设置 focusNodes,其数组长度应与子
和尚继续尝试 Flutter 的基本按钮;今天和尚学习 MaterialButton 系列相关 Button;该系列以 MaterialButton 为父类,衍生出 RaisedButton...凸起按钮,FlatButton 扁平按钮和 OutlineButton 边框按钮;可根据不同场景灵活运用; ?...Color disabledColor, // 不可点击时按钮背景色 Color highlightColor, // 点击高亮时按钮背景色...Color disabledColor, // 不可点击时按钮背景色 Color highlightColor, // 点击高亮时按钮背景色...shape 为 Button 形状;因按钮没有 Material 中 hight 属性,需要采用 padding 或外层依赖其他 Widget 调整按钮大小; RaisedButton(child: Text
Flutter 允许您使用FloatingActionButton小部件添加浮动操作按钮。但是,它不允许您拖动按钮。如果你想让它可拖动怎么办。...下面是用于创建可拖动浮动操作按钮的类。它有一些参数,包括child(要设置为按钮的小部件)、initialOffset(移动前的初始偏移量)和onPressed(单击按钮时调用的回调)。...一个简单的圆形小部件作为child参数传递,这意味着它成为可拖动的按钮。您可以为按钮使用任何小部件,包括 Flutter 的FloatingActionButton小部件。...import 'package:flutter/material.dart'; void main() => runApp(MyApp()); class MyApp extends StatelessWidget...您还需要获取父级和按钮的大小,以防止按钮脱离父级框。
和尚对于 Flutter 并不系统,总是遇到问题才会准备尝试,今天和尚准备学习一下下拉选择框;Android 提供了便利的 Spinner 而 Flutter 对应的是 DropdownButton...// 阴影高度 this.style, // 选项列表 item 样式 this.underline, // 按钮下划线..., // 启动时图标颜色 this.iconSize = 24.0, // 图标尺寸 this.isDense = false, // 是否降低按钮高度...icon 为下拉按钮右侧图标,iconSize 为下拉按钮图标尺寸,禁用和启动状态下均可设置;若 icon 设置尺寸以 icon 尺寸为准; icon: Icon(Icons.arrow_right),...isDense 用来调整按钮高度,true 时将按钮高度缩小,缩小的高度通过 Theme _kDenseButtonHeight 决定,但不会缩小太多导致图标剪切; // 源码 double get _
封装的目的 虽然 Flutter 中提供的组件众多,但并非所有组件都是复杂的。...这难道不是导致 Flutter 组件数量庞大的 "元凶" 吗? 对于编程者来说,写重复代码是很反感的。试想一下,如果不用 BackButtonIcon 来封装这个构建逻辑。...对我个人来说,水波纹能给用户一个交互的反馈,本身是比较好的,但一个小小的图标按钮有水波纹,感觉怪怪的。...因为 Scaffold 在构建逻辑中有一些和 FloatingActionButton 联动的效果,比如浮动按钮方位、动画等。...---- 更多 Flutter 内置组件介绍,欢迎关注 《Flutter 组件集录》 专栏。
领取专属 10元无门槛券
手把手带您无忧上云