DropdownFlutter<T>.search constructor
DropdownFlutter<T>.search ({
- Key? key,
- required List<
T> ? items, - required dynamic onChanged(
- T?
- SingleSelectController<
T?> ? controller, - ScrollController? itemsScrollController,
- T? initialItem,
- String? hintText,
- CustomDropdownDecoration? decoration,
- dynamic visibility()?,
- OverlayPortalController? overlayController,
- String? searchHintText,
- String? noResultFoundText,
- _ListItemBuilder<
T> ? listItemBuilder, - _HeaderBuilder<
T> ? headerBuilder, - _HintBuilder? hintBuilder,
- _NoResultFoundBuilder? noResultFoundBuilder,
- String? validator(
- T?
- bool validateOnChange = true,
- int maxlines = 1,
- double? overlayHeight,
- EdgeInsets? closedHeaderPadding,
- EdgeInsets? expandedHeaderPadding,
- EdgeInsets? itemsListPadding,
- EdgeInsets? listItemPadding,
- bool excludeSelected = true,
- bool canCloseOutsideBounds = true,
- bool hideSelectedFieldWhenExpanded = false,
- bool enabled = true,
- CustomDropdownDisabledDecoration? disabledDecoration,
- bool closeDropDownOnClearFilterSearch = false,
Implementation
DropdownFlutter.search({
super.key,
required this.items,
required this.onChanged,
this.controller,
this.itemsScrollController,
this.initialItem,
this.hintText,
this.decoration,
this.visibility,
this.overlayController,
this.searchHintText,
this.noResultFoundText,
this.listItemBuilder,
this.headerBuilder,
this.hintBuilder,
this.noResultFoundBuilder,
this.validator,
this.validateOnChange = true,
this.maxlines = 1,
this.overlayHeight,
this.closedHeaderPadding,
this.expandedHeaderPadding,
this.itemsListPadding,
this.listItemPadding,
this.excludeSelected = true,
this.canCloseOutsideBounds = true,
this.hideSelectedFieldWhenExpanded = false,
this.enabled = true,
this.disabledDecoration,
this.closeDropDownOnClearFilterSearch = false,
}) : assert(
initialItem == null || controller == null,
'Only one of initialItem or controller can be specified at a time',
),
assert(
initialItem == null || items!.contains(initialItem),
'Initial item must match with one of the item in items list.',
),
assert(
controller == null ||
controller.value == null ||
items!.contains(controller.value),
'Controller value must match with one of the item in items list.',
),
_searchType = _SearchType.onListData,
_dropdownType = _DropdownType.singleSelect,
futureRequest = null,
futureRequestDelay = null,
initialItems = null,
onListChanged = null,
listValidator = null,
headerListBuilder = null,
searchRequestLoadingIndicator = null,
multiSelectController = null;