颤振如何验证时间选择器

时间:2020-03-17 04:59:27

标签: flutter dart flutter-layout timepicker

在这里,我想验证时间选择器。当我要从时间选择器中选择时间时,它只能允许我选择当前时间或当前时间之前。我不应该允许选择将来的时间。

这是我尝试过的时间选择器片段。

DateTimeField(
      format: format,
      autocorrect: true,
      autovalidate: false,
      controller: _serviceDate,
      readOnly: true,
      validator: (date) => (date == null || _serviceDate.text == '')
          ? 'Please enter valid date'
          : null,
      onShowPicker: (context, currentValue) async {
        final date = await showDatePicker(
            context: context,
            firstDate: DateTime.now(),
            initialDate: currentValue ?? DateTime.now(),
            lastDate: DateTime(2100));
        if (date != null) {
          final time = await showTimePicker(
            context: context,
            initialTime: TimeOfDay.fromDateTime(
              currentValue ?? DateTime.now(),
            ),
          );
          return DateTimeField.combine(date, time);
        } else {
          return currentValue;
        }
      },
    );

0 个答案:

没有答案