颤动如何选择禁用的前一个日期?
Flutter How to pick the previous date that are disabled?
Date picker screenshot
你好,我这里有一个代码可以选择日期和时间,但我的问题是我无法选择以前的日期。谁知道如何打开所有日期。就像在我的屏幕截图中,1 到 4 个日期被禁用,我希望它打开。
这是我的时间格式
final DateFormat dateFormat8 = DateFormat('MM-dd-yyyy HH:mm');
TimeOfDay selecttime8 = new TimeOfDay.now();
Future<TimeOfDay> _selectedTime8(BuildContext context) {
return showTimePicker(context: context, initialTime: selecttime8);
}
这是我的日期格式。
DateTime selectdate8;
Future<DateTime> _selectDate8(BuildContext context) => showDatePicker(
context: context,
initialDate: DateTime.now().add(Duration(seconds: 1)),
firstDate: DateTime.now(),
lastDate: DateTime(3000));
这是用户单击输入字段时我的脚手架中的代码。
Padding(
padding:
EdgeInsets.symmetric(horizontal: 16.0, vertical: 16.0),
child: InkWell(
onTap: () async {
final selectdate8 = await _selectDate8(context);
if (selectdate8 == null) return;
final selecttime8 = await _selectedTime8(context);
if (selecttime8 == null) return;
setState(() {
this.selectdate8 = DateTime(
selectdate8.year,
selectdate8.month,
selectdate8.day,
selecttime8.hour,
selecttime8.minute,
);
});
},
问题就在这里,正如Randal Schwartz所说:
firstDate: DateTime.now()
现在,您可以做的是一年 select。
firstDate: DateTime.utc(1965, 1, 1)
DateTime.utc(yyyy, mm, dd)
Date picker screenshot
你好,我这里有一个代码可以选择日期和时间,但我的问题是我无法选择以前的日期。谁知道如何打开所有日期。就像在我的屏幕截图中,1 到 4 个日期被禁用,我希望它打开。
这是我的时间格式
final DateFormat dateFormat8 = DateFormat('MM-dd-yyyy HH:mm');
TimeOfDay selecttime8 = new TimeOfDay.now();
Future<TimeOfDay> _selectedTime8(BuildContext context) {
return showTimePicker(context: context, initialTime: selecttime8);
}
这是我的日期格式。
DateTime selectdate8;
Future<DateTime> _selectDate8(BuildContext context) => showDatePicker(
context: context,
initialDate: DateTime.now().add(Duration(seconds: 1)),
firstDate: DateTime.now(),
lastDate: DateTime(3000));
这是用户单击输入字段时我的脚手架中的代码。
Padding(
padding:
EdgeInsets.symmetric(horizontal: 16.0, vertical: 16.0),
child: InkWell(
onTap: () async {
final selectdate8 = await _selectDate8(context);
if (selectdate8 == null) return;
final selecttime8 = await _selectedTime8(context);
if (selecttime8 == null) return;
setState(() {
this.selectdate8 = DateTime(
selectdate8.year,
selectdate8.month,
selectdate8.day,
selecttime8.hour,
selecttime8.minute,
);
});
},
问题就在这里,正如Randal Schwartz所说:
firstDate: DateTime.now()
现在,您可以做的是一年 select。
firstDate: DateTime.utc(1965, 1, 1)
DateTime.utc(yyyy, mm, dd)