网站推广方案注意事项,管理有限公司网站设计,南通网站建设策划,一句吸引人的广告语注意#xff1a;无特殊说明#xff0c;Flutter版本及Dart版本如下#xff1a;Flutter版本#xff1a; 1.12.13hotfix.5Dart版本#xff1a; 2.7.0DatePickerFlutter并没有DatePicker这个控件#xff0c;需要使用showDatePicker方法弹出日期选择控件#xff0c;基本用法如…注意无特殊说明Flutter版本及Dart版本如下Flutter版本 1.12.13hotfix.5Dart版本 2.7.0DatePickerFlutter并没有DatePicker这个控件需要使用showDatePicker方法弹出日期选择控件基本用法如下RaisedButton(onPressed: () async {var result await showDatePicker(context: context,initialDate: DateTime.now(),firstDate: DateTime(2020),lastDate: DateTime(2021));print($result);},)initialDate初始化时间通常情况下设置为当前时间。firstDate表示开始时间设置后选择器不能选择小于此值的时间。lastDate表示结束时间设置后选择器不能选择大于此值的时间。showDatePicker方法是Future方法点击日期选择控件的“确定按钮后返回选择的日期。效果如下selectableDayPredicate参数控制可选日期返回true表示日期可选用法如下showDatePicker(selectableDayPredicate: (DateTime day) {return day.difference(DateTime.now()).inDays 2;},...)表示后天之前的时间可选效果如下19日及以后的日期变为灰色不可选状态。builder参数用于设置设置子控件比如设置深色主题用法如下showDatePicker(builder: (context, child) {return Theme(data: ThemeData.dark(),child: child,);},...)效果如下中文支持增加国际化处理在pubspec.yaml添加支持dependencies:flutter:sdk: flutterflutter_localizations:sdk: flutter在顶级控件MaterialApp添加国际化支持MaterialApp(localizationsDelegates: [GlobalMaterialLocalizations.delegate,GlobalWidgetsLocalizations.delegate,],supportedLocales: [const Locale(zh, CH),const Locale(en, US),],locale: Locale(zh),...)设置showDatePicker的local参数如下showDatePicker(locale: Locale(zh),...)效果如下TimePickerTimePicker和DatePicker一样需要使用showTimePicker方法用法如下RaisedButton(onPressed: () async {showTimePicker(context: context, initialTime: TimeOfDay.now());},)效果如下 builder参数用于控制子控件可以向DatePicker一样设置深色主题还可以设置其显示24小时用法如下showTimePicker(context: context,initialTime: TimeOfDay.now(),builder: (context, child) {return MediaQuery(data: MediaQuery.of(context).copyWith(alwaysUse24HourFormat: true),child: child,);});效果如下中文支持添加国际化支持步骤同DatePicker中文支持但showTimePicker并没有local参数使用builder参数设置如下showTimePicker(context: context,initialTime: TimeOfDay.now(),builder: (context, child) {return Localizations(locale: const Locale(zh),child: child,delegates: [GlobalMaterialLocalizations.delegate,GlobalWidgetsLocalizations.delegate,]);});效果如下CupertinoDatePickerios风格的日期选择器用法如下var _dateTime DateTime.now();CupertinoDatePicker(initialDateTime: _dateTime,onDateTimeChanged: (date) {setState(() {_dateTime date;});},)效果如下mode参数设置日期的格式time只显示时间效果4 | 14 | PMdate只显示日期效果July | 13 | 2012dateAndTime时间和日期都显示效果 Fri Jul 13 | 4 | 14 | PM设置最大日期和最小日期CupertinoDatePicker(minimumDate: DateTime.now().add(Duration(days: -1)),maximumDate: DateTime.now().add(Duration(days: 1)),...)效果如下使用24小时制CupertinoDatePicker(use24hFormat: true,...)CupertinoTimerPickerCupertinoTimerPicker 是ios风格的时间选择器基本用法如下CupertinoTimerPicker(onTimerDurationChanged: (Duration duration){},)效果如下设置只显示小时和分钟CupertinoTimerPicker(mode: CupertinoTimerPickerMode.hm,...)默认情况下CupertinoTimerPicker显示000设置显示当前时间darvar now DateTime.now();return Container(height: 200,child: CupertinoTimerPicker(initialTimerDuration: Duration(hours: now.hour,minutes: now.minute,seconds: now.second),onTimerDurationChanged: (Duration duration) {},),);欢迎加入Flutter的微信交流群(mqd_zzy)一起学习一起进步生活不止眼前的苟且还有诗和《远方》。当然我也非常希望您关注我个人的公众号里面有各种福利等着大家哦。