BackButton class Null safety
A Material Design back button.
A BackButton is an IconButton with a "back" icon appropriate for the current TargetPlatform. When pressed, the back button calls Navigator.maybePop to return to the previous route unless a custom onPressed callback is provided.
When deciding to display a BackButton, consider using
ModalRoute.of(context)?.canPop
to check whether the current route can be
popped. If that value is false (e.g., because the current route is the
initial route), the BackButton will not have any effect when pressed,
which could frustrate the user.
Requires one of its ancestors to be a Material widget.
See also:
- AppBar, which automatically uses a BackButton in its AppBar.leading slot when the Scaffold has no Drawer and the current Route is not the Navigator's first route.
- BackButtonIcon, which is useful if you need to create a back button that responds differently to being pressed.
- IconButton, which is a more general widget for creating buttons with icons.
- CloseButton, an alternative which may be more appropriate for leaf node pages in the navigation tree.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- BackButton
Constructors
- BackButton({Key? key, Color? color, VoidCallback? onPressed})
-
Creates an IconButton with the appropriate "back" icon for the current
target platform.
const
Properties
- color → Color?
-
The color to use for the icon.
final
- hashCode → int
- The hash code for this object.
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- onPressed → VoidCallback?
-
An override callback to perform instead of the default behavior which is
to pop the Navigator.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
read-onlyinherited
Methods
-
build(
BuildContext context) → Widget -
Describes the part of the user interface represented by this widget.
override
-
createElement(
) → StatelessElement -
Creates a StatelessElement 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">@protectedinherited -
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.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.
nonVirtual">@nonVirtualinherited