PopupMenuItemModifier<T> class
An item in a Material Design popup menu.
To show a popup menu, use the showMenu function. To create a button that shows a popup menu, consider using PopupMenuButton.
To show a checkmark next to a popup menu item, consider using CheckedPopupMenuItem.
Typically the child
of a PopupMenuItem is a Text widget. More
elaborate menus with icons can use a ListTile. By default, a
PopupMenuItem is kMinInteractiveDimension pixels high. If you use a widget
with a different height, it must be specified in the height property.
{@tool snippet}
Here, a Text widget is used with a popup menu item. The Menu
type
is an enum, not shown here.
const PopupMenuItem<Menu>(
value: Menu.itemOne,
child: Text('Item 1'),
)
{@end-tool}
See the example at PopupMenuButton for how this example could be used in a
complete menu, and see the example at CheckedPopupMenuItem for one way to
keep the text of PopupMenuItems that use Text widgets in their child
slot aligned with the text of CheckedPopupMenuItems or of PopupMenuItem
that use a ListTile in their child
slot.
See also:
- PopupMenuDivider, which can be used to divide items from each other.
- CheckedPopupMenuItem, a variant of PopupMenuItem with a checkmark.
- showMenu, a method to dynamically show a popup menu at a given location.
- PopupMenuButton, an IconButton that automatically shows a menu when it is tapped.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- SingleChildStatelessModifier
- PopupMenuItemModifier
- Implementers
- Available extensions
Constructors
- PopupMenuItemModifier({Key? key, Widget? child, Key? modifierKey, T? value, VoidCallback? onTap, bool enabled = true, double height = kMinInteractiveDimension, EdgeInsets? padding, TextStyle? textStyle, MouseCursor? mouseCursor})
-
Creates an item for a popup menu.
const
Properties
- enabled → bool
-
Whether the user is permitted to select this item.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- height → double
-
The minimum height of the menu item.
final
- 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
- mouseCursor → MouseCursor?
-
The cursor for a mouse pointer when it enters or is hovering over the
widget.
final
- onTap → VoidCallback?
-
Called when the menu item is tapped.
final
- padding → EdgeInsets?
-
The padding of the menu item.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- textStyle → TextStyle?
-
The text style of the popup menu item.
final
- value → T?
-
The value that will be returned by showMenu if this entry is selected.
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
-
modified(
) → Modifier -
Available on Widget, provided by the ModifierTransformer extension
Transform normal widget to Modifier -
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, int wrapWidth = 65}) → 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