FAutocomplete constructor
FAutocomplete({
- required List<
String> items, - FAutocompleteStyle style(
- FAutocompleteStyle style
- Widget? label,
- String? hint,
- Widget? description,
- TextMagnifierConfiguration? magnifierConfiguration,
- Object groupId = EditableText,
- FAutocompleteController? controller,
- FocusNode? focusNode,
- TextInputType? keyboardType,
- TextInputAction? textInputAction,
- TextCapitalization textCapitalization = TextCapitalization.none,
- TextAlign textAlign = TextAlign.start,
- TextAlignVertical? textAlignVertical,
- TextDirection? textDirection,
- VoidCallback? onTapHide,
- bool autofocus = false,
- WidgetStatesController? statesController,
- String obscuringCharacter = '•',
- bool obscureText = false,
- bool autocorrect = true,
- SmartDashesType? smartDashesType,
- SmartQuotesType? smartQuotesType,
- bool enableSuggestions = true,
- int? minLines,
- int? maxLines = 1,
- bool expands = false,
- bool readOnly = false,
- bool? showCursor,
- int? maxLength,
- MaxLengthEnforcement? maxLengthEnforcement,
- ValueChanged<
String> ? onChange, - bool onTapAlwaysCalled = false,
- VoidCallback? onEditingComplete,
- ValueChanged<
String> ? onSubmit, - AppPrivateCommandCallback? onAppPrivateCommand,
- List<
TextInputFormatter> ? inputFormatters, - bool enabled = true,
- bool? ignorePointers,
- bool enableInteractiveSelection = true,
- TextSelectionControls? selectionControls,
- DragStartBehavior dragStartBehavior = DragStartBehavior.start,
- MouseCursor? mouseCursor,
- FTextFieldCounterBuilder? counterBuilder,
- ScrollPhysics? scrollPhysics,
- ScrollController? scrollController,
- Iterable<
String> ? autofillHints, - String? restorationId,
- bool stylusHandwritingEnabled = true,
- bool enableIMEPersonalizedLearning = true,
- ContentInsertionConfiguration? contentInsertionConfiguration,
- EditableTextContextMenuBuilder? contextMenuBuilder,
- bool canRequestFocus = true,
- UndoHistoryController? undoController,
- SpellCheckConfiguration? spellCheckConfiguration,
- FFieldIconBuilder<
FAutocompleteStyle> ? prefixBuilder, - FFieldIconBuilder<
FAutocompleteStyle> ? suffixBuilder, - bool clearable(
- TextEditingValue value
- FormFieldSetter<
String> ? onSaved, - VoidCallback? onReset,
- FormFieldValidator<
String> ? validator, - String? initialText,
- AutovalidateMode autovalidateMode = AutovalidateMode.disabled,
- String? forceErrorText,
- Widget errorBuilder(
- BuildContext context,
- String message
- AlignmentGeometry anchor = AlignmentDirectional.topStart,
- AlignmentGeometry fieldAnchor = AlignmentDirectional.bottomStart,
- FPortalConstraints popoverConstraints = const FAutoWidthPortalConstraints(maxHeight: 300),
- FPortalSpacing spacing = const FPortalSpacing(4),
- Offset shift(
- Size size,
- FPortalChildBox childBox,
- FPortalBox portalBox
- Offset offset = Offset.zero,
- FPopoverHideRegion hideRegion = FPopoverHideRegion.excludeChild,
- bool autoHide = true,
- FFieldBuilder<
FAutocompleteStyle> builder = _builder, - bool rightArrowToComplete = false,
- FutureOr<
Iterable< filter(String> >- String query
- FAutoCompleteContentBuilder? contentBuilder,
- ScrollController? contentScrollController,
- ScrollPhysics contentPhysics = const ClampingScrollPhysics(),
- FItemDivider contentDivider = FItemDivider.none,
- Widget contentEmptyBuilder(
- BuildContext context,
- FAutocompleteContentStyle style
- Widget contentLoadingBuilder(
- BuildContext context,
- FAutocompleteContentStyle style
- Widget contentErrorBuilder(
- BuildContext context,
- Object? error,
- StackTrace stackTrace
- Key? key,
Creates a FAutocomplete from the given items
.
For more control over the appearance of items, use FAutocomplete.builder.
Implementation
FAutocomplete({
required List<String> items,
FAutocompleteStyle Function(FAutocompleteStyle style)? style,
Widget? label,
String? hint,
Widget? description,
TextMagnifierConfiguration? magnifierConfiguration,
Object groupId = EditableText,
FAutocompleteController? controller,
FocusNode? focusNode,
TextInputType? keyboardType,
TextInputAction? textInputAction,
TextCapitalization textCapitalization = TextCapitalization.none,
TextAlign textAlign = TextAlign.start,
TextAlignVertical? textAlignVertical,
TextDirection? textDirection,
VoidCallback? onTapHide,
bool autofocus = false,
WidgetStatesController? statesController,
String obscuringCharacter = '•',
bool obscureText = false,
bool autocorrect = true,
SmartDashesType? smartDashesType,
SmartQuotesType? smartQuotesType,
bool enableSuggestions = true,
int? minLines,
int? maxLines = 1,
bool expands = false,
bool readOnly = false,
bool? showCursor,
int? maxLength,
MaxLengthEnforcement? maxLengthEnforcement,
ValueChanged<String>? onChange,
bool onTapAlwaysCalled = false,
VoidCallback? onEditingComplete,
ValueChanged<String>? onSubmit,
AppPrivateCommandCallback? onAppPrivateCommand,
List<TextInputFormatter>? inputFormatters,
bool enabled = true,
bool? ignorePointers,
bool enableInteractiveSelection = true,
TextSelectionControls? selectionControls,
DragStartBehavior dragStartBehavior = DragStartBehavior.start,
MouseCursor? mouseCursor,
FTextFieldCounterBuilder? counterBuilder,
ScrollPhysics? scrollPhysics,
ScrollController? scrollController,
Iterable<String>? autofillHints,
String? restorationId,
bool stylusHandwritingEnabled = true,
bool enableIMEPersonalizedLearning = true,
ContentInsertionConfiguration? contentInsertionConfiguration,
EditableTextContextMenuBuilder? contextMenuBuilder,
bool canRequestFocus = true,
UndoHistoryController? undoController,
SpellCheckConfiguration? spellCheckConfiguration,
FFieldIconBuilder<FAutocompleteStyle>? prefixBuilder,
FFieldIconBuilder<FAutocompleteStyle>? suffixBuilder,
bool Function(TextEditingValue value) clearable = _clearable,
FormFieldSetter<String>? onSaved,
VoidCallback? onReset,
FormFieldValidator<String>? validator,
String? initialText,
AutovalidateMode autovalidateMode = AutovalidateMode.disabled,
String? forceErrorText,
Widget Function(BuildContext context, String message) errorBuilder = FFormFieldProperties.defaultErrorBuilder,
AlignmentGeometry anchor = AlignmentDirectional.topStart,
AlignmentGeometry fieldAnchor = AlignmentDirectional.bottomStart,
FPortalConstraints popoverConstraints = const FAutoWidthPortalConstraints(maxHeight: 300),
FPortalSpacing spacing = const FPortalSpacing(4),
Offset Function(Size size, FPortalChildBox childBox, FPortalBox portalBox) shift = FPortalShift.flip,
Offset offset = Offset.zero,
FPopoverHideRegion hideRegion = FPopoverHideRegion.excludeChild,
bool autoHide = true,
FFieldBuilder<FAutocompleteStyle> builder = _builder,
bool rightArrowToComplete = false,
FutureOr<Iterable<String>> Function(String query)? filter,
FAutoCompleteContentBuilder? contentBuilder,
ScrollController? contentScrollController,
ScrollPhysics contentPhysics = const ClampingScrollPhysics(),
FItemDivider contentDivider = FItemDivider.none,
Widget Function(BuildContext context, FAutocompleteContentStyle style) contentEmptyBuilder =
defaultContentEmptyBuilder,
Widget Function(BuildContext context, FAutocompleteContentStyle style) contentLoadingBuilder =
defaultContentLoadingBuilder,
Widget Function(BuildContext context, Object? error, StackTrace stackTrace)? contentErrorBuilder,
Key? key,
}) : this.builder(
filter: filter ?? (query) => items.where((item) => item.toLowerCase().startsWith(query.toLowerCase())),
contentBuilder:
contentBuilder ??
(context, query, values) => [for (final value in values) FAutocompleteItem(value: value)],
style: style,
label: label,
hint: hint,
description: description,
magnifierConfiguration: magnifierConfiguration,
groupId: groupId,
controller: controller,
focusNode: focusNode,
keyboardType: keyboardType,
textInputAction: textInputAction,
textCapitalization: textCapitalization,
textAlign: textAlign,
textAlignVertical: textAlignVertical,
textDirection: textDirection,
onTapHide: onTapHide,
autofocus: autofocus,
statesController: statesController,
obscuringCharacter: obscuringCharacter,
obscureText: obscureText,
autocorrect: autocorrect,
smartDashesType: smartDashesType,
smartQuotesType: smartQuotesType,
enableSuggestions: enableSuggestions,
minLines: minLines,
maxLines: maxLines,
expands: expands,
readOnly: readOnly,
showCursor: showCursor,
maxLength: maxLength,
maxLengthEnforcement: maxLengthEnforcement,
onChange: onChange,
onTapAlwaysCalled: onTapAlwaysCalled,
onEditingComplete: onEditingComplete,
onSubmit: onSubmit,
onAppPrivateCommand: onAppPrivateCommand,
inputFormatters: inputFormatters,
enabled: enabled,
ignorePointers: ignorePointers,
enableInteractiveSelection: enableInteractiveSelection,
selectionControls: selectionControls,
dragStartBehavior: dragStartBehavior,
mouseCursor: mouseCursor,
counterBuilder: counterBuilder,
scrollPhysics: scrollPhysics,
scrollController: scrollController,
autofillHints: autofillHints,
restorationId: restorationId,
stylusHandwritingEnabled: stylusHandwritingEnabled,
enableIMEPersonalizedLearning: enableIMEPersonalizedLearning,
contentInsertionConfiguration: contentInsertionConfiguration,
contextMenuBuilder: contextMenuBuilder,
canRequestFocus: canRequestFocus,
undoController: undoController,
spellCheckConfiguration: spellCheckConfiguration,
prefixBuilder: prefixBuilder,
suffixBuilder: suffixBuilder,
clearable: clearable,
onSaved: onSaved,
onReset: onReset,
validator: validator,
initialText: initialText,
autovalidateMode: autovalidateMode,
forceErrorText: forceErrorText,
errorBuilder: errorBuilder,
anchor: anchor,
fieldAnchor: fieldAnchor,
popoverConstraints: popoverConstraints,
spacing: spacing,
shift: shift,
offset: offset,
hideRegion: hideRegion,
autoHide: autoHide,
builder: builder,
rightArrowToComplete: rightArrowToComplete,
contentScrollController: contentScrollController,
contentPhysics: contentPhysics,
contentDivider: contentDivider,
contentEmptyBuilder: contentEmptyBuilder,
contentLoadingBuilder: contentLoadingBuilder,
contentErrorBuilder: contentErrorBuilder,
key: key,
);