AutocompleteLabel<T> class
A widget that helps the user to select a label by entering some text and selecting from a list of options.
The autocomplete label calls the onChanged callback whenever the user changes the values in the field.
To control the values that is displayed in the autocomplete label, use the autocompleteLabelController. For example, to set the initial values of the autocomplete label, use a controller that already contains some values. The controller can also control the selectable label options source (and to observe changes to the values).
Reading values:
A common way to read a values from a AutocompleteLabel is to use the onChanged callback. This callback is applied to the autocomplete label's current values when the user finishes editing or selected option.
For most applications the onChanged callback will be sufficient for reacting to user input.
Keep in mind you can also always read the current string
from a AutocompleteLabel's AutocompleteLabelController
using AutocompleteLabelController.text
.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- AutocompleteLabel
Constructors
- AutocompleteLabel({Key? key, ValueViewBuilder valueViewBuilder = defaultValueViewBuilder, ValueBoxBuilder valueBoxBuilder = defaultValueBoxBuilder, OptionViewBuilder optionViewBuilder = defaultOptionViewBuilder, OptionBoxBuilder optionBoxBuilder = defaultOptionBoxBuild, FieldViewBuilder fieldViewBuilder = defaultFieldViewBuilder, AutocompleteLabelController? autocompleteLabelController, TextEditingController? textEditingController, OptionsBuilder? optionsBuilder, ValueBuilder valueBuilder = defaultValueBuilder, FocusNode? focusNode, OnChanged? onChanged, double minOptionBoxHeight = 100, bool keepAutofocus = true, OptionToString displayStringForOption = defaultStringForOption, VerticalDirection? optionBoxDirection})
- Creates an instance of AutocompleteLabel.
Properties
- autocompleteLabelController → AutocompleteLabelController
-
Controls the values being edited.
final
- displayStringForOption → OptionToString
-
Returns the string to display in the field when the label option is selected.
This is useful when using a custom T type and
the string to display is different than the string to search by.
final
- fieldViewBuilder → FieldViewBuilder
-
Builds the field whose input is used to get the options.
final
- focusNode → FocusNode
-
Defines the keyboard focus for this widget.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- keepAutofocus → bool
-
Whether to keep the focus automatically, this
autofocus
is not TextField.autofocus.final - key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- minOptionBoxHeight → double
-
The minimum height of the selectable label options widgets.
final
- onChanged → OnChanged?
-
Called when the user initiates a change to the AutocompleteLabel's values:
when they have inserted or deleted value.
final
- optionBoxBuilder → OptionBoxBuilder
-
Builds the selectable label options widgets(which is option box) from a list of values objects.
final
- optionBoxDirection → VerticalDirection?
-
The vertical direction attribute of the selectable label options widgets.
final
- optionsBuilder → OptionsBuilder?
-
A function that returns the current selectable label option objects given the current string.
final
- optionViewBuilder → OptionViewBuilder
-
Build a single item widget of the selectable label options widgets
from the option of the specified index.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- textEditingController → TextEditingController
-
Controls the text being edited.
final
- valueBoxBuilder → ValueBoxBuilder
-
Builds the deletable label values widgets(which is value box)
from textField and a list of values objects.
final
- valueBuilder → ValueBuilder
-
A function that returns the label object given the current string.
final
- valueViewBuilder → ValueViewBuilder
-
Build a single item widget of the deletable label values widgets
from the value of the specified index
final
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< StatefulWidget> -
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
-
defaultFieldViewBuilder(
BuildContext context, TextEditingController textEditingController, FocusNode focusNode, VoidCallback onFieldSubmitted) → Widget - The default way to build the text field widget in fieldViewBuilder.
-
defaultOptionBoxBuild(
BuildContext context, OnSelected< Object> onSelected, OptionViewBuilder optionViewBuilder, Iterable options, int highlightIndex, AxisDirection boxDirection) → Widget - The default way to build the selectable label options widgets in optionBoxBuilder.
-
defaultOptionViewBuilder(
BuildContext context, OnSelected< Object> onSelected, int index, dynamic option, bool isHighlight) → Widget - The default way to build the single item of the option box in optionViewBuilder.
-
defaultStringForOption(
dynamic option) → String - The default way to convert an option to a string in displayStringForOption.
-
defaultValueBoxBuilder(
BuildContext context, ValueOnDeleted onDeleted, ValueViewBuilder valueViewBuilder, Widget textField, Iterable values) → Widget - The default way to build the deletable label values widgets in valueBoxBuilder.
-
defaultValueBuilder(
String value) → dynamic - The default way to convert an string to a label value in valueBuilder.
-
defaultValueViewBuilder(
BuildContext context, ValueOnDeleted onDeleted, int index, dynamic value) → Widget - The default way to build the single item of the value box in valueViewBuilder.