A single form field. This widget maintains the current state of the form field, so that updates and validation errors are visually reflected in the UI.

When used inside a Form, you can use methods on FormState to query or manipulate the form data as a whole. For example, calling FormState.save will invoke each FormField's onSaved callback in turn.

Use a GlobalKey with FormField if you want to retrieve its current state, for example if you want one form field to depend on another.

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: Form, InputFormField

Inheritance

Constructors

FormField({Key key, @required FormFieldBuilder<T> builder, FormFieldSetter<T> onSaved, FormFieldValidator<T> validator, T initialValue, bool autovalidate: false })

Properties

autovalidate bool

If true, this form fields will validate and update its error text immediately after every change. Otherwise, you must call FormFieldState.validate to validate. If part of a Form that autovalidates, this value will be ignored.

read-only
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.

read-only
initialValue → T

An optional value to initialize the form field to, or null otherwise.

read-only
onSaved FormFieldSetter<T>

An optional method to call with the final value when the form is saved via Form.save().

read-only
validator FormFieldValidator<T>

An optional method that validates an input. Returns an error string to display if the input is invalid, or null otherwise.

read-only
hashCode int

Get a hash code for this object.

read-only, inherited
key Key

Controls how one widget replaces another widget in the tree.

read-only, inherited
runtimeType Type

A representation of the runtime type of the object.

read-only, inherited

Operators

operator ==(other) bool

The equality operator.

inherited

Methods

createState() FormFieldState<T>

Creates the mutable state for this widget at a given location in the tree.

createElement() StatefulElement

Creates a StatefulElement to manage this widget's location in the tree.

inherited
debugFillDescription(List<String> description) → void

Add additional information to the given description for use by toString.

inherited
noSuchMethod(Invocation invocation) → dynamic

Invoked when a non-existent method or property is accessed.

inherited
toString() String

Returns a string representation of this object.

inherited
toStringShort() String

A short, textual description of this widget.

inherited