Flutter widgets implementing Material Design.

To use, import package:flutter/material.dart.

See also:

Classes

AboutDialog

An about box. This is a dialog box with the application's icon, name, version number, and copyright, plus a button to show licenses for software used by the application.

AboutListTile

A ListTile that shows an about box.

AbsorbPointer

A widget that absorbs pointers during hit testing.

AlertDialog

A material design alert dialog.

Align

A widget that aligns its child within itself and optionally sizes itself based on the child's size.

AlwaysScrollableScrollPhysics

Scroll physics that always lets the user scroll.

AlwaysStoppedAnimation

An animation that is always stopped at a given value.

Animatable

An object that can produce a value of type T given an Animation as input.

AnimatedBuilder

A general-purpose widget for building animations.

AnimatedContainer

A container that gradually changes its values over a period of time.

AnimatedCrossFade

A widget that cross-fades between two given children and animates itself between their sizes.

AnimatedDefaultTextStyle

Animated version of DefaultTextStyle which automatically transitions the default text style (the text style to apply to descendant Text widgets without explicit style) over a given duration whenever the given style changes.

AnimatedList

A scrolling container that animates items when they are inserted or removed.

AnimatedListState

The state for a scrolling container that animates items when they are inserted or removed.

AnimatedModalBarrier

A widget that prevents the user from interacting with widgets behind itself.

AnimatedOpacity

Animated version of Opacity which automatically transitions the child's opacity over a given duration whenever the given opacity changes.

AnimatedPhysicalModel

Animated version of PhysicalModel.

AnimatedPositioned

Animated version of Positioned which automatically transitions the child's position over a given duration whenever the given position changes.

AnimatedSize

Animated widget that automatically transitions its size over a given duration whenever the given child's size changes.

AnimatedTheme

Animated version of Theme which automatically transitions the colors, etc, over a given duration whenever the given theme changes.

AnimatedWidget

A widget that rebuilds when the given Listenable changes value.

AnimatedWidgetBaseState

A base class for widgets with implicit animations.

Animation

An animation with a value of type T.

AnimationController

A controller for an animation.

AnimationEagerListenerMixin

A mixin that replaces the didRegisterListener/didUnregisterListener contract with a dispose contract.

AnimationLazyListenerMixin

A mixin that helps listen to another object only when this object has registered listeners.

AnimationLocalListenersMixin

A mixin that implements the addListener/removeListener protocol and notifies all the registered listeners when notifyListeners is called.

AnimationLocalStatusListenersMixin

A mixin that implements the addStatusListener/removeStatusListener protocol and notifies all the registered listeners when notifyStatusListeners is called.

AnimationMean

An animation of doubles that tracks the mean of two other animations.

AnimationWithParentMixin

Implements most of the Animation interface, by deferring its behavior to a given parent Animation. To implement an Animation that proxies to a parent, this class plus implementing "T get value" is all that is necessary.

AppBar

A material design app bar.

AspectRatio

A widget that attempts to size the child to a specific aspect ratio.

AssetImage

Fetches an image from an AssetBundle, having determined the exact image to use based on the context.

AsyncSnapshot

Immutable representation of the most recent interaction with an asynchronous computation.

BackButton

A material design back button.

BackButtonIcon

A "back" icon that's appropriate for the current TargetPlatform.

BackdropFilter

A widget that applies a filter to the existing painted content and then paints child.

BallisticScrollActivity

An activity that animates a scroll view based on a physics Simulation.

Displays a diagonal message above the corner of another widget.

BannerPainter

Paints a Banner.

Baseline

A widget that positions its child according to the child's baseline.

Border

A border of a box, comprised of four sides.

BorderRadius

An immutable set of radii for each corner of a rectangle.

BorderRadiusTween

An interpolation between two BorderRadiuss.

BorderSide

A side of a border of a box.

BottomNavigationBar

A material widget displayed at the bottom of an app for selecting among a small number of views.

BottomNavigationBarItem

An interactive destination label within BottomNavigationBar with an icon and title.

BottomSheet

A material design bottom sheet.

BouncingScrollPhysics

Scroll physics for environments that allow the scroll offset to go beyond the bounds of the content, but then bounce the content back to the edge of those bounds.

BouncingScrollSimulation

An implementation of scroll physics that matches iOS.

BoxConstraints

Immutable layout constraints for RenderBox layout.

BoxConstraintsTween

An interpolation between two BoxConstraints.

BoxDecoration

An immutable description of how to paint a box.

BoxPainter

A stateful class that can paint a particular Decoration.

BoxScrollView

A ScrollView uses a single child layout model.

BoxShadow

A shadow cast by a box.

BuildContext

A handle to the location of a widget in the widget tree.

Builder

A platonic widget that calls a closure to obtain its child widget.

BuildOwner

Manager class for the widgets framework.

ButtonBar

A horizontal arrangement of buttons.

ButtonTheme

Defines the button color used by a widget subtree.

Canvas

An interface for recording graphical operations.

Card

A material design card. A card has slightly rounded corners and a shadow.

Center

A widget that centers its child within itself.

Checkbox

A material design checkbox.

CheckboxListTile

A ListTile with a Checkbox. In other words, a checkbox with a label.

CheckedModeBanner

Displays a Banner saying "SLOW MODE" when running in checked mode. MaterialApp builds one of these by default. Does nothing in release mode.

CheckedPopupMenuItem

An item with a checkmark in a material design popup menu.

Chip

A material design chip.

CircleAvatar

A circle that represents a user.

CircularProgressIndicator

A material design circular progress indicator.

ClampingScrollPhysics

Scroll physics for environments that prevent the scroll offset from reaching beyond the bounds of the content.

ClampingScrollSimulation

An implementation of scroll physics that matches Android.

ClipOval

A widget that clips its child using an oval.

ClipPath

A widget that clips its child using a path.

ClipRect

A widget that clips its child using a rectangle.

ClipRRect

A widget that clips its child using a rounded rectangle.

CloseButton

A material design close button.

Color

An immutable 32 bit color value in ARGB format.

ColorFilter

A description of a color filter to apply when drawing a shape or compositing a layer with a particular Paint. A color filter is a function that takes two colors, and outputs one color. When applied during compositing, it is independently applied to each pixel of the layer being drawn before the entire layer is merged with the destination.

Colors

Color and ColorSwatch constants which represent Material design's color palette.

ColorSwatch

A color that has a small table of related colors called a "swatch".

ColorTween

An interpolation between two colors.

Column

A widget that displays its children in a vertical array.

ComponentElement

An Element that composes other Elements.

CompoundAnimation

An interface for combining multiple Animations. Subclasses need only implement the value getter to control how the child animations are combined. Can be chained to combine more than 2 animations.

ConstrainedBox

A widget that imposes additional constraints on its child.

Container

A convenience widget that combines common painting, positioning, and sizing widgets.

Cubic

A cubic polynomial mapping of the unit interval.

Curve

A mapping of the unit interval to the unit interval.

CurvedAnimation

An animation that applies a curve to another animation.

Curves

A collection of common animation curves.

CurveTween

Transforms the value of the given animation by the given curve.

CustomClipper

An interface for providing custom clips.

CustomMultiChildLayout

A widget that uses a delegate to size and position multiple children.

CustomPaint

A widget that provides a canvas on which to draw during the paint phase.

CustomPainter

The interface used by CustomPaint (in the widgets library) and RenderCustomPaint (in the rendering library).

CustomScrollView

A ScrollView that creates custom scroll effects using slivers.

CustomSingleChildLayout

A widget that defers the layout of its single child to a delegate.

DataCell

The data for a cell of a DataTable.

DataColumn

Column configuration for a DataTable.

DataRow

Row configuration and cell data for a DataTable.

DataTable

A material design data table.

DataTableSource

A data source for obtaining row data for PaginatedDataTable objects.

DayPicker

Displays the days of a given month and allows choosing a day.

DecoratedBox

A widget that paints a Decoration either before or after its child paints.

DecoratedBoxTransition

Animated version of a DecoratedBox that animates the different properties of its Decoration.

Decoration

A description of a box decoration (a decoration applied to a Rect).

DecorationImage

An image for a box decoration.

DecorationTween

An interpolation between two Decorations.

DefaultAssetBundle

A widget that determines the default asset bundle for its descendants.

DefaultTabController

The TabController for descendant widgets that don't specify one explicitly.

DefaultTextStyle

The text style to apply to descendant Text widgets without explicit style.

Dialog

A material design dialog.

Dismissible

A widget that can be dismissed by dragging in the indicated direction.

Divider

A one logical pixel thick horizontal line, with padding on either side.

DragDownDetails

Details object for callbacks that use GestureDragDownCallback.

DragEndDetails

Details object for callbacks that use GestureDragEndCallback.

Draggable

A widget that can be dragged from to a DragTarget.

DragScrollActivity

The activity a scroll view performs when a the user drags their finger across the screen.

DragStartDetails

Details object for callbacks that use GestureDragStartCallback.

DragTarget

A widget that receives data when a Draggable widget is dropped.

DragUpdateDetails

Details object for callbacks that use GestureDragUpdateCallback.

Drawer

A material design panel that slides in horizontally from the edge of a Scaffold to show navigation links in an application.

DrawerController

Provides interactive behavior for Drawer widgets.

DrawerControllerState

State for a DrawerController.

DrawerHeader

The top-most region of a material design drawer. The header's child widget, if any, is placed inside a Container whose decoration can be passed as an argument, inset by the given padding.

DrivenScrollActivity

An activity that animates a scroll view based on animation parameters.

A material design button for selecting from a list of items.

An inherited widget that causes any descendant DropdownButton widgets to not include their regular underline.

An item in a menu created by a DropdownButton.

EdgeInsets

An immutable set of offsets in each of the four cardinal directions.

EdgeInsetsTween

An interpolation between two EdgeInsetss.

EditableText

A basic text input field.

EditableTextState

State for a EditableText.

ElasticInCurve

An oscillating curve that grows in magnitude while overshooting its bounds.

ElasticInOutCurve

An oscillating curve that grows and then shrinks in magnitude while overshooting its bounds.

ElasticOutCurve

An oscillating curve that shrinks in magnitude while overshooting its bounds.

Element

An instantiation of a Widget at a particular location in the tree.

ErrorWidget

A widget that renders an exception's message.

ExactAssetImage

Fetches an image from an AssetBundle, associating it with the given scale.

ExcludeSemantics

A widget that drops all the semantics of its descendants.

Expanded

A widget that expands a child of a Row, Column, or Flex.

ExpandIcon

A widget representing a rotating expand/collapse button. The icon rotates 180 deg when pressed, then reverts the animation on a second press. The underlying icon is Icons.expand_more.

ExpansionPanel

A material expansion panel. It has a header and a body and can be either expanded or collapsed. The body of the panel is only visible when it is expanded.

ExpansionPanelList

A material expansion panel list that lays out its children and animates expansions.

ExpansionTile

A single-line ListTile with a trailing button that expands or collapses the tile to reveal or hide the children.

FadeTransition

Animates the opacity of a widget.

FileImage

Decodes the given File object as an image, associating it with the given scale.

FittedBox

Scales and positions its child within itself according to fit.

FittedSizes

The pair of sizes returned by applyBoxFit.

FixedColumnWidth

Sizes the column to a specific number of pixels.

FixedScrollMetrics

An immutable snapshot of values associated with a Scrollable viewport.

FlatButton

A material design "flat button".

Flex

A widget that displays its children in a one-dimensional array.

FlexColumnWidth

Sizes the column by taking a part of the remaining space once all the other columns have been laid out.

Flexible

A widget that controls how a child of a Row, Column, or Flex flexes.

FlexibleSpaceBar

The part of a material design AppBar that expands and collapses.

FlippedCurve

A curve that is the reversed inversion of its given curve.

FloatingActionButton

A material design floating action button.

Flow

A widget that implements the flow layout algorithm.

FlowDelegate

A delegate that controls the appearance of a flow layout.

FlowPaintingContext

A context in which a FlowDelegate paints.

The Flutter logo, in widget form. This widget respects the IconTheme.

FlutterLogoDecoration

An immutable description of how to paint Flutter's logo.

FocusManager

Manages the focus tree.

FocusNode

A leaf node in the focus tree that can receive focus.

FocusScope

Establishes a scope in which widgets can receive focus.

FocusScopeNode

An interior node in the focus tree.

FontWeight

The thickness of the glyphs used to draw the text

Form

An optional container for grouping together multiple form field widgets (e.g. TextField widgets).

FormField

A single form field.

FormFieldState

The current state of a FormField. Passed to the FormFieldBuilder method for use in constructing the form field's widget.

FormState

State assocated with a Form widget.

FractionallySizedBox

A widget that sizes its child to a fraction of the total available space. For more details about the layout algorithm, see RenderFractionallySizedOverflowBox.

FractionalOffset

An offset that's expressed as a fraction of a Size.

FractionalOffsetTween

An interpolation between two fractional offsets.

FractionalTranslation

A widget that applies a translation expressed as a fraction of the box's size before painting its child.

FractionColumnWidth

Sizes the column to a fraction of the table's constraints' maxWidth.

FutureBuilder

Widget that builds itself based on the latest snapshot of interaction with a Future.

GestureDetector

A widget that detects gestures.

GlobalKey

A key that is unique across the entire app.

GlobalObjectKey

A global key that takes its identity from the object used as its value.

GlowingOverscrollIndicator

A visual indication that a scroll view has overscrolled.

Gradient

A 2D gradient.

GridPaper

A widget that draws a rectilinear grid of 1px wide lines.

GridTile

A tile in a material design grid list.

GridTileBar

A header used in a material design GridTile.

GridView

A scrollable, 2D array of widgets.

Hero

A widget that marks its child as being a candidate for hero animations.

HeroController

A Navigator observer that manages Hero transitions.

HoldScrollActivity

A scroll activity that does nothing but can be released to resume normal idle behavior.

HSVColor

A color represented using alpha, hue, saturation, and value.

Icon

A graphical icon widget drawn with a glyph from a font described in an IconData such as material's predefined IconDatas in Icons.

IconButton

A material design icon button.

IconData

A description of an icon fulfilled by a font glyph.

Icons

Identifiers for the supported material design icons.

IconTheme

Controls the default color, opacity, and size of icons in a widget subtree.

IconThemeData

Defines the color, opacity, and size of icons.

IdleScrollActivity

A scroll activity that does nothing.

IgnorePointer

A widget that is invisible during hit testing.

Image

A widget that displays an image.

ImageConfiguration

Configuration information passed to the ImageProvider.resolve method to select a specific image.

ImageIcon

An icon that comes from an ImageProvider, e.g. an AssetImage.

ImageProvider

Identifies an image without committing to the precise final asset. This allows a set of images to be identified and for the precise image to later be resolved based on the environment, e.g. the device pixel ratio.

ImageShader

A shader (as used by Paint.shader) that tiles an image.

ImplicitlyAnimatedWidget

An abstract widget for building widgets that gradually change their values over a period of time.

IndexedStack

A Stack that shows a single child from a list of children.

InheritedElement

An Element that uses a InheritedWidget as its configuration.

InheritedWidget

Base class for widgets that efficiently propagate information down the tree.

InkFeature

A visual reaction on a piece of Material.

InkHighlight

A visual emphasis on a part of a Material receiving user interaction.

InkResponse

An area of a Material that responds to touch. Has a configurable shape and can be configured to clip splashes that extend outside its bounds or not.

InkSplash

A visual reaction on a piece of Material to user input.

InkWell

A rectangular area of a Material that responds to touch.

InputDecoration

Text and styles used to label an input field.

InputDecorator

Displays the visual elements of a Material Design text field around an arbitrary widget.

Interval

A curve that is 0.0 until begin, then curved (according to curve from 0.0 to 1.0 at end, then 1.0.

IntrinsicColumnWidth

Sizes the column according to the intrinsic dimensions of all the cells in that column.

IntrinsicHeight

A widget that sizes its child to the child's intrinsic height.

IntrinsicWidth

A widget that sizes its child to the child's intrinsic width.

IntTween

An interpolation between two integers that rounds.

Key

A Key is an identifier for Widgets and Elements.

KeyedSubtree

A widget that builds its child.

LabeledGlobalKey

A global key with a debugging label.

LayoutBuilder

Builds a widget tree that can depend on the parent widget's size.

LayoutChangedNotification

Indicates that the layout of one of the descendants of the object receiving this notification has changed in some way, and that therefore any assumptions about that layout are no longer valid.

LayoutId

Meta data for identifying children in a CustomMultiChildLayout.

LeafRenderObjectElement

An Element that uses a LeafRenderObjectWidget as its configuration.

LeafRenderObjectWidget

A superclass for RenderObjectWidgets that configure RenderObject subclasses that have no children.

LicensePage

A page that shows licenses for software used by the application.

LimitedBox

A box that limits its size only when it's unconstrained.

LinearGradient

A 2D linear gradient.

LinearProgressIndicator

A material design linear progress indicator.

ListBody

A widget that arranges its children sequentially along a given axis, forcing them to the dimension of the parent in the other axis.

Listener

A widget that calls callbacks in response to pointer events.

ListTile

A single fixed-height row that typically contains some text as well as a leading or trailing icon.

ListTileTheme

An inherited widget that defines color and style parameters for ListTiles in this widget's subtree.

ListView

A scrollable, linear list of widgets.

Locale

An identifier used to select a user's language and formatting preferences, consisting of a language and a country. This is a subset of locale identifiers as defined by BCP 47.

LocaleQuery

Establishes a subtree in which locale queries resolve to the given data.

LocaleQueryData

Superclass for locale-specific data provided by the application.

LocalHistoryEntry

An entry in the history of a LocalHistoryRoute.

LocalHistoryRoute

A route that can handle back navigations internally by popping a list.

LocalKey

A key that is not a GlobalKey.

LongPressDraggable

Makes its child draggable starting from long press.

MaskFilter

A mask filter to apply to shapes as they are painted. A mask filter is a function that takes a bitmap of color pixels, and returns another bitmap of color pixels.

Material

A piece of material.

MaterialAccentColor

Defines a single accent color as well a swatch of four shades of the accent color.

MaterialApp

An application that uses material design.

MaterialButton

The framework for building material design buttons.

MaterialColor

Defines a single color as well a color swatch with ten shades of the color.

MaterialGap

A class that represents a gap within MergeableMaterial.

MaterialInkController

An interface for creating InkSplashs and InkHighlights on a material.

MaterialPageRoute

A modal route that replaces the entire screen with a platform-adaptive transition.

MaterialPointArcTween

A Tween that interpolates an Offset along a circular arc.

MaterialRectArcTween

A Tween that interpolates a Rect by having its opposite corners follow circular arcs.

MaterialSlice

A class that can be used as a child to MergeableMaterial. It is a slice of Material that animates merging with other slices.

Matrix4

4D Matrix. Values are stored in column major order.

Matrix4Tween

An interpolation between two Matrix4s.

MatrixUtils

Utility functions for working with matrices.

MaxColumnWidth

Sizes the column such that it is the size that is the maximum of two column width specifications.

MediaQuery

Establishes a subtree in which media queries resolve to the given data.

MediaQueryData

Information about a piece of media (e.g., a window).

MemoryImage

Decodes the given Uint8List buffer as an image, associating it with the given scale.

MergeableMaterial

Displays a list of MergeableMaterialItem children. The list contains MaterialSlice items whose boundaries are either "merged" with adjacent items or separated by a MaterialGap. The children are distributed along the given mainAxis in the same way as the children of a ListBody. When the list of children changes, gaps are automatically animated open or closed as needed.

MergeableMaterialItem

The base type for MaterialSlice and MaterialGap.

MergeSemantics

A widget that merges the semantics of its descendants.

MetaData

Holds opaque meta data in the render tree.

MinColumnWidth

Sizes the column such that it is the size that is the minimum of two column width specifications.

ModalBarrier

A widget that prevents the user from interacting with widgets behind itself.

ModalRoute

A route that blocks interaction with previous routes.

MonthPicker

A scrollable list of months to allow picking a month.

MultiChildLayoutDelegate

A delegate that controls the layout of multiple children.

MultiChildRenderObjectElement

An Element that uses a MultiChildRenderObjectWidget as its configuration.

MultiChildRenderObjectWidget

A superclass for RenderObjectWidgets that configure RenderObject subclasses that have a single list of children. (This superclass only provides the storage for that child list, it doesn't actually provide the updating logic.)

Interface describing an object returned by the Route.startPopGesture method, allowing the route's transition animations to be controlled by a drag or other user gesture.

A widget that manages a set of child widgets with a stack discipline.

An interface for observing the behavior of a Navigator.

The state for a Navigator widget.

NestedScrollView

NetworkImage

Fetches the given URL from the network, associating it with the given scale.

NeverScrollableScrollPhysics

Scroll physics that does not allow the user to scroll.

Notification

A notification that can bubble up the widget tree.

NotificationListener

A widget that listens for Notifications bubbling up the tree.

ObjectKey

A key that takes its identity from the object used as its value.

Offset

An immutable 2D floating-point offset.

Offstage

A widget that lays the child out as if it was in the tree, but without painting anything, without making the child available for hit testing, and without taking any room in the parent.

Opacity

A widget that makes its child partially transparent.

OrientationBuilder

Builds a widget tree that can depend on the parent widget's orientation.

OverflowBox

A widget that imposes different constraints on its child than it gets from its parent, possibly allowing the child to overflow the parent.

Overlay

A Stack of entries that can be managed independently.

OverlayEntry

A place in an Overlay that can contain a widget.

OverlayRoute

A route that displays widgets in the Navigator's Overlay.

OverlayState

The current state of an Overlay.

OverscrollIndicatorNotification

A notification that an GlowingOverscrollIndicator will start showing an overscroll indication.

OverscrollNotification

A notification that a Scrollable widget has not changed its scroll position because the change would have caused its scroll position to go outside of its scroll bounds.

Padding

A widget that insets its child by the given padding.

PageController

A controller for PageView.

PageMetrics

Metrics for a PageView.

PageRoute

A modal route that replaces the entire screen.

PageRouteBuilder

A utility class for defining one-off page routes in terms of callbacks.

PageScrollPhysics

Scroll physics used by a PageView.

PageStorage

A widget that establishes a page storage bucket for this widget subtree.

PageStorageBucket

A storage bucket associated with a page in an app.

PageView

A scrollable list that works page by page.

PaginatedDataTable

A material design data table that shows data using multiple pages.

PaginatedDataTableState

Holds the state of a PaginatedDataTable.

Paint

A description of the style to use when drawing on a Canvas.

PaintingContext

A place to paint.

ParentDataElement

An Element that uses a ParentDataWidget as its configuration.

ParentDataWidget

Base class for widgets that hook ParentData information to children of RenderObjectWidgets.

Path

A complex, one-dimensional subset of a plane.

PerformanceOverlay

Displays performance statistics.

PersistentBottomSheetController

A ScaffoldFeatureController for persistent bottom sheets.

PhysicalModel

A widget representing a physical layer that clips its children to a shape.

Placeholder

A widget that draws a box that represents where other widgets will one day be added.

PointerCancelEvent

The input from the pointer is no longer directed towards this receiver.

PointerDownEvent

The pointer has made contact with the device.

PointerEvent

Base class for touch, stylus, or mouse events.

PointerMoveEvent

The pointer has moved with respect to the device while the pointer is in contact with the device.

PointerUpEvent

The pointer has stopped making contact with the device.

PopupMenuButton

Displays a menu when pressed and calls onSelected when the menu is dismissed because an item was selected. The value passed to onSelected is the value of the selected menu item. If child is null then a standard 'navigation/more_vert' icon is created.

PopupMenuDivider

A horizontal divider in a material design popup menu.

PopupMenuEntry

A base class for entries in a material design popup menu.

PopupMenuItem

An item in a material design popup menu.

PopupRoute

A modal route that overlays a widget over the current route.

Positioned

A widget that controls where a child of a Stack is positioned.

PositionedTransition

Animated version of Positioned which takes a specific Animation to transition the child's position from a start position to and end position over the lifetime of the animation.

PreferredSize

A widget with a preferred size.

PreferredSizeWidget

An interface for widgets that can return the size this widget would prefer if it were otherwise unconstrained.

PrimaryScrollController

Associates a ScrollController with a subtree.

ProgressIndicator

A base class for material design progress indicators

ProxyAnimation

An animation that is a proxy for another animation.

ProxyElement

An Element that uses a ProxyElement as its configuration.

ProxyWidget

A widget that has exactly one child widget.

RadialGradient

A 2D radial gradient.

Radio

A material design radio button.

RadioListTile

A ListTile with a Radio. In other words, a radio button with a label.

Radius

A radius for either circular or elliptical shapes.

RaisedButton

A material design "raised button".

RawGestureDetector

A widget that detects gestures described by the given gesture factories.

RawGestureDetectorState

State for a RawGestureDetector.

RawImage

A widget that displays a dart:ui.Image directly.

RawKeyboardListener

A widget that calls a callback whenever the user presses or releases a key on a keyboard.

Rect

An immutable, 2D, axis-aligned, floating-point rectangle whose coordinates are relative to a given origin.

RectTween

An interpolation between two rectangles.

RefreshIndicator

A widget that supports the Material "swipe to refresh" idiom.

RefreshIndicatorState

Contains the state for a RefreshIndicator. This class can be used to programmatically show the refresh indicator, see the show method.

RefreshProgressIndicator

An indicator for the progress of refreshing the contents of a widget.

RelativePositionedTransition

Animated version of Positioned which transitions the child's position based on the value of rect relative to a bounding box with the specified size.

RelativeRect

An immutable 2D, axis-aligned, floating-point rectangle whose coordinates are given relative to another rectangle's edges, known as the container. Since the dimensions of the rectangle are relative to those of the container, this class has no width and height members. To determine the width or height of the rectangle, convert it to a Rect using toRect() (passing the container's own Rect), and then examine that object.

RelativeRectTween

An interpolation between two relative rects.

RenderBox

A render object in a 2D cartesian coordinate system.

RenderObject

An object in the render tree.

RenderObjectElement

An Element that uses a RenderObjectWidget as its configuration.

RenderObjectToWidgetAdapter

A bridge from a RenderObject to an Element tree.

RenderObjectToWidgetElement

A RootRenderObjectElement that is hosted by a RenderObject.

RenderObjectWidget

RenderObjectWidgets provide the configuration for RenderObjectElements, which wrap RenderObjects, which provide the actual rendering of the application.

RenderToggleable

A base class for material style toggleable controls with toggle animations.

RepaintBoundary

A widget that creates a separate display list for its child.

ReverseAnimation

An animation that is the reverse of another animation.

RichText

A paragraph of rich text.

RootRenderObjectElement

The element at the root of the tree.

RotatedBox

A widget that rotates its child by a integral number of quarter turns.

RotationTransition

Animates the rotation of a widget.

Route

An abstraction for an entry managed by a Navigator.

RouteSettings

Data that might be useful in constructing a Route.

Row

A widget that displays its children in a horizontal array.

RRect

An immutable rounded rectangle with the custom radii for all four corners.

RSTransform

A transform consisting of a translation, a rotation, and a uniform scale.

SawTooth

A sawtooth curve that repeats a given number of times over the unit interval.

Scaffold

Implements the basic material design visual layout structure.

ScaffoldFeatureController

An interface for controlling a feature of a Scaffold.

ScaffoldState

State for a Scaffold.

ScaleEndDetails

Details for GestureScaleEndCallback.

ScaleStartDetails

Details for GestureScaleStartCallback.

ScaleTransition

Animates the scale of transformed widget.

ScaleUpdateDetails

Details for GestureScaleUpdateCallback.

Scrollable

A widget that scrolls.

ScrollableState

State object for a Scrollable widget.

ScrollActivity

Base class for scrolling activities like dragging and flinging.

ScrollActivityDelegate

A backend for a ScrollActivity.

Scrollbar

A material design scrollbar.

ScrollBehavior

Describes how Scrollable widgets should behave.

ScrollConfiguration

Controls how Scrollable widgets behave in a subtree.

ScrollContext

An interface that Scrollable widgets implement in order to use ScrollPosition.

ScrollController

Controls a scrollable widget.

ScrollDragController

Scrolls a scroll view as the user drags their finger across the screen.

ScrollEndNotification

A notification that a Scrollable widget has stopped scrolling.

ScrollHoldController

Interface for holding a Scrollable stationary.

ScrollMetrics

A description of a Scrollable's contents, useful for modeling the state of its viewport.

ScrollNotification

A Notification related to scrolling.

ScrollPhysics

Determines the physics of a Scrollable widget.

ScrollPosition

Determines which portion of the content is visible in a scroll view.

ScrollPositionWithSingleContext

A scroll position that manages scroll activities for a single ScrollContext.

ScrollSpringSimulation

A SpringSimulation where the value of x is guaranteed to have exactly the end value when the simulation isDone().

ScrollStartNotification

A notification that a Scrollable widget has started scrolling.

ScrollUpdateNotification

A notification that a Scrollable widget has changed its scroll position.

ScrollView

A widget that scrolls.

Semantics

A widget that annotates the widget tree with a description of the meaning of the widgets.

SemanticsDebugger

A widget that visualizes the semantics for the child.

Shader

Base class for objects such as Gradient and ImageShader which correspond to shaders as used by Paint.shader.

ShaderMask

A widget that applies a mask generated by a Shader to its child.

ShrinkWrappingViewport

A widget that is bigger on the inside and shrink wraps its children in the main axis.

SimpleDialog

A simple material design dialog.

SimpleDialogOption

An option used in a SimpleDialog.

Simulation

The base class for all simulations.

SingleChildLayoutDelegate

A delegate for computing the layout of a render object with a single child.

SingleChildRenderObjectElement

An Element that uses a SingleChildRenderObjectWidget as its configuration.

SingleChildRenderObjectWidget

A superclass for RenderObjectWidgets that configure RenderObject subclasses that have a single child slot. (This superclass only provides the storage for that child, it doesn't actually provide the updating logic.)

SingleChildScrollView

A box in which a single widget can be scrolled.

SingleTickerProviderStateMixin

Provides a single Ticker that is configured to only tick while the current tree is enabled, as defined by TickerMode.

Size

Holds a 2D floating-point size.

SizeChangedLayoutNotification

Indicates that the size of one of the descendants of the object receiving this notification has changed, and that therefore any assumptions about that layout are no longer valid.

SizeChangedLayoutNotifier

A widget that automatically dispatches a SizeChangedLayoutNotification when the layout of its child changes.

SizedBox

A box with a specified size.

SizedOverflowBox

A widget that is a specific size but passes its original constraints through to its child, which will probably overflow.

SizeTransition

Animates its own size and clips and aligns the child.

SizeTween

An interpolation between two sizes.

Slider

A material design slider.

SlideTransition

Animates the position of a widget relative to its normal position.

SliverAppBar

A material design app bar that integrates with a CustomScrollView.

SliverChildBuilderDelegate

A delegate that supplies children for slivers using a builder callback.

SliverChildDelegate

A delegate that supplies children for slivers.

SliverChildListDelegate

A delegate that supplies children for slivers using an explicit list.

SliverFillRemaining

A sliver that contains a single box child that fills the remaining space in the viewport.

SliverFillViewport

A sliver that contains a multiple box children that each fill the viewport.

SliverFixedExtentList

A sliver that places multiple box children with the same main axis extent in a linear array.

SliverGrid

A sliver that places multiple box children in a two dimensional arrangement.

SliverGridDelegate

Controls the layout of tiles in a grid.

SliverGridDelegateWithFixedCrossAxisCount

Creates grid layouts with a fixed number of tiles in the cross axis.

SliverGridDelegateWithMaxCrossAxisExtent

Creates grid layouts with tiles that have a maximum cross-axis extent.

SliverList

A sliver that places multiple box children in a linear array along the main axis.

SliverMultiBoxAdaptorElement

An element that lazily builds children for a SliverMultiBoxAdaptorWidget.

SliverMultiBoxAdaptorWidget

A base class for sliver that have multiple box children.

SliverPadding

A sliver that applies padding on each side of another sliver.

SliverPersistentHeader

SliverPersistentHeaderDelegate

SliverPrototypeExtentList

A sliver that places its box children in a linear array and constrains them to have the same extent as a prototype item along the main axis.

SliverToBoxAdapter

A sliver that contains a single box widget.

SnackBar

A lightweight message with an optional action which briefly displays at the bottom of the screen.

SnackBarAction

A button for a SnackBar, known as an "action".

Stack

A widget that uses the stack layout algorithm for its children.

State

The logic and internal state for a StatefulWidget.

StatefulBuilder

A platonic widget that both has state and calls a closure to obtain its child widget.

StatefulElement

An Element that uses a StatefulWidget as its configuration.

StatefulWidget

A widget that has mutable state.

StatelessElement

An Element that uses a StatelessWidget as its configuration.

StatelessWidget

A widget that does not require mutable state.

StatusTransitionWidget

A widget that rebuilds when the given animation changes status.

Step

A material step used in Stepper. The step can have a title and subtitle, an icon within its circle, some content and a state that governs its styling.

Stepper

A material stepper widget that displays progress through a sequence of steps. Steppers are particularly useful in the case of forms where one step requires the completion of another one, or where multiple steps need to be completed in order to submit the whole form.

StepTween

An interpolation between two integers that floors.

StreamBuilder

Widget that builds itself based on the latest snapshot of interaction with a Stream.

StreamBuilderBase

Base class for widgets that build themselves based on interaction with a specified Stream.

Switch

A material design switch.

SwitchListTile

A ListTile with a Switch. In other words, a switch with a label.

Tab

A material design TabBar tab. If both icon and text are provided, the text is displayed below the icon.

TabBar

A material design widget that displays a horizontal row of tabs.

TabBarView

A page view that displays the widget which corresponds to the currently selected tab. Typically used in conjuction with a TabBar.

TabController

Coordinates tab selection between a TabBar and a TabBarView.

Table

A widget that uses the table layout algorithm for its children.

TableBorder

Border specification for RenderTable.

TableCell

A widget that controls how a child of a Table is aligned.

TableColumnWidth

Base class to describe how wide a column in a RenderTable should be.

TableRow

A horizontal group of cells in a Table.

TableRowInkWell

A rectangular area of a Material that responds to touch but clips its ink splashes to the current table row of the nearest table.

TabPageSelector

Displays a row of small circular indicators, one per tab. The selected tab's indicator is highlighted. Often used in conjuction with a TabBarView.

TabPageSelectorIndicator

Displays a single 12x12 circle with the specified border and background colors.

TapDownDetails

Details for GestureTapDownCallback, such as position.

TapUpDetails

Details for GestureTapUpCallback, such as position.

Text

A run of text with a single style.

TextDecoration

A linear decoration to draw near the text.

TextEditingController

A controller for an editable text field.

TextEditingValue

The current text, selection, and composing state for editing a run of text.

TextField

A material design text field.

TextFormField

A FormField that contains a TextField.

TextPainter

An object that paints a TextSpan tree into a Canvas.

TextSelection

A range of text that represents a selection.

TextSelectionControls

An interface for building the selection UI, to be provided by the implementor of the toolbar widget.

TextSelectionDelegate

An interface for manipulating the selection, to be used by the implementor of the toolbar widget.

TextSelectionOverlay

An object that manages a pair of text selection handles.

TextSpan

An immutable span of text.

TextStyle

An immutable style in which paint text.

TextStyleTween

An interpolation between two TextStyles.

TextTheme

Material design text theme.

Theme

Applies a theme to descendant widgets.

ThemeData

Holds the color and typography values for a material design theme.

ThemeDataTween

An interpolation between two ThemeDatas.

Threshold

A curve that is 0.0 until it hits the threshold, then it jumps to 1.0.

TickerFuture

An object representing an ongoing Ticker sequence.

TickerMode

Enables or disables tickers (and thus animation controllers) in the widget subtree.

TickerProvider

An interface implemented by classes that can vend Ticker objects.

TickerProviderStateMixin

Provides Ticker objects that are configured to only tick while the current tree is enabled, as defined by TickerMode.

TimeOfDay

A value representing a time during the day

Title

A widget that describes this app in the operating system.

Tolerance

Structure that specifies maximum allowable magnitudes for distances, durations, and velocity differences to be considered equal.

Tooltip

A material design tooltip.

TrainHoppingAnimation

This animation starts by proxying one animation, but can be given a second animation. When their times cross (either because the second is going in the opposite direction, or because the one overtakes the other), the animation hops over to proxying the second animation, and the second animation becomes the new "first" performance.

Transform

A widget that applies a transformation before painting its child.

TransitionRoute

A route with entrance and exit transitions.

Tween

A linear interpolation between a beginning and ending value.

TwoLevelList

This class is deprecated. Please use ListView and ListTileTheme instead.

TwoLevelListItem

This class is deprecated. Please use ListTile instead.

TwoLevelSublist

This class is deprecated. Please use ExpansionTile instead.

TypeMatcher

This class is a work-around for the "is" operator not accepting a variable value as its right operand

Typography

The two material design text themes.

UniqueKey

A key that is only equal to itself.

UniqueWidget

Base class for stateful widgets that have exactly one inflated instance in the tree.

UserAccountsDrawerHeader

A material design Drawer header that identifies the app's user.

UserScrollNotification

A notification that the user has changed the direction in which they are scrolling.

ValueKey

A key that uses a value of a particular type to identify itself.

Velocity

A velocity in two dimensions.

Viewport

A widget that is bigger on the inside.

ViewportNotificationMixin

Mixin for Notifications that track how many RenderAbstractViewport they have bubbled through.

Widget

Describes the configuration for an Element.

WidgetsApp

A convenience class that wraps a number of widgets that are commonly required for an application.

WidgetsBinding

The glue between the widgets layer and the Flutter engine.

WidgetsBindingObserver

Interface for classes that register with the Widgets layer binding.

WidgetsFlutterBinding

A concrete binding for applications based on the Widgets framework. This is the glue that binds the framework to the Flutter engine.

WidgetToRenderBoxAdapter

An adapter for placing a specific RenderBox in the widget tree.

WillPopScope

Registers a callback to veto attempts by the user to dismiss the enclosing ModalRoute.

Wrap

A widget that displays its children in multiple horizontal or vertical runs.

YearPicker

A scrollable list of years to allow picking a year.

Constants

kAlwaysCompleteAnimation Animation<double>

An animation that is always complete.

const _AlwaysCompleteAnimation<double>()
kAlwaysDismissedAnimation Animation<double>

An animation that is always dismissed.

const _AlwaysDismissedAnimation<double>()
kBottomNavigationBarHeight double

The height of the bottom navigation bar.

60.0
kElevationToShadow Map<int, List<BoxShadow>>

Map of elevation offsets used by material design to BoxShadow definitions.

_elevationToShadow
kMaterialListPadding EdgeInsets

The padding added around material list items.

const EdgeInsets.symmetric(vertical: 8.0)
kRadialReactionAlpha int

The value of the alpha channel to use when drawing a circular material ink response.

0x33
kRadialReactionDuration Duration

The amount of time a circular material ink response should take to expand to its full size.

const Duration(milliseconds: 200)
kRadialReactionRadius double

The radius of a circular material ink response in logical pixels.

24.0
kTabScrollDuration Duration

The duration of the horizontal scroll animation that occurs when a tab is tapped.

const Duration(milliseconds: 300)
kTextTabBarHeight double

The height of a tab bar containing text.

48.0
kThemeAnimationDuration Duration

The duration over which theme changes animate by default.

const Duration(milliseconds: 200)
kThemeChangeDuration Duration

The amount of time theme change animations should last.

const Duration(milliseconds: 200)
kToolbarHeight double

The height of the toolbar component of the AppBar.

56.0

Properties

debugHighlightDeprecatedWidgets bool

Show banners for deprecated widgets.

read / write
debugPrint DebugPrintCallback

Prints a message to the console, which you can access using the "flutter" tool's "logs" command ("flutter logs").

read / write
debugPrintBuildScope bool

Log all calls to BuildOwner.buildScope.

read / write
debugPrintGlobalKeyedWidgetLifecycle bool

Log when widgets with global keys are deactivated and log when they are reactivated (retaken).

read / write
debugPrintRebuildDirtyWidgets bool

Log the dirty widgets that are built each frame.

read / write
debugPrintScheduleBuildForStacks bool

Log the call stacks that mark widgets as needing to be rebuilt.

read / write
debugProfileBuildsEnabled bool

Adds Timeline events for every Widget built.

read / write
kListTileExtent Map<MaterialListType, double>

This constant is deprecated. The ListTile class sizes itself based on its content and ListTileTheme.

read / write
kMaterialEdges Map<MaterialType, BorderRadius>

The border radii used by the various kinds of material in material design.

final
materialTextSelectionControls TextSelectionControls

Text selection controls that follow the Material Design specification.

final

Functions

applyBoxFit(BoxFit fit, Size inputSize, Size outputSize) FittedSizes

Apply an BoxFit value.

createLocalImageConfiguration(BuildContext context, { Size size }) ImageConfiguration

Creates an ImageConfiguration based on the given BuildContext (and optionally size).

debugAssertAllWidgetVarsUnset(String reason) bool

Returns true if none of the widget library debug variables have been changed.

debugCheckHasMaterial(BuildContext context) bool

Asserts that the given context has a Material ancestor.

debugCheckHasMediaQuery(BuildContext context) bool

Asserts that the given context has a MediaQuery ancestor.

debugCheckHasTable(BuildContext context) bool

Asserts that the given context has a Table ancestor.

debugChildrenHaveDuplicateKeys(Widget parent, Iterable<Widget> children) bool

Asserts if the given child list contains any duplicate non-null keys.

debugDumpApp() → void

Print a string representation of the currently running app.

debugDumpLayerTree() → void

Prints a textual representation of the entire layer tree.

debugDumpRenderTree() → void

Prints a textual representation of the entire render tree.

debugItemsHaveDuplicateKeys(Iterable<Widget> items) bool

Asserts if the given list of items contains any duplicate non-null keys.

debugPrintStack({String label, int maxFrames }) → void

Dump the current stack to the console using debugPrint and FlutterError.defaultStackFilter.

debugWidgetBuilderValue(Widget widget, Widget built) → void

Asserts that the built widget is not null.

hashList(Iterable<Object> arguments) int

Combine the Object.hashCode values of an arbitrary number of objects from an Iterable into one value. This function will return the same value if given null as if given an empty list.

hashValues(Object arg01, Object arg02, [ Object arg03 = _hashEnd, Object arg04 = _hashEnd, Object arg05 = _hashEnd, Object arg06 = _hashEnd, Object arg07 = _hashEnd, Object arg08 = _hashEnd, Object arg09 = _hashEnd, Object arg10 = _hashEnd, Object arg11 = _hashEnd, Object arg12 = _hashEnd, Object arg13 = _hashEnd, Object arg14 = _hashEnd, Object arg15 = _hashEnd, Object arg16 = _hashEnd, Object arg17 = _hashEnd, Object arg18 = _hashEnd, Object arg19 = _hashEnd, Object arg20 = _hashEnd ]) int

Combine up to twenty objects' hash codes into one value.

paintImage({Canvas canvas, Rect rect, Image image, ColorFilter colorFilter, BoxFit fit, ImageRepeat repeat: ImageRepeat.noRepeat, Rect centerSlice, FractionalOffset alignment }) → void

Paints an image into the given rectangle in the canvas.

runApp(Widget app) → void

Inflate the given widget and attach it to the screen.

showAboutDialog({BuildContext context, String applicationName, String applicationVersion, Widget applicationIcon, String applicationLegalese, List<Widget> children }) → void

Displays an AboutDialog, which describes the application and provides a button to show licenses for software used by the application.

showDatePicker({BuildContext context, DateTime initialDate, DateTime firstDate, DateTime lastDate, SelectableDayPredicate selectableDayPredicate }) Future<DateTime>

Shows a dialog containing a material design date picker.

showDialog<T>({BuildContext context, bool barrierDismissible: true, Widget child }) Future<T>

Displays a dialog above the current contents of the app.

showLicensePage({BuildContext context, String applicationName, String applicationVersion, Widget applicationIcon, String applicationLegalese }) → void

Displays a LicensePage, which shows licenses for software used by the application.

showMenu<T>({BuildContext context, RelativeRect position, List<PopupMenuEntry<T>> items, T initialValue, double elevation: 8.0 }) Future<T>

Show a popup menu that contains the items at position. If initialValue is specified then the first item with a matching value will be highlighted and the value of position implies where the left, center point of the highlighted item should appear. If initialValue is not specified then position specifies the menu's origin.

showModalBottomSheet<T>({BuildContext context, WidgetBuilder builder }) Future<T>

Shows a modal material design bottom sheet.

showTimePicker({BuildContext context, TimeOfDay initialTime }) Future<TimeOfDay>

Shows a dialog containing a material design time picker.

Enums

AnimationStatus

The status of an animation

AppLifecycleState

States that an application can be in.

Axis

The two cardinal directions in two dimensions.

AxisDirection

A direction along either the horizontal or vertical Axis.

BannerLocation

Where to show a Banner.

BlendMode

Algorithms to use when painting on the canvas.

BlurStyle

Styles to use for blurs in MaskFilter objects.

BorderStyle

The style of line to draw for a BorderSide in a Border.

BottomNavigationBarType

Defines the layout and behavior of a BottomNavigationBar.

BoxFit

How a box should be inscribed into another box.

BoxShape

The shape to use when rendering a BoxDecoration.

Brightness

Describes the contrast needs of a color.

ButtonTextTheme

Whether a button should use the accent color for its text.

ConnectionState

The state of connection to an asynchronous computation.

CrossAxisAlignment

How the children should be placed along the cross axis in a flex layout.

CrossFadeState

Specifies which of two children to show. See AnimatedCrossFade.

DayPeriod

Whether the TimeOfDay is before or after noon.

DecorationPosition

Where to paint a box decoration.

DismissDirection

The direction in which a Dismissible can be dismissed.

DragAnchor

Where the Draggable should be anchored during a drag.

FilterQuality

Quality levels for image filters.

FlexFit

How the child is inscribed into the available space.

FlutterLogoStyle

Possible ways to draw Flutter's logo.

FontStyle

Whether to slant the glyphs in the font

GrowthDirection

The direction in which a sliver's contents are ordered, relative to the scroll offset axis.

HitTestBehavior

How to behave during hit tests.

ImageRepeat

How to paint any portions of a box not covered by an image.

ListTileControlAffinity

Where to place the control in widgets that use ListTile to position a control next to a label.

ListTileStyle

Defines the title font used for ListTile descendants of a ListTileTheme.

MainAxisAlignment

How the children should be placed along the main axis in a flex layout.

MainAxisSize

How much space space should be occupied in the main axis.

MaterialListType

This enum is deprecated. Please use ListTileTheme instead.

MaterialType

The various kinds of material in material design. Used to configure the default behavior of Material widgets.

Orientation

Whether in portrait or landscape.

Overflow

Whether overflowing children should be clipped, or their overflow be visible.

PaintingStyle

Strategies for painting shapes and paths on a canvas.

PathFillType

Determines the winding rule that decides how the interior of a Path is calculated.

RoutePopDisposition

Indicates whether the current route should be popped.

SnackBarClosedReason

Specify how a SnackBar was closed.

StackFit

How to size the non-positioned children of a Stack.

StepperType

Defines the Stepper's main axis.

StepState

The state of a Step which is used to control the style of the circle and text.

StrokeCap

Styles to use for line endings.

TableCellVerticalAlignment

Vertical alignment options for cells in RenderTable objects.

TargetPlatform

The platform that user interaction should adapt to target.

TextAlign

Whether to align text horizontally.

TextBaseline

A horizontal line used for aligning text.

TextDecorationStyle

The style in which to draw a text decoration

TextDirection

A direction in which text flows.

TextInputType

The type of information for which to optimize the text input control.

TextOverflow

How overflowing text should be handled.

TextSelectionHandleType

Which type of selection handle to be displayed.

TileMode

Defines what happens at the edge of the gradient.

VertexMode

Defines how a list of points is interpreted when drawing a set of triangles.

WrapAlignment

How Wrap should align objects.

WrapCrossAlignment

Who Wrap should align children within a run in the cross axis.

Typedefs

AnimatedListItemBuilder(BuildContext context, int index, Animation<double> animation) Widget

Signature for the builder callback used by AnimatedList.

AnimatedListRemovedItemBuilder(BuildContext context, Animation<double> animation) Widget

Signature for the builder callback used by AnimatedListState.removeItem.

AnimationStatusListener(AnimationStatus status) → void

Signature for listeners attached using Animation.addStatusListener.

AsyncWidgetBuilder(BuildContext context, AsyncSnapshot<T> snapshot) Widget

Signature for strategies that build widgets based on asynchronous interaction.

CreateRectTween(Rect begin, Rect end) RectTween

Signature for a function that takes two Rect instances and returns a RectTween that transitions between them.

DataColumnSortCallback(int columnIndex, bool ascending) → void

Signature for DataColumn.onSort callback.

DismissDirectionCallback(DismissDirection direction) → void

Signature used by Dismissible to indicate that it has been dismissed in the given direction.

DraggableCanceledCallback(Velocity velocity, Offset offset) → void

Signature for when a Draggable is dropped without being accepted by a DragTarget.

DragTargetAccept(T data) → void

Signature for causing a DragTarget to accept the given data.

DragTargetBuilder(BuildContext context, List<T> candidateData, List rejectedData) Widget

Signature for building children of a DragTarget.

DragTargetWillAccept(T data) bool

Signature for determining whether the given data will be accepted by a DragTarget.

ElementVisitor(Element element) → void

Signature for the callback to BuildContext.visitChildElements.

ExpansionPanelCallback(int panelIndex, bool isExpanded) → void

Signature for the callback that's called when an ExpansionPanel is expanded or collapsed.

ExpansionPanelHeaderBuilder(BuildContext context, bool isExpanded) Widget

Signature for the callback that's called when the header of the ExpansionPanel needs to rebuild.

FormFieldBuilder(FormFieldState<T> field) Widget

Signature for building the widget representing the form field.

FormFieldSetter(T newValue) → void

Signature for being notified when a form field changes value.

FormFieldValidator(T value) String

Signature for validating a form field.

GestureDragCancelCallback() → void

Signature for when the pointer that previously triggered a GestureDragDownCallback did not complete.

GestureDragDownCallback(DragDownDetails details) → void

Signature for when a pointer has contacted the screen and might begin to move.

GestureDragEndCallback(DragEndDetails details) → void

Signature for when a pointer that was previously in contact with the screen and moving is no longer in contact with the screen.

GestureDragStartCallback(DragStartDetails details) → void

Signature for when a pointer has contacted the screen and has begun to move.

GestureDragUpdateCallback(DragUpdateDetails details) → void

Signature for when a pointer that is in contact with the screen and moving has moved again.

GestureLongPressCallback() → void

Signature for when a pointer has remained in contact with the screen at the same location for a long period of time.

GestureRecognizerFactory(GestureRecognizer recognizer) GestureRecognizer

Signature for creating gesture recognizers.

GestureScaleEndCallback(ScaleEndDetails details) → void

Signature for when the pointers are no longer in contact with the screen.

GestureScaleStartCallback(ScaleStartDetails details) → void

Signature for when the pointers in contact with the screen have established a focal point and initial scale of 1.0.

GestureScaleUpdateCallback(ScaleUpdateDetails details) → void

Signature for when the pointers in contact with the screen have indicated a new focal point and/or scale.

GestureTapCallback() → void

Signature for when a tap has occurred.

GestureTapCancelCallback() → void

Signature for when the pointer that previously triggered a GestureTapDownCallback will not end up causing a tap.

GestureTapDownCallback(TapDownDetails details) → void

Signature for when a pointer that might cause a tap has contacted the screen.

GestureTapUpCallback(TapUpDetails details) → void

Signature for when a pointer that will trigger a tap has stopped contacting the screen.

IndexedWidgetBuilder(BuildContext context, int index) Widget

Signature for a function that creates a widget for a given index, e.g., in a list.

LayoutWidgetBuilder(BuildContext context, BoxConstraints constraints) Widget

The signature of the LayoutBuilder builder function.

LocaleChangedCallback(Locale locale) Future<LocaleQueryData>

Signature for a function that is called when the operating system changes the current locale.

NestedScrollViewHeaderSliversBuilder(BuildContext context, bool innerBoxIsScrolled) List<Widget>

Signature used by NestedScrollView for building its header.

NotificationListenerCallback(T notification) bool

Signature for Notification listeners.

OrientationWidgetBuilder(BuildContext context, Orientation orientation) Widget

Signature for a function that builds a widget given an Orientation.

PointerCancelEventListener(PointerCancelEvent event) → void

Signature for listening to PointerCancelEvent events.

PointerDownEventListener(PointerDownEvent event) → void

Signature for listening to PointerDownEvent events.

PointerMoveEventListener(PointerMoveEvent event) → void

Signature for listening to PointerMoveEvent events.

PointerUpEventListener(PointerUpEvent event) → void

Signature for listening to PointerUpEvent events.

PopupMenuItemBuilder(BuildContext context) List<PopupMenuEntry<T>>

Signature used by PopupMenuButton to lazily construct the items shown when the button is pressed.

PopupMenuItemSelected(T value) → void

Signature for the callback invoked when a menu item is selected. The argument is the value of the PopupMenuItem that caused its menu to be dismissed.

RectCallback() Rect

Signature for the callback used by ink effects to obtain the rectangle for the effect.

RefreshCallback() Future<Null>

The signature for a function that's called when the user has dragged a RefreshIndicator far enough to demonstrate that they want the app to refresh. The returned Future must complete when the refresh operation is finished.

RouteFactory(RouteSettings settings) Route

Creates a route for the given route settings.

RoutePageBuilder(BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation) Widget

Signature for the PageRouteBuilder function that builds the route's primary contents.

RoutePredicate(Route route) bool

Signature for the Navigator.popUntil predicate argument.

RouteTransitionsBuilder(BuildContext context, Animation<double> animation, Animation<double> secondaryAnimation, Widget child) Widget

Signature for the PageRouteBuilder function that builds the route's transitions.

SelectableDayPredicate(DateTime day) bool

Signature for predicating dates for enabled date selections.

ShaderCallback(Rect bounds) Shader

Signature for a function that creates a Shader for a given Rect.

StatefulWidgetBuilder(BuildContext context, StateSetter setState) Widget

Signature for the builder callback used by StatefulBuilder.

StateSetter(VoidCallback fn) → void

The signature of State.setState functions.

TextSelectionOverlayChanged(TextEditingValue value, Rect caretRect) → void

Signature for reporting changes to the selection component of a TextEditingValue for the purposes of a TextSelectionOverlay. The caretRect argument gives the location of the caret in the coordinate space of the RenderBox given by the TextSelectionOverlay.renderObject.

TransitionBuilder(BuildContext context, Widget child) Widget

A builder that builds a widget given a child.

TweenConstructor(T targetValue) Tween<T>

Signature for a Tween factory.

TweenVisitor(Tween<T> tween, T targetValue, TweenConstructor<T> constructor) Tween<T>

Signature for callbacks passed to AnimatedWidgetBaseState.forEachTween.

ValueChanged(T value) → void

Signature for callbacks that report that an underlying value has changed.

ValueGetter() → T

Signature for callbacks that are to report a value on demand.

ValueSetter(T value) → void

Signature for callbacks that report that a value has been set.

ViewportBuilder(BuildContext context, ViewportOffset position) Widget

Signature used by Scrollable to build the viewport through which the scrollable content is displayed.

VoidCallback() → void

Signature of callbacks that have no arguments and return no data.

WidgetBuilder(BuildContext context) Widget

Signature for a function that creates a widget, e.g. StatelessWidget.build or State.build.

WillPopCallback() Future<bool>

Signature for a callback that verifies that it's OK to call Navigator.pop.

Exceptions / Errors

FlutterError

Error class used to report Flutter-specific assertion failures and contract violations.

TickerCanceled

Exception thrown by Ticker objects on the TickerFuture.orCancel future when the ticker is canceled.