ElevatedButtonModifier class
A Material Design "elevated button".
Use elevated buttons to add dimension to otherwise mostly flat layouts, e.g. in long busy lists of content, or in wide spaces. Avoid using elevated buttons on already-elevated content such as dialogs or cards.
An elevated button is a label child
displayed on a Material
widget whose Material.elevation increases when the button is
pressed. The label's Text and Icon widgets are displayed in
style's ButtonStyle.foregroundColor and the button's filled
background is the ButtonStyle.backgroundColor.
The elevated button's default style is defined by
defaultStyleOf
. The style of this elevated button can be
overridden with its style parameter. The style of all elevated
buttons in a subtree can be overridden with the
ElevatedButtonTheme, and the style of all of the elevated
buttons in an app can be overridden with the Theme's
ThemeData.elevatedButtonTheme property.
The static styleFrom
method is a convenient way to create a
elevated button ButtonStyle from simple values.
If onPressed and onLongPress callbacks are null, then the button will be disabled.
{@tool dartpad} This sample produces an enabled and a disabled ElevatedButton.
** See code in examples/api/lib/material/elevated_button/elevated_button.0.dart ** {@end-tool}
See also:
- TextButton, a simple flat button without a shadow.
- OutlinedButton, a TextButton with a border outline.
- material.io/design/components/buttons.html
- m3.material.io/components/buttons
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- SingleChildStatelessModifier
- ElevatedButtonModifier
- Available extensions
Constructors
-
ElevatedButtonModifier({Key? key, Widget? child, Key? modifierKey, required VoidCallback? onPressed, VoidCallback? onLongPress, ValueChanged<
bool> ? onHover, ValueChanged<bool> ? onFocusChange, ButtonStyle? style, FocusNode? focusNode, bool autofocus = false, Clip clipBehavior = Clip.none, MaterialStatesController? statesController}) -
Create an ElevatedButton.
const
-
ElevatedButtonModifier.icon({Key? key, Key? modifierKey, required VoidCallback? onPressed, VoidCallback? onLongPress, ValueChanged<
bool> ? onHover, ValueChanged<bool> ? onFocusChange, ButtonStyle? style, FocusNode? focusNode, bool? autofocus, Clip? clipBehavior, required Widget icon, required Widget label, MaterialStatesController? statesController}) -
Create an elevated button from a pair of widgets that serve as the button's
icon
andlabel
.factory
Properties
- autofocus → bool
-
True if this widget will be selected as the initial focus when no other
node in its scope is currently focused.
final
- clipBehavior → Clip
-
The content will be clipped (or not) according to this option.
final
- focusNode → FocusNode?
-
An optional focus node to use as the focus node for this widget.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- modifierKey → Key?
-
The actual key of the widget, which Modifier wrapped
finalinherited
-
onFocusChange
→ ValueChanged<
bool> ? -
Handler called when the focus changes.
final
-
onHover
→ ValueChanged<
bool> ? -
Called when a pointer enters or exits the button response area.
final
- onLongPress → VoidCallback?
-
Called when the button is long-pressed.
final
- onPressed → VoidCallback?
-
Called when the button is tapped or otherwise activated.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- statesController → MaterialStatesController?
-
Represents the interactive "state" of this widget in terms of
a set of MaterialStates, like MaterialState.pressed and
MaterialState.focused.
final
- style → ButtonStyle?
-
Customizes this button's appearance.
final
Methods
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
inherited
-
buildWithChild(
BuildContext context, Widget? child) → Widget -
A build method that receives an extra
child
parameter.override -
createElement(
) → SingleChildStatelessElement -
Create a SingleChildStatelessElement
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent 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.info}) → String -
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 ==(
Object other) → bool -
The equality operator.
inherited