CupertinoTypeAheadField<T> constructor

const CupertinoTypeAheadField<T>({
  1. Key? key,
  2. required SuggestionsCallback<T> suggestionsCallback,
  3. required ItemBuilder<T> itemBuilder,
  4. IndexedWidgetBuilder? itemSeparatorBuilder,
  5. required SuggestionSelectionCallback<T> onSuggestionSelected,
  6. CupertinoTextFieldConfiguration textFieldConfiguration = const CupertinoTextFieldConfiguration(),
  7. CupertinoSuggestionsBoxDecoration suggestionsBoxDecoration = const CupertinoSuggestionsBoxDecoration(),
  8. Duration debounceDuration = const Duration(milliseconds: 300),
  9. CupertinoSuggestionsBoxController? suggestionsBoxController,
  10. WidgetBuilder? loadingBuilder,
  11. WidgetBuilder? noItemsFoundBuilder,
  12. ErrorBuilder? errorBuilder,
  13. AnimationTransitionBuilder? transitionBuilder,
  14. double animationStart = 0.25,
  15. Duration animationDuration = const Duration(milliseconds: 500),
  16. bool getImmediateSuggestions = false,
  17. double suggestionsBoxVerticalOffset = 5.0,
  18. AxisDirection direction = AxisDirection.down,
  19. bool hideOnLoading = false,
  20. bool hideOnEmpty = false,
  21. bool hideOnError = false,
  22. bool hideSuggestionsOnKeyboardHide = true,
  23. bool keepSuggestionsOnLoading = true,
  24. bool keepSuggestionsOnSuggestionSelected = false,
  25. bool autoFlipDirection = false,
  26. bool autoFlipListDirection = true,
  27. double autoFlipMinHeight = 64.0,
  28. int minCharsForSuggestions = 0,
  29. bool hideKeyboardOnDrag = true,
})

Implementation

const CupertinoTypeAheadField({
  Key? key,
  required this.suggestionsCallback,
  required this.itemBuilder,
  this.itemSeparatorBuilder,
  required this.onSuggestionSelected,
  this.textFieldConfiguration = const CupertinoTextFieldConfiguration(),
  this.suggestionsBoxDecoration = const CupertinoSuggestionsBoxDecoration(),
  this.debounceDuration = const Duration(milliseconds: 300),
  this.suggestionsBoxController,
  this.loadingBuilder,
  this.noItemsFoundBuilder,
  this.errorBuilder,
  this.transitionBuilder,
  this.animationStart = 0.25,
  this.animationDuration = const Duration(milliseconds: 500),
  this.getImmediateSuggestions = false,
  this.suggestionsBoxVerticalOffset = 5.0,
  this.direction = AxisDirection.down,
  this.hideOnLoading = false,
  this.hideOnEmpty = false,
  this.hideOnError = false,
  this.hideSuggestionsOnKeyboardHide = true,
  this.keepSuggestionsOnLoading = true,
  this.keepSuggestionsOnSuggestionSelected = false,
  this.autoFlipDirection = false,
  this.autoFlipListDirection = true,
  this.autoFlipMinHeight = 64.0,
  this.minCharsForSuggestions = 0,
  this.hideKeyboardOnDrag = true,
})  : assert(animationStart >= 0.0 && animationStart <= 1.0),
      assert(
          direction == AxisDirection.down || direction == AxisDirection.up),
      assert(minCharsForSuggestions >= 0),
      assert(!hideKeyboardOnDrag ||
          hideKeyboardOnDrag && !hideSuggestionsOnKeyboardHide),
      super(key: key);