SnackBar class

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

To display a snack bar, call Scaffold.of(context).showSnackBar(), passing an instance of SnackBar that describes the message.

To control how long the SnackBar remains visible, specify a duration.

A SnackBar with an action will not time out when TalkBack or VoiceOver are enabled. This is controlled by AccessibilityFeatures.accessibleNavigation.

See also:

Inheritance

Constructors

SnackBar({Key key, @required Widget content, Color backgroundColor, double elevation, ShapeBorder shape, SnackBarBehavior behavior, SnackBarAction action, Duration duration: _snackBarDisplayDuration, Animation<double> animation, VoidCallback onVisible })
Creates a snack bar. [...]
const

Properties

action SnackBarAction
(optional) An action that the user can take based on the snack bar. [...]
final
animation Animation<double>
The animation driving the entrance and exit of the snack bar.
final
backgroundColor Color
The Snackbar's background color. If not specified it will use ThemeData.snackBarTheme.backgroundColor. If that is not specified it will default to a dark variation of ColorScheme.surface for light themes, or ColorScheme.onSurface for dark themes.
final
behavior SnackBarBehavior
This defines the behavior and location of the snack bar. [...]
final
content Widget
The primary content of the snack bar. [...]
final
duration Duration
The amount of time the snack bar should be displayed. [...]
final
elevation double
The z-coordinate at which to place the snack bar. This controls the size of the shadow below the snack bar. [...]
final
onVisible VoidCallback
Called the first time that the snackbar is visible within a Scaffold.
final
shape ShapeBorder
The shape of the snack bar's Material. [...]
final
hashCode int
The hash code for this object. [...]
read-only, inherited
key Key
Controls how one widget replaces another widget in the tree. [...]
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited

Methods

createState() State<SnackBar>
Creates the mutable state for this widget at a given location in the tree. [...]
override
withAnimation(Animation<double> newAnimation, { Key fallbackKey }) SnackBar
Creates a copy of this snack bar but with the animation replaced with the given animation. [...]
createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree. [...]
inherited
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children. [...]
@protected, inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toDiagnosticsNode({String name, DiagnosticsTreeStyle style }) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep. [...]
inherited
toString({DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a string representation of this object.
inherited
toStringDeep({String prefixLineOne: '', String prefixOtherLines, DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a string representation of this node and its descendants. [...]
inherited
toStringShallow({String joiner: ', ', DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a one-line detailed description of the object. [...]
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(dynamic other) bool
The equality operator. [...]
inherited

Static Methods

createAnimationController({TickerProvider vsync }) AnimationController
Creates an animation controller useful for driving a snack bar's entrance and exit animation.