Flutter 颤振显示时间选择器验证
根据设备平台的不同,有两种类型的时间选择器。两个时间选择器都需要使用maxtime和mintime进行验证。有什么帮助吗 验证示例:mintime=当前时间 最大时间=最小时间+12小时Flutter 颤振显示时间选择器验证,flutter,dart,datetimepicker,showtimepicker,flutter-datetime-picker,Flutter,Dart,Datetimepicker,Showtimepicker,Flutter Datetime Picker,根据设备平台的不同,有两种类型的时间选择器。两个时间选择器都需要使用maxtime和mintime进行验证。有什么帮助吗 验证示例:mintime=当前时间 最大时间=最小时间+12小时 _selectTime(BuildContext context) async { final ThemeData theme = Theme.of(context); assert(theme.platform != null); switch (theme.platform) {
_selectTime(BuildContext context) async {
final ThemeData theme = Theme.of(context);
assert(theme.platform != null);
switch (theme.platform) {
case TargetPlatform.android:
return buildMaterialTimePicker(context);
case TargetPlatform.iOS:
return buildIOSTimePicker(context);
}
}
buildMaterialTimePicker(BuildContext context) async {
format(Duration d) => d.toString().split('.').first.padLeft(8, "0");
var picker = await showTimePicker(
context: context,
initialTime: TimeOfDay.now(),
builder: (context, child) {
return MediaQuery(
data: MediaQuery.of(context).copyWith(alwaysUse24HourFormat: true),
child: child,
);
});
final time = Duration(hours: picker.hour, minutes: picker.minute);
textInput.text = format(time);
setTimeValues(textInput.text);
}
buildIOSTimePicker(BuildContext context) {
DatePicker.showTimePicker(context,
showTitleActions: true,
currentTime: DateTime.now(), onConfirm: (time) {
textInput.text = new DateFormat('HH:mm:00').format(time);
setTimeValues(textInput.text);
});
}
有什么帮助吗