Flutter DatePickers & TimePickers时间选择器

打开日期和时间选择器分别需要使用showDatePicker()和 showTimePicker()函数。

参数说明

属性 说明

showDatePicker

context 上下文
initialDate 初始日期
firstDate 开始日期
lastDate 结束日期
selectableDayPredicate 控制可选日期。如true则都可选,如false则不可选
initialDatePickerMode 用于最初在年或月+日选择器模式中显示日期选择器。默认DatePickerMode.day
locale 用于设置日期选择器的区域设置
textDirection 设置日期选择器的文本方向
builder 用于包装对话框小部件以添加主题等继承的小部件。

showTimePicker

context 上下文
initialTime 初始时间
builder 用于包装对话框小部件以添加主题等继承的小部件。

代码示例

//打开日期选择器
mDatePicker() async{
  var result = await showDatePicker(
    context:context,
    initialDate:nowDate,
    firstDate:DateTime(1900),
    lastDate:DateTime(2100),
    selectableDayPredicate:(nowDate){
      return nowDate.isBefore(DateTime(2019,7,20));
    },
    builder: (BuildContext context, Widget child) {
      return Theme(
        data: ThemeData.dark(),
        child: child,
      );
    },
  );
  if(result!= null){
    nowDate =  result;
    mTimePicker();
  }
  
}
//打开时间选择器
mTimePicker() async {
  TimeOfDay result = await showTimePicker(
    context:context,
    initialTime:TimeOfDay.fromDateTime(nowDate),
  );
  if(result!= null){
    setState(() {
    //更改显示时间()
    nowDate = new DateTime(nowDate.year,nowDate.month,nowDate.day, result.hour,result.minute);
    });
  }
}

效果图

    

完整代码

查看完整代码

发布了86 篇原创文章 · 获赞 166 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/ruoshui_t/article/details/95732141
今日推荐