DropdownButtonFormField2<T> class
A FormField that contains a DropdownButton2.
This is a convenience widget that wraps a DropdownButton2 widget in a FormField.
A Form ancestor is not required. The Form simply makes it easier to save, reset, or validate multiple fields at once. To use without a Form, pass a GlobalKey to the constructor and use GlobalKey.currentState to save or reset the form field.
See also:
- DropdownButton2, which is the underlying text field without the Form integration.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- FormField<
T> - DropdownButtonFormField2
Constructors
-
DropdownButtonFormField2({Key? key, required List<
DropdownMenuItem< ? items, DropdownButtonBuilder? selectedItemBuilder, T? value, Widget? hint, Widget? disabledHint, ValueChanged<T> >T?> ? onChanged, int dropdownElevation = 8, TextStyle? style, Widget? icon, Widget? iconOnClick, Color? iconDisabledColor, Color? iconEnabledColor, double iconSize = 24.0, bool isDense = true, bool isExpanded = false, double itemHeight = kMinInteractiveDimension, Color? focusColor, FocusNode? focusNode, bool autofocus = false, InputDecoration? decoration, FormFieldSetter<T> ? onSaved, FormFieldValidator<T> ? validator, AutovalidateMode? autovalidateMode, double? dropdownMaxHeight, bool? enableFeedback, AlignmentGeometry alignment = AlignmentDirectional.centerStart, double? buttonHeight, double? buttonWidth, EdgeInsetsGeometry? buttonPadding, BoxDecoration? buttonDecoration, int? buttonElevation, EdgeInsetsGeometry? itemPadding, double? dropdownWidth, EdgeInsetsGeometry? dropdownPadding, BoxDecoration? dropdownDecoration, Color? selectedItemHighlightColor, Radius? scrollbarRadius, double? scrollbarThickness, bool? scrollbarAlwaysShow, Offset? offset, Widget? customButton, List<int> ? customItemsIndexes, double? customItemsHeight, bool openWithLongPress = false, bool dropdownOverButton = false, bool dropdownFullScreen = false, void onMenuStateChange(bool isOpen)?}) - Creates a DropdownButton2 widget that is a FormField, wrapped in an InputDecorator.
Properties
- autovalidateMode → AutovalidateMode
-
Used to enable/disable this form field auto validation and update its
error text.
finalinherited
-
builder
→ FormFieldBuilder<
T> -
Function that returns the widget representing this form field. It is
passed the form field state as input, containing the current value and
validation state of this field.
finalinherited
- decoration → InputDecoration
-
The decoration to show around the dropdown button form field.
final
- enabled → bool
-
Whether the form is able to receive user input.
finalinherited
- forceErrorText → String?
-
An optional property that forces the FormFieldState into an error state
by directly setting the FormFieldState.errorText property without
running the validator function.
finalinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- initialValue → T?
-
An optional value to initialize the form field to, or null otherwise.
finalinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
-
onChanged
→ ValueChanged<
T?> ? -
Called when the user selects an item.
final
-
onSaved
→ FormFieldSetter<
T> ? -
An optional method to call with the final value when the form is saved via
FormState.save.
finalinherited
- restorationId → String?
-
Restoration ID to save and restore the state of the form field.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
validator
→ FormFieldValidator<
T> ? -
An optional method that validates an input. Returns an error string to
display if the input is invalid, or null otherwise.
finalinherited
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → FormFieldState< T> -
Creates the mutable state for this widget at a given location in the tree.
override
-
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, 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