CupertinoTypeAheadField<T> constructor

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

Implementation

const CupertinoTypeAheadField({
  Key? key,
  required this.suggestionsCallback,
  required this.itemBuilder,
  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.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);