问题描述
我有一个站点 add_new_currency_screen.dart, 一开始我有文本字段,如: 名称、金额、价格、开始日期和结束日期。
现在是我的问题。 如果我打开“添加屏幕”,则结束日期始终为“空”,如果我输入开始日期,则结束日期应添加一年。
TextFormField(
decoration: Inputdecoration(labelText: 'EndDate'),controller: _endDateController..text = DateFormat("dd.MM.yyyy").format(_pickedStartDate.add(Duration(days: 365))),enabled: false,),
在控制器中我不能使用 if else,和 _endDateController.text == null ? "empty" : DateFormat("dd.MM.yyyy").format(_pickedStartDate.add(Duration(days: 365))),不起作用....
我如何检查或如何解决此问题,如果选择了 startDate,则 endDate 中的控制器正在执行此操作,否则,请不要使用“添加”
希望我能正确解释,有人可以帮助我:)
谢谢大家, 最好的祝福 汤米
解决方法
如果您在 null 上调用了“add”,则问题与 _pickedStartDate
所以也许尝试类似的东西:
controller: _endDateController..text = _pickedStartDate != null ? DateFormat("dd.MM.yyyy").format(_pickedStartDate.add(Duration(days: 365))) : '',