MySelectorController<T> constructor

MySelectorController<T>({
  1. required List<MySelectorItem<T>> items,
  2. MySelectorItem<T>? initialItem,
  3. T? initialValue,
  4. MySelectorClearOption? clearOption,
  5. bool allowReselect = false,
  6. bool? showPanelAbove,
  7. bool showSearch = false,
  8. String searchHint = '搜索…',
  9. bool searchFilter(
    1. MySelectorItem<T> item,
    2. String query
    )?,
  10. Widget itemBuilder(
    1. BuildContext,
    2. MySelectorItem<T>,
    3. bool
    )?,
  11. Widget footerBuilder(
    1. BuildContext,
    2. VoidCallback
    )?,
  12. MySelectorStyle? style,
  13. void onChanged(
    1. MySelectorItem<T>? item
    )?,
})

Implementation

MySelectorController({
  required this.items,
  MySelectorItem<T>? initialItem,
  T? initialValue,
  this.clearOption,
  this.allowReselect = false,
  this.showPanelAbove,
  this.showSearch = false,
  this.searchHint = '搜索…',
  this.searchFilter,
  this.itemBuilder,
  this.footerBuilder,
  this.style,
  this.onChanged,
}) {
  assert(items.isNotEmpty, 'MySelectorController: items 不能为空');
  if (initialItem != null) {
    _selected.value = initialItem;
  } else if (initialValue != null) {
    _selected.value = _findByValue(initialValue);
  }
}