Image 图片组件

用于显示一张图片,可以从文件、内存、网络、资源里加载。可以指定适应方式、样式、颜色混合模式、重复模式等

TextField 输入框

由于输入的组件,拥有复杂的属性。可指定控制器、文字样式、装饰线、行数限制、游标样式等。接收输入变化、完成输入等事件。

MaterialApp Material应用

Material应用的顶级组件,包含路由生成器、主题、语言、主页等属性。

AnimatedCrossFade 组件切换

将两个组件切换时呈现动画效果,可指定动画曲线、时长、对齐方式等属性。是一个非常有用的组件。

AnimatedContainer 容器动画

集合alignment、padding、color、decoration、width、height、constraints、margin、transform于一身,这些属性皆可动画,可指定时长和曲线,有动画结束事件。

CupertinoContextMenu ios弹出菜单

一个华丽的iOS风格按钮弹出框,长按时会以动画的形式弹出菜单面板,通常和CupertinoContextMenuAction联用。

RawChip 原生小条

各自Chip组件的始祖,拥有各自Chip表现的能力,支持选中、点击、删除等事件。详见Chip、FilterChip、ActionChip、InputChip、ChoiceChip。

Material 材料组件

Material风格组件的领军人物,灵魂核心。可指定颜色、影深、类型、阴影颜色、形状等属性。

WillPopScope 返回拦截

当一个界面中有WillPopScope组件时,在页面返回时会触发回调,决定是否返回。可用于二次确认退出的场景。

Hero 共享动画

可指定标签名,两个界面跳转时具有相同标签的组件会进行共享动画。一个界面中不能存在两个同名的Hero标签

FutureBuilder 异步构造器

可指定一个Future对象,能够监听异步执行的状态,并在构造器中根据状态构建不同的界面。注意该Future对象不能和FutureBuilder同时创建,否则可能过渡刷新。

StreamBuilder 流构造器

可指定一个stream对象,能够监听异步执行的状态,并在构造器中根据状态构建不同的界面。

RawMaterialButton 原始按钮

原始的Material按钮,按钮界的幕后大佬,可接受点击、长按、高亮变化事件,可指定颜色、形状。影深、内边距等属性。

Overlay 悬浮组件

可以将组件在全应用中进行悬浮显示,能够添加或移除组件,它们有独立管理的栈。

Stepper 步骤组件

步骤组件,可指定一步步的操作,可以自定义步骤的内容,确认和返回的按钮以及步骤排列的方向。

Checkbox 复选框

复选框组件,常用于配置的切换,可指定颜色,接收状态变化回调,也可指定三态。

Switch 切钮

切换选钮,常用于配置的切换,可指定小圆颜色、图片,滑槽颜色等,接收状态变化回调。

Slider 滑块

滑块组件,可以在指定的最大值和最小值之间拖动选择。可指定颜色、分段数及显示的标签,接收进度变化回调。

RangeSlider 范围滑块

范围滑块组件,支持两点拖动,获取之间的范围。可指定颜色、分段数及显示的标签,接收进度变化回调。

Radio 选钮

由于选中和未选择状态的圆钮,多个Radio根据逻辑可以实现单选或多选的需求。可指定颜色,接收状态变化回调。

RefreshIndicator 刷新指示器

内部嵌套可滑动区域,下滑时会显示刷新图标,松手后可以执行指定的异步方法。可指定颜色、到顶端距离等属性。

DropdownButton 下拉按钮

用于下拉选择的按钮,可指定图标、影深、提示等属性,接收选中变化的事件。

PopupMenuButton 菜单按钮

弹出菜单栏,可指定偏移、颜色、影深、形状等属性。接收item选中的事件和取消选择事件。

AppBar 应用头栏

一个应用顶部栏的通用结构,可在指定的部位放置相应的组件,常用于Scaffold组件中。

BottomNavigationBar 底部导航

一个底部导航栏,通常用于Scaffold组件的底部,可指定颜色和模式,接受点击回调,可与PageView实现切页效果。

BottomAppBar 底部导航

一个可凹嵌的底部导航栏,通常用于Scaffold组件的底部,可指定颜色、影深、形状等属性,可与PageView实现切页效果。

Scaffold 脚手架

一个通用app结构,包括上、下、左、右、中、浮动按钮部位,对应位置可盛放组件。

Draggable 可拖拽组件

可以让组件在界面上任意拖拽,可存放一个泛型T的数据。通常和DragTarget组合使用,来完成拖拽效果。

DragTarget 拖拽目标

一个拖拽的目标区域,可接收Draggable组件的信息。可以获取拖拽时的回调。

LongPressDraggable 拖拽目标

一个拖拽的目标区域,可接收Draggable组件的信息。可以获取拖拽时的回调。

AnimatedSwitcher 动画切换

当子组件变化时执行动画,需要指定子组件的key进行标识。动画方式可以自定义,能指定动画时长、动画曲线等属性。

SnackBar 信息提示条

作为组件来说是一个简单的结构组件,可指定形状、影深、背景色等。一般通过ScaffoldState的showSnackBar方法从底部弹出。

BottomSheet 底部抽屉

作为组件来说是一个简单的结构组件,可指定形状、影深、背景色、内部组件构造器等。一般通过ScaffoldState的showBottomSheet方法从底部弹出。

InkWell 水波纹

InkResponse的子类,基本属性同InkResponse。一个矩形区域的水波纹,可以知道圆角半径,边线形状等。

CupertinoApp iOS应用

iOS风格应用的顶级组件,包含路由生成器、主题、语言、主页等属性。

Dismissible 滑动消失

滑动时可显示底部组件,可指定滑动的方向和交叉轴的偏移量。接收确认消失和消失时的回调。

ReorderableListView 可重排序列表

可以进行长按排序的ListView,可指定滑动方向、是否反向、滑动控制器等属性。

ListWheelScrollView 滚轮列表

高大上的柱面滑动列表,精妙十足,可指定item高度、透视、挤压等属性,接收滑动时选中事件。

Form 表单组件

表单组件,可以接收其下的FormField组件的变化回调,通过onWillPop拦截页面返回,通过FormState可对表单字段进行保存或校验。

TextFormField 文字表单输入

和TextField属性基本一致,在其基础上增加字段的校验和提交的回调,FormState的save会触发onSaved回调。

CupertinoButton iOS按钮

iOS风格的按钮。可指定颜色、点击时透明度、内边距、圆角等。可接收点击事件。

CupertinoSwitch iOS切钮

iOS风格的切换选钮,常用于配置的切换,可指定颜色,接收状态变化回调。

CupertinoSlider iOS滑块

iOS风格的滑块组件,可以在指定的最大值和最小值之间拖动选择。可指定颜色,接收进度变化回调。

CircularProgressIndicator 圆形进度

圆形的进度显示,可指定颜色、线宽、进度等属性。value为null时会不停旋转。

LinearProgressIndicator 水平进度

直线型的进度显示,可指定颜色、进度等属性。value为null时会不停旋转。

Tooltip 提示工具

由于显示提示信息的组件,长按时显示信息。可指定边距、显示时长、文字样式、装饰灯属性。

ExpansionTile 展开瓦片

一个通用的展开栏,可在指定的部位安放组件,点击时会折叠显隐下方组件。接收折叠时事件。

SelectableText 可选择文字

可选择的文字,可以选择、复制。可指定浮标的颜色、大小、文字样式、对齐方式等。

TabBar 标签栏

可滑动和点击标签栏,通常用于AppBar的底部。可与TabBarView联用,实现滑页的效果。

CupertinoNavigationBar iOS导航

一个iOS风格的应用顶部栏的通用结构,可在指定的部位放置相应的组件。可指定背景色、间距、边线等属性。

CupertinoTabBar iOS页签

一个iOS风格的TabBar,通常用于CupertinoTabScaffold。可指定颜色、图标大小、边线等数据。接收item的点击事件。

RotationTransition 旋转变换

可容纳一个子组件,并使其进行旋转动画,需要提供动画器turns,拥有alignment属性。

ScaleTransition 缩放变换

可容纳一个子组件,并使其进行缩放动画,需要提供动画器scale,拥有alignment属性。

SizeTransition 尺寸变换

可容纳一个子组件,并使其进行尺寸动画,需要提供动画器sizeFactor,可指定尺寸变化轴及轴向的axisAlignment。

PositionedTransition 位置变换

只能用于Stack中,可容纳一个子组件,让其在两个矩形间进行位置动画,需要提供动画器rect。

AlignTransition 对齐变换

AnimatedWidget的子类,使用Alignment类型的动画器让子组件在两个Alignment对象之间进行过渡动画。

SlideTransition 滑动变换

AnimatedWidget的子类,使用Offset类型的动画器让子组件在两个Offset对象之间进行过渡动画。

DecoratedBoxTransition 装饰变换

AnimatedWidget的子类,使用Decorated类型的动画器让子组件在两个Decorated对象之间进行过渡动画。

DefaultTextStyleTransition 文字样式变换

AnimatedWidget的子类,使用TextStyle类型的动画器让文字组件在两个TextStyle对象之间进行过渡动画。

RelativePositionedTransition 矩形位置变换

AnimatedWidget的子类,使用Rect类型的动画器让子组件在两个Rect对象之间进行过渡动画。

AnimatedList 动画列表链接

强化版的ListView,可以对item进行动画处理。比如在添加、删除是item的动画。

AnimatedOpacity 透明动画

能让子组件进行Opacity(透明度)动画,可指定时长和曲线,有动画结束事件。

AnimatedPadding 边距动画

能让子组件进行Padding(内边距)动画,可指定时长和曲线,有动画结束事件。

AnimatedAlign 对齐动画

能让子组件进行Align(对齐)动画,可指定时长和曲线,有动画结束事件。

AnimatedPositioned 定位动画

能让子组件进行Positioned(定位)动画,可指定时长和曲线,有动画结束事件。只能用于Stack之中。

AnimatedPositionedDirectional 方向定位动画

能让子组件进行PositionedDirectional(方向定位)动画,可指定时长和曲线,有动画结束事件。只能用于Stack之中。

AnimatedDefaultTextStyle 容器动画

能让子文字组件进行TextStyle(文字样式)动画,可指定时长和曲线,有动画结束事件。

MonthPicker 月份选择器

月份的选择组件,自带上下月切换的监听。可指定选择的日期范围、选中日期等,接收日期选中事件。

YearPicker 年份选择器

年份的选择组件,长相比较寒酸。可指定选择的日期范围、选中日期等,接收每份选中事件

CupertinoDatePicker iOS日期选择器

高大上的滑滚日期选择器,可指定选择的类型、日期范围等,接收日期选中事件。

CupertinoTimerPicker iOS时间选择器

高大上的滑滚时间选择器,可指定选择的类型、初始时间、背景色等,接收时间选中事件。

CupertinoPicker iOS选择器

高大上的柱面滑动选择器,精妙十足,可指定很多配置属性,接收滑动时选中事件。

Ink 水波

使InkWell和InkResponse的水波纹有效 用于绘制图像或其他装饰的Material组件。

CupertinoPageScaffold iOS页面脚手架

iOS风格的页面布局脚手架结构,可指定顶部的导航栏和页面背景色。

CupertinoTabScaffold iOS页签脚手架

iOS风格的页面布局脚手架结构,可指定最底部的导航切换栏可主体内容页。

ExpansionPanelList 展开列表

可展开的列表组件,可根据逻辑来实现单展开或多展开。可指定展开动画时长,接收展开回调

Scrollbar 滑动指示栏

需要包裹一个可滑动区域,当可滑动时,会显示滑动的bar用于指示。

CupertinoScrollbar iOS滑动指示栏

iOS风格的滑动指示栏,需要包裹一个可滑动区域,当可滑动时,会显示滑动的bar用于指示。

AnimatedSize 尺寸动画

子组件大小发生变化是,进行动画渐变,可指定时长、对齐方式、曲线、vsync等属性。

CupertinoActivityIndicator iOS指示器

iOS样式的loading显示组件,可指定半径和是否旋转。

TabBarView 标签页

通常与TabBar联用,实现滑页的效果。一般不单独使用。

ExpandIcon 展开图标

一个展开按钮,点击时会自己执行旋转180的动画。可指定颜色、大小、边距,接收点击事件。

SnackBarAction 信息提示条按钮

一般只用于SnackBar中,接受点击事件。点击一次后该按钮就会被禁用,可以指定颜色和禁用时颜色。

CupertinoContextMenuAction ios弹出菜单按钮

一般只用于CupertinoContextMenu中的点击按钮。可指定孩子和尾部图标,接收点击事件。

LicensePage 证书页

应用的证书页,可指定应用图标、应用名、应用版本号等信息,其他由Flutter自动生成。

InkResponse 水波纹响应

水波纹的点击效果,接收点击、双击、长按、取消、高亮变化事件,可指定水波纹颜色、半径、高亮形状等属性。

TableRowInkWell 表格水波纹

只能用于Table的水波纹,接收点击、双击、长按、高亮变化事件,水波纹会作用于表格的一行。

PopupMenuDivider 弹出菜单分割线

PopupMenuButton的分割线,一般不单独使用,可指定高度。