Flutter 小部件索引

这是 Flutter 捆绑的几乎所有小部件的按字母顺序排列的列表。您还可以按类别浏览小部件

您可能还想查看我们 Flutter YouTube 频道 上的本周小部件视频系列。每个短剧集都展示了一个不同的 Flutter 小部件。有关更多视频系列,请参阅我们的视频页面。

本周小部件播放列表

AbsorbPointer

在命中测试期间吸收指针的小部件。当 absorbing 为 true 时,此小部件通过终止命中测试来防止其子树接收指针事件...

AlertDialog

悬停容器,提示应用用户提供更多数据或做出决定。

Align

在其自身内对齐其子项的小部件,并根据子项的大小选择性地调整自身大小。

AnimatedAlign

动画过渡,在给定对齐方式发生变化时,在给定持续时间内移动子项的位置。

AnimatedBuilder

用于构建动画的通用小部件。AnimatedBuilder 对于希望将动画作为更大构建函数的一部分包含在内的更复杂的小部件非常有用....

AnimatedContainer

逐渐在其一段时间内改变其值的容器。

AnimatedCrossFade

在两个给定子项之间交叉淡入淡出的小部件,并在其大小之间进行动画。

AnimatedDefaultTextStyle

DefaultTextStyle 的动画版本,它会自动在一段时间内过渡默认文本样式(应用于没有显式样式的后代 Text 小部件的文本样式)...

AnimatedList

滚动容器,在插入或移除项目时对其进行动画处理。

AnimatedListState

滚动容器的状态,在插入或移除项目时对其进行动画处理。

AnimatedModalBarrier

防止用户与自身后面的控件交互的小组件。

AnimatedOpacity

Opacity 的动画版本,每当给定的不透明度发生变化时,它都会在给定的持续时间内自动转换子元素的不透明度。

AnimatedPhysicalModel

PhysicalModel 的动画版本。

AnimatedPositioned

Positioned 的动画版本,每当给定的位置发生变化时,它都会在给定的持续时间内自动转换子元素的位置。

AnimatedSize

动画小组件,每当给定的子元素大小发生变化时,它都会在给定的持续时间内自动转换其大小。

AnimatedWidget

当给定的 Listenable 更改值时重建的小组件。

AppBar

在屏幕顶部显示内容和操作的容器。

AspectRatio

尝试将子元素调整为特定纵横比的小组件。

AssetBundle

资源包包含应用程序可用的资源,例如图像和字符串。对这些资源的访问是异步的,以便它们...

Autocomplete

通过输入一些文本并在选项列表中进行选择来帮助用户进行选择的小组件。

BackdropFilter

将滤镜应用于现有已绘制内容,然后绘制子元素的小组件。此效果相对昂贵,尤其是如果滤镜...

Badge

图标状块,传达动态内容,例如计数或状态。它可以包含标签或数字。

Abc
Baseline

根据子元素的基线对其子元素进行定位的容器。

Bottom app bar

在屏幕底部显示导航和关键操作的容器。

Bottom sheet

将补充内容锚定到屏幕底部的容器。

BottomNavigationBar

包含工具以通过轻触在顶级视图之间进行浏览和切换的容器。

BottomSheet

底部工作表从屏幕底部向上滑动以显示更多内容。你可以调用 showBottomSheet() 来实现持久底部工作表或...

卡片

容器,用于显示带有圆角和阴影的框中相关的短内容。

居中

对齐块,将子块居中在自身内。

复选框

表单控件,应用用户可以设置或清除以从一组中选择一个或多个选项。

芯片

小块,可简化信息输入、选项选择、内容筛选或触发操作。

CircularProgressIndicator

圆形进度指示器,旋转以指示繁忙的应用程序。

ClipOval

使用椭圆剪辑其子项的小组件。

ClipPath

使用路径剪辑其子项的小组件。

ClipRect

使用矩形剪辑其子项的小组件。

在垂直方向上布局子小组件列表。

常用按钮

可单击块,可启动操作,例如发送电子邮件、共享文档或点赞评论。

ConstrainedBox

对子项施加额外约束的小组件。

容器

便捷小组件,可组合常见的绘制、定位和调整大小小组件。

CupertinoActionSheet

iOS 风格的模态底部操作表,用于在众多选项中选择一个选项。

CupertinoActivityIndicator

iOS 风格的活动指示器。显示圆形“旋转器”。

CupertinoAlertDialog

iOS 风格的警报对话框。

CupertinoButton

iOS 风格的按钮。

CupertinoContextMenu

iOS 风格的全屏模态路由,在长按子项时打开。用于显示与您的内容相关的操作。

CupertinoDatePicker

iOS 风格的日期或日期和时间选择器。

CupertinoDialogAction

通常在 CupertinoAlertDialog 中使用的按钮。

CupertinoFullscreenDialogTransition

用于召唤全屏对话框的 iOS 风格过渡。

CupertinoListSection

使用 iOS 风格显示可滚动视图的容器。

CupertinoListTile

使用 iOS 风格在列表中创建行的块。

CupertinoNavigationBar

使用 iOS 风格的屏幕顶部容器。许多开发人员将其与 `CupertinoPageScaffold` 一起使用。

CupertinoPageScaffold

基本的 iOS 风格页面布局结构。在背景上定位导航栏和内容。

CupertinoPageTransition

提供 iOS 风格的页面过渡动画。

CupertinoPicker

iOS 风格的选择器控件。用于在短列表中选择一个项目。

CupertinoPopupSurface

圆角矩形表面,看起来像 iOS 弹出表面,例如警报对话框或操作表。

CupertinoScrollbar

iOS 风格的滚动条,指示可滚动小组件的哪一部分当前可见。

CupertinoSearchTextField

iOS 风格的搜索字段。

CupertinoSegmentedControl

iOS 风格的分段控件。用于在水平列表中选择互斥选项。

CupertinoSlider

用于从一系列值中选择。

CupertinoSlidingSegmentedControl

iOS 13 风格的分段控件。用于在水平列表中选择互斥选项。

CupertinoSliverNavigationBar

使用 Sliver 的 iOS 风格导航栏,带有 iOS 11 风格的大标题。

CupertinoSwitch

iOS 风格的开关。用于切换单个设置的开/关状态。

CupertinoTabBar

iOS 风格的底部标签栏。通常与 CupertinoTabScaffold 一起使用。

CupertinoTabScaffold

标签式 iOS 应用程序结构。将标签栏定位在内容标签的顶部。

CupertinoTabView

支持标签之间并行导航的标签的根内容。通常与 CupertinoTabScaffold 一起使用。

CupertinoTextField

iOS 风格的文本字段。

CupertinoTimerPicker

iOS 风格的倒计时选择器。

CustomMultiChildLayout

使用代理对多个子项进行大小调整和定位的小组件。

CustomPaint

在绘制阶段提供画布供其绘制的小组件。

CustomScrollView

使用 Sliver 创建自定义滚动效果的 ScrollView。

CustomSingleChildLayout

将单个子项的布局推迟到代理的小组件。

DataTable

数据表显示原始数据集。它们通常出现在桌面企业产品中。DataTable 小组件实现了此组件。

DatePicker

用于选择日期或日期范围的日历界面。

DecoratedBox

在子项绘制之前或之后绘制 Decoration 的小组件。

DecoratedBoxTransition

DecoratedBox 的动画版本,可为其 Decoration 的不同属性添加动画。

DefaultTextStyle

应用于没有明确样式的后代 Text 小组件的文本样式。

Dismissible

可以通过向指示的方向拖动来关闭的小组件。在 DismissDirection 中拖动或轻弹此小组件会导致子项滑动...

Divider

将列表和容器中的内容分组的细线。

DragTarget

当 Draggable 小部件被放下时接收数据的部件。当可拖动部件被拖动到拖动目标上方时,拖动目标...

Draggable

可以从拖动到 DragTarget 的部件。当可拖动部件识别到拖动手势的开始时,它会显示一个反馈...

DraggableScrollableSheet

一个 Scrollable 的容器,通过调整可滚动部件的大小来响应拖动手势,直到达到限制,然后滚动。

Drawer

一个 Material Design 面板,从 Scaffold 的边缘水平滑动,以在应用程序中显示导航链接。

DropdownButton

显示当前选定的项目和一个箭头,用于打开一个用于选择另一个项目的菜单。

ElevatedButton

一个 Material Design 凸起按钮。一个填充按钮,其材料在按下时会凸起。

ExcludeSemantics

一个部件,它会丢弃其后代的所有语义。这可以用来隐藏原本会被报告但会...

Expanded

一个部件,它会扩展 Row、Column 或 Flex 的子部件。

ExpansionPanel

扩展面板包含创建流程,并允许对元素进行轻量级编辑。ExpansionPanel 部件实现了此组件。

Extended FloatingActionButton

可点击块,它会触发一个操作。这些较宽的块可以容纳一个文本标签,并提供一个更大的目标区域。

FadeTransition

对部件的不透明度进行动画处理。

FittedBox

根据适合度缩放并定位其内部的子部件。

FloatingActionButton

包含一个图标的可点击块,它始终使一个关键操作触手可及。

Flow

一个部件,它实现了流布局算法。

FlutterLogo

以部件形式存在的 Flutter 徽标。此部件尊重 IconTheme。

Form

一个可选容器,用于将多个表单字段部件(例如 TextField 部件)分组在一起。

FormField

单个表单字段。此小组件维护表单字段的当前状态,以便在...中直观地反映更新和验证错误。

FractionalTranslation

在绘制其子项之前,应用表示为框大小分数的平移的小组件。

FractionallySizedBox

将子项大小调整为可用总空间分数的小组件。有关布局算法的更多详细信息,请参阅 RenderFractionallySizedOverflowBox。

FutureBuilder

根据与 Future 交互的最新快照构建自身的小组件。

GestureDetector

检测手势的小组件。尝试识别与其非空回调相对应的手势。如果此小组件有子项,它会推迟到...

GridView

网格列表由垂直和水平布局中排列的重复单元格图案组成。GridView 小组件实现此组件。

Hero

将子项标记为英雄动画候选项的小组件。

Icon

Material Design 图标。

IconButton

可点击图标,提示应用用户采取补充操作。

IgnorePointer

在命中测试期间不可见的小组件。当忽略为 true 时,此小组件(及其子树)对于命中测试不可见。它仍然消耗...

Image

显示图像的小组件。

ImplicitlyAnimatedWidget

用于构建对其属性进行更改动画的小组件的抽象类。

IndexedStack

从子项列表中显示单个子项的 Stack。

InteractiveViewer

启用与子项的平移和缩放交互的小组件。

IntrinsicHeight

将子项大小调整为子项固有高度的小组件。

IntrinsicWidth

将子项大小调整为子项固有宽度的组件。

KeyboardListener

当用户在键盘上按下或释放键时调用回调的小组件。

LayoutBuilder

构建可以依赖于父小组件大小的小组件树。

LimitedBox

仅在不受约束时限制其大小的框。

LinearProgressIndicator

垂直线,随着正在进行的过程(例如加载应用或提交表单)的完成而改变颜色。

ListBody

一个沿给定轴顺序排列其子项的小部件,强制它们在另一个轴中达到父项的尺寸。

ListTile

一个单一的固定高度行,通常包含一些文本以及一个前导或尾随图标。

ListView

一个可滚动的、线性的部件列表。ListView 是最常用的滚动部件。它在滚动方向上一个接一个地显示其子项....

LongPressDraggable

从长按开始使其子项可拖动。

MaterialApp

一个便捷小部件,它封装了许多通常用于实现 Material Design 的应用程序所需的小部件。

MediaQuery

建立一个子树,其中媒体查询解析为给定数据。

Menu

在临时表面上显示选择列表的容器。

MergeSemantics

一个合并其后代语义的小部件。

Navigation rail

平板电脑和桌面屏幕前缘的持久容器,用于导航到应用程序的各个部分。

NavigationBar

持久容器,可在应用程序中的主要目标之间切换。

NavigationDrawer

从应用程序的前缘滑出的容器,用于导航到应用程序中的其他部分。

Navigator

一个使用堆栈规则管理一组子部件的小部件。许多应用程序在其部件层次结构的顶部附近都有一个导航器...

NestedScrollView

一个滚动视图,可以在其中嵌套其他滚动视图,它们的滚动位置是内在关联的。

NotificationListener

一个监听从树中冒出的通知的小部件。

Offstage

一个小部件,它将子项布局得好像它在树中一样,但不会绘制任何内容,也不会使子项可用于命中...

Opacity

一个小部件,它使它的子项部分透明。

OutlinedButton

一个 Material Design 概述按钮,本质上是一个带有轮廓边框的 TextButton。

OverflowBox

一个小部件,它对子项施加的约束与从其父项获得的约束不同,可能允许子项溢出父项。

Padding

一个小部件,它通过给定的填充量缩进其子项。

PageView

一个逐页工作的可滚动列表。

Placeholder

一个小部件,它绘制一个方框,表示其他小部件将被添加到何处。

PopupMenuButton

按下时显示菜单,并在由于选择了一个项目而关闭菜单时调用 onSelected。

PositionedTransition

Positioned 的动画版本,它采用特定的动画在子项的生命周期内将其位置从起始位置过渡到结束位置...

Radio

表单控件,应用程序用户可以设置或清除它以仅从一组中选择一个选项。

RawImage

一个小部件,它直接显示一个 dart:ui.Image。

RefreshIndicator

一个 Material Design 拉动刷新包装器,用于可滚动项。

ReorderableListView

一个列表,用户可以通过拖动交互式地重新排序其项目。

RichText

RichText 小部件显示使用多种不同样式的文本。要显示的文本使用 TextSpan 对象的树来描述,每个对象...

RotatedBox

一个按四分之一圈的整数倍旋转其子元素的小部件。

RotationTransition

为小部件的旋转添加动画。

Row

按水平方向排列子小部件的列表。

Scaffold

实现基本的 Material Design 视觉布局结构。此类提供用于显示抽屉、小吃栏和底部工作表的 API。

ScaleTransition

为变换的小部件的比例添加动画。

ScrollConfiguration

控制可滚动小部件在子树中的行为方式。

Scrollable

Scrollable 实现可滚动小部件的交互模型,包括手势识别,但对实际上显示的视口没有看法...

Scrollbar

Material Design 滚动条。滚动条指示可滚动小部件的哪一部分实际上是可见的。

SegmentedButton

可单击的单选或多选块,帮助人们选择选项、切换视图或对元素进行排序。

Semantics

使用小部件含义的描述为小部件树添加注释的小部件。辅助工具、搜索引擎和其他语义...

SimpleDialog

简单对话框可以提供有关列表项的其他详细信息或操作。例如,它们可以显示头像图标,以阐明子文本或正交操作(例如...

SingleChildScrollView

一个可以滚动单个小部件的框。当您有一个通常完全...

SizeTransition

为其自身大小添加动画,并剪辑和对齐子元素。

SizedBox

一个具有指定大小的框。如果给定一个子元素,此小部件会强制其子元素具有特定的宽度和/或高度(假设值是...

SizedOverflowBox

一个特定大小的小部件,但会将其原始约束传递给其子元素,这可能会溢出。

SlideTransition

为小部件相对于其正常位置的位置添加动画。

Slider

启用选择值范围的表单控件。

SliverAppBar

与 CustomScrollView 集成的 Material Design 应用栏。

SliverChildBuilderDelegate

使用生成器回调为碎片提供子元素的委托。

SliverChildListDelegate

使用显式列表为碎片提供子元素的委托。

SliverFixedExtentList

一个碎片,它将具有相同主轴范围的多个框子元素放在线性阵列中。

SliverGrid

将多个框子子项放置在二维排列中的切片。

SliverList

将多个框子子项放置在沿着主轴的线性数组中的切片。

SliverPadding

在另一个切片的每侧应用填充的切片。

SliverPersistentHeader

当切片滚动到切片的 GrowthDirection 相反的视口边缘时,其大小会发生变化的切片。

SliverToBoxAdapter

包含单个框小部件的切片。

SnackBar

关于显示在屏幕底部的应用进程的简短消息。

Stack

此类在简单的方式下重叠多个子项时很有用,例如有一些文本和图像,覆盖...

Stepper

显示通过一系列步骤的进度的 Material Design 步进器小部件。

StreamBuilder

根据与 Stream 交互的最新快照构建自身的小部件。

Switch

将单个项目的状态更改为开或关的切换控件。

TabBar

组织跨不同屏幕、数据集和其他交互的内容的分层容器。

TabBarView

显示对应于当前所选选项卡的小部件的页面视图。通常与 TabBar 结合使用。

TabController

协调 TabBar 和 TabBarView 之间的选项卡选择。

TabPageSelector

显示一行小圆形指示符,每个选项卡一个。选定选项卡的指示符突出显示。通常与 TabBarView 结合使用。

Table

以行和列显示子小部件。

Abc
文本

具有单一样式的一段文本。

TextButton

Material Design 文本按钮。一个没有边框轮廓的简单平面按钮。

TextField

应用用户可以输入文本的框。它们出现在表单和对话框中。

Theme

将主题应用于后代小部件。主题描述应用程序的颜色和字体选择。

TimePicker

用于选择和设置特定时间的时钟界面。

Tooltip

工具提示提供文本标签,帮助解释按钮或其他用户界面操作的功能。将按钮包装在 Tooltip 小部件中...

Transform

在绘制其子项之前应用变换的小部件。

WidgetsApp

一个便利类,它封装了许多应用程序通常需要的组件。

包裹

一个组件,它在多个水平或垂直运行中显示其子组件。