[flutter package]简单好用好扩展的时间日期选择器

一、效果

时间 日期 中文时间日期 英文时间日期

二、使用

Pub GitHub

DatePicker.showDateTimePicker(context, showTitleActions: true, onChanged: (date) {
    print('change $date');
}, onConfirm: (date) {
    print('confirm $date');
}, currentTime: DateTime(2008, 12, 31, 23, 12, 34), locale: 'zh');
复制代码

其中currentTime如果不传,就是用当前的时间

三、原理

1.这个时间日期选择器受flutter-cupertino-date-picker启发,对其源码进行了修改使其更加灵活,在此感谢这位作者

2.这个时间选择器,上面是两个按钮,下面是三列选择器,有三个滚动视图

3.为了解耦,UI部分只负责展示内容,对显示什么内容不做判断

4. 定义了接口BasePickerModel来输出内容,这里使用了工厂方法,想生成什么样的选择器,就继承BasePickerModel的类,重载对应的方法,所以上图中不同的选择器,其实只是工厂模型不同,UI部分是一样的内容

猜你喜欢

转载自juejin.im/post/5b88e907e51d4538db34d0ba