Flutter 日历取消操作

Flutter calendar cancel action

我想在用户单击日历中的取消按钮时使变量为 null。我得到确定按钮动作。但我不知道如何取消操作

下面是我的代码

Future<Null> selectDate(BuildContext context) async {
  final DateTime picked = await showDatePicker(
    context: context,
    initialDate: selectedDate,
    firstDate: DateTime(2015, 8),
    lastDate: DateTime(2101),
  );
  if (picked != null && picked != selectedDate) {
    selectedDate = picked;
  }

  formattedDate = DateFormat('yyyy-MM-dd').format(selectedDate);
  print('selected date  is '+ "$formattedDate");

  setState(() {});
}

showDatePicker returns 为您选择的日期。因此,如果您单击取消按钮,它将 return 为空。

如果你想控制取消动作,你可以这样做

final DateTime picked = await showDatePicker(
  context: context,
  initialDate: selectedDate,
  firstDate: DateTime(2015, 8),
  lastDate: DateTime(2101),
);
if(picked == null){
  print("Hi bro, i came from cancel button or via click outside of datepicker");
}