single<T> static method
Future<T?>
single<T>(
- BuildContext context, {
- required List<
ListPickerOption> options, - void onSave(
- T? result
- void onCancel()?,
- T? selected,
Implementation
static Future<T?> single<T>(
BuildContext context, {
required List<ListPickerOption> options,
void Function(T? result)? onSave,
void Function()? onCancel,
T? selected,
}) async {
List<T> _selected = [];
if (selected != null) {
_selected.add(selected);
}
T? result = await showDialog<T?>(
context: context,
barrierDismissible: true,
builder: (context) {
return ListPicker<T>(
options: options,
onSave: (list) {
if (onSave == null) return;
if (list.isNotEmpty) {
onSave(list.first);
return;
}
onSave(null);
},
onCancel: onCancel,
selected: _selected,
mode: ListPickerMode.single,
);
},
);
return result;
}