我的应用程序中有这个日期选择器,我希望从使用应用程序的时间算起最后一个日期是 3 年前,我该如何解决它,我试图现在给出最后一个日期。year -3 但它没有不行!它一直告诉我“无法在初始化程序中访问实例成员‘noww’。”
var noww = DateTime.now();
DateTime selectedDate = DateTime(noww.year - 3);
showDatePicker(
context: context,
initialDate: selectedDate, // Refer step 1
firstDate: DateTime(now.year - 10),
lastDate: DateTime(now.year + 1),
答案 0 :(得分:2)
现在像这样声明变量
var noww;
但是在那之后,像这样运行initState()中的其余代码
@override
void initState(){
super.initState();
noww = DateTime.now();
DateTime selectedDate = DateTime(noww.year - 3);
showDatePicker(
context: context,
initialDate: selectedDate, // Refer step 1
firstDate: DateTime(now.year - 10),
lastDate: DateTime(now.year + 1),
);
}
@override
Widget build(context){
...
}
这是因为你不能在函数之外使用初始化器。