在TextFormField中显示输入时间可以通过以下步骤实现:
dependencies:
flutter:
sdk: flutter
intl: ^0.17.0
这里我们使用intl库来处理日期和时间的格式化。
DateTime selectedTime;
TextEditingController _timeController = TextEditingController();
然后,在TextFormField的controller属性中使用_timeController。
onTap: () {
showTimePicker(
context: context,
initialTime: TimeOfDay.now(),
).then((selected) {
if (selected != null) {
setState(() {
selectedTime = DateTime(
DateTime.now().year,
DateTime.now().month,
DateTime.now().day,
selected.hour,
selected.minute,
);
_timeController.text = DateFormat.Hm().format(selectedTime);
});
}
});
},
这里我们使用showTimePicker方法来显示时间选择器,并将用户选择的时间存储在selectedTime变量中。然后,我们使用DateFormat.Hm()来格式化时间,并将其显示在TextFormField中。
initialValue: selectedTime != null ? DateFormat.Hm().format(selectedTime) : null,
这样,当用户点击TextFormField时,会弹出一个时间选择器供用户选择时间,并将选择的时间显示在TextFormField中。
领取专属 10元无门槛券
手把手带您无忧上云