The Flutter widgets framework.

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

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>()

Typedefs

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.

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.

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.

GlobalKeyRemoveListener(GlobalKey key) → void

Signature for a callback when a global key is removed from the tree.

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.

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.

RouteFactory(RouteSettings settings) Route

Creates a route for the given route settings.

RoutePageBuilder(BuildContext context, Animation<double> animation, Animation<double> forwardAnimation) 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> forwardAnimation, Widget child) Widget

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

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(InputValue value, Rect caretRect) → void

Signature for reporting changes to the selection component of an InputValue 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

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.

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

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.

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.

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> args) int

Combine the hashCodes of an arbitrary number of values 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 values' hashCodes 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.

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.

BoxFit

How a box should be inscribed into another box.

BoxShape

The shape to use when rendering a BoxDecoration.

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.

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.

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.

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.

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

For which type of information 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.

Classes

AbsorbPointer

A widget that absorbs pointers during hit testing.

AbstractScrollState

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.

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.

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.

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.

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.

BackdropFilter

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

BackgroundImage

A background image for a box.

BallisticScrollActivity

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.

BlockBody

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

Border

A border of a box, comprised of four sides.

BorderRadius

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

BorderSide

A side of a border of a box.

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.

Canvas

An interface for recording graphical operations.

Center

A widget that centers its child within itself.

CheckedModeBanner

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

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.

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.

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.

DecoratedBox

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

Decoration

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

DecorationTween

An interpolation between two Decorations.

DefaultAssetBundle

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

DefaultTextStyle

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

Dismissible

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

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

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.

DrivenScrollActivity

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.

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.

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.

FlippedCurve

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

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.

FlutterLogoDecoration

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

Focus

A scope for managing the focus state of descendant widgets.

FontWeight

The thickness of the glyphs used to draw the text

Form

An optional container for grouping together multiple form field widgets (e.g. Input 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.

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.

HSVColor

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

IdleScrollActivity

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.

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.

InputValue

Configuration information for a text input field.

Interval

A curve that is 0.0 until start, then curved 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.

LimitedBox

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

LinearGradient

A 2D linear gradient.

Listener

A widget that calls callbacks in response to pointer events.

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.

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.

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.

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.

NetworkImage

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

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

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.

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.

PhysicalModel

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

Placeholder

A widget whose child can be mutated.

PlaceholderState

State for a Placeholder widget.

Point

An immutable 2D floating-point x,y coordinate pair.

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.

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<RelativeRect> to transition the child's position from a start position to and end position over the lifetime of the animation.

PrimaryScrollController

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.

Radius

A radius for either circular or elliptical shapes.

RawGestureDetector

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

RawGestureDetectorState

State for a RawGestureDetector.

RawImage

A widget that displays a 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 an origin point.

RectTween

An interpolation between two rectangles.

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.

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

A 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.

ScaleEndDetails

Details for GestureScaleEndCallback.

ScaleStartDetails

Details for GestureScaleStartCallback.

ScaleTransition

Animates the scale of transformed widget.

ScaleUpdateDetails

Details for GestureScaleUpdateCallback.

Scrollable

ScrollableState

State object for a Scrollable widget.

ScrollActivity

Base class for scrolling activities like dragging, and flinging.

ScrollBehavior

ScrollConfiguration

ScrollController

ScrollEndNotification

ScrollMetrics

A description of a Scrollable's contents, useful for modelling the state of the viewport, for example by a Scrollbar.

ScrollNotification

ScrollPhysics

ScrollPosition

ScrollStartNotification

ScrollUpdateNotification

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

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.

SlideTransition

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

SliverChildBuilderDelegate

SliverChildDelegate

SliverChildListDelegate

SliverFill

SliverFixedExtentList

SliverGrid

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

SliverMultiBoxAdaptorElement

SliverMultiBoxAdaptorWidget

SliverPadding

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

SliverPersistentHeader

SliverPersistentHeaderDelegate

SliverToBoxAdapter

A sliver that contains a single box widget.

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.

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.

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.

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

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.

Threshold

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

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.

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.

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.

TypeMatcher

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

UniqueKey

A key that is only equal to itself.

UniqueWidget

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

UserScrollNotification

ValueKey

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

Velocity

A velocity in two dimensions.

Viewport

ViewportElement

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.

Exceptions / Errors

FlutterError

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