Form class
An optional container for grouping together multiple form field widgets (e.g. TextField widgets).
Each individual form field should be wrapped in a FormField widget, with the Form widget as a common ancestor of all of those. Call methods on FormState to save, reset, or validate each FormField that is a descendant of this Form. To obtain the FormState, you may use Form.of with a context whose ancestor is the Form, or pass a GlobalKey to the Form constructor and call GlobalKey.currentState.
This example shows a Form with one TextFormField to enter an email
address and an ElevatedButton to submit the form. A GlobalKey is used here
to identify the Form and validate input.
link
To create a local project with this code sample, run:
flutter create --sample=widgets.Form.1 mysample
See also:
- GlobalKey, a key that is unique across the entire app.
- FormField, a single form field widget that maintains the current state.
- TextFormField, a convenience widget that wraps a TextField widget in a FormField.
- Inheritance
Constructors
-
Form({Key? key, required Widget child, bool? canPop, @Deprecated('Use onPopInvokedWithResult instead. ' 'This feature was deprecated after v3.22.0-12.0.pre.') PopInvokedCallback? onPopInvoked, PopInvokedWithResultCallback<
Object?> ? onPopInvokedWithResult, @Deprecated('Use canPop and/or onPopInvokedWithResult instead. ' 'This feature was deprecated after v3.12.0-1.0.pre.') WillPopCallback? onWillPop, VoidCallback? onChanged, AutovalidateMode? autovalidateMode}) -
Creates a container for form fields.
const
Properties
- autovalidateMode → AutovalidateMode
-
Used to enable/disable form fields auto validation and update their error
text.
final
- canPop → bool?
-
When false, blocks the current route from being popped.
final
- child → Widget
-
The widget below this widget in the tree.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- onChanged → VoidCallback?
-
Called when one of the form fields changes.
final
- onPopInvoked → PopInvokedCallback?
-
Called after a route pop was handled.
final
-
onPopInvokedWithResult
→ PopInvokedWithResultCallback<
Object?> ? -
Called after a route pop was handled.
final
- onWillPop → WillPopCallback?
-
Enables the form to veto attempts by the user to dismiss the ModalRoute
that contains the form.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → FormState -
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}) → 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
Static Methods
-
maybeOf(
BuildContext context) → FormState? - Returns the FormState of the closest Form widget which encloses the given context, or null if none is found.
-
of(
BuildContext context) → FormState - Returns the FormState of the closest Form widget which encloses the given context.