我试图将日期值更改为在showDatePicker中选择的日期,但是无论何时调用它,我选择的日期都给我一个错误,即在setpose()之后调用setState(),此设置可以正常工作对我来说,不确定是什么改变了错误。我什至在setState中添加了if(this.mount),但现在它从未被调用,因为mount在此之前变为false,不确定在处置之前如何设置setState。
DateTime _date = new DateTime.now();
final f = new DateFormat.yMMMMd("en_US");
String date;
Future<Null> _buildShowDate(
BuildContext context, Function addProductOrder) async {
final DateTime picked = await showDatePicker(
context: context,
initialDate: _date,
firstDate: new DateTime(
DateTime.now().year,
DateTime.now().month,
DateTime.now().day),
lastDate: new DateTime(2020));
print(this.mounted);
if (this.mounted) {
if (picked != null && picked != _date) {
setState(() {
_date = picked;
date = f.format(_date);
});
}
}
}