showMultiLinkPicker static method

void showMultiLinkPicker(
  1. BuildContext context, {
  2. required dynamic data,
  3. required int columeNum,
  4. List? selectData,
  5. List? suffix,
  6. PickerStyle? pickerStyle,
  7. MultipleLinkCallback? onChanged,
  8. MultipleLinkCallback? onConfirm,
  9. dynamic onCancel(
    1. bool isCancel
    )?,
  10. bool overlapTabBar = false,
})

通用 多列选择器 有关联 columeNum 最大的列数

Implementation

static void showMultiLinkPicker(BuildContext context,
    {required dynamic data,
    required int columeNum,
    List? selectData,
    List? suffix,
    PickerStyle? pickerStyle,
    MultipleLinkCallback? onChanged,
    MultipleLinkCallback? onConfirm,
    Function(bool isCancel)? onCancel,
    bool overlapTabBar = false}) {
  assert(data is Map, 'params : data must Map');

  if (selectData == null) {
    selectData = [];
  }

  if (pickerStyle == null) {
    pickerStyle = DefaultPickerStyle();
  }
  if (pickerStyle.context == null) {
    pickerStyle.context = context;
  }

  Navigator.of(context, rootNavigator: overlapTabBar)
      .push(MultipleLinkPickerRoute(
    data: data,
    selectData: selectData,
    columeNum: columeNum,
    suffix: suffix,
    pickerStyle: pickerStyle,
    onChanged: onChanged,
    onConfirm: onConfirm,
    onCancel: onCancel,
    // theme: Theme.of(context, shadowThemeOnly: true),
    theme: Theme.of(context),
    barrierLabel: MaterialLocalizations.of(context).modalBarrierDismissLabel,
  ));
}