1、日期选择器
//日期选择
flutter_datetime_picker: ^1.5.1
//日期格式化
date_format: ^2.0.4
// showDatePicker、showTimePicker、showDateTimePicker
TextButton(
onPressed: () {
DatePicker.showDateTimePicker(context, showTitleActions: true,
// minTime: DateTime(2020, 3, 5),
// maxTime: DateTime(2022, 6, 7),
onChanged: (date) {
//print('change $date');
}, onConfirm: (date) {
//print(date.runtimeType);
setState(() {
// 格式化并返回给状态
taskAddModel.selectDateValue = formatDate(date,
[yyyy, '-', mm, '-', dd, ' ', HH, ':', nn, ':', ss]);
});
}, currentTime: DateTime.now(), locale: LocaleType.zh);
},
child: Text(
taskAddModel.selectDateValue,
style: TextStyle(color: Colors.blue),
))
2、当前时间
print(DateTime.now());//2021-08-18 09:47:55.568969 精确到微秒
// 想看下转成时间戳的方法,后面加了个点后出来一堆属性方法
print(DateTime.now().day);//18 返回当前日?
print(DateTime.now().hashCode);//857823714 哈希值?不知道怎么用
print(DateTime.now().hour);//9 小时
print(DateTime.now().isUtc);//false Utc还没学
print(DateTime.now().microsecond);//微秒 16位
print(DateTime.now().microsecondsSinceEpoch);//微秒时间戳
print(DateTime.now().millisecond);//毫秒 13位
print(DateTime.now().millisecondsSinceEpoch);//毫秒时间戳
print(DateTime.now().toUtc());//转换成Utc时间
3、UTC时间
世界统一时间,领导提了下,不知道怎么操作,做个tag
4、时间戳转日期
// 将获取的时间戳转换为日期格式
// 使用substring截取字符串,我用date_format试试
static String getTimeTransform(date) {
DateTime _getTimea =
DateTime.fromMicrosecondsSinceEpoch(int.parse(date) * 1000 * 1000);
var _getTime = _getTimea.toLocal().toString().substring(0, 19);
return _getTime;
}
// 后台返回的是10位的秒时间戳
// 提交时issuedTime:(DateTime.now().millisecondsSinceEpoch / 1000).toInt(),
static String getTimeTransform(date) {
DateTime _getTime =
DateTime.fromMicrosecondsSinceEpoch(int.parse(date) * 1000 * 1000);
// var _getTime = _getTimea.toLocal().toString().substring(0, 19);
return formatDate(
_getTime, [yyyy, '-', mm, '-', dd, ' ', HH, ':', nn, ':', ss]);
}