InkWell容器 和 官方自带日期组件 和第三方 日期组件 和 自带日期组件和时间组 件改为中文
Posted zhaofeis
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了InkWell容器 和 官方自带日期组件 和第三方 日期组件 和 自带日期组件和时间组 件改为中文相关的知识,希望对你有一定的参考价值。
带点击事件的容器
InkWell(
child: Text(‘时间‘),
onTap: _showTimePicker,
),
Flutter 日期和时间戳
日期转化成时间戳:
var now = new DateTime.now();
print(now.millisecondsSinceEpoch);//单位毫秒,13 位时间戳
时间戳转化成日期:
var now = new DateTime.now();
var a=now.millisecondsSinceEpoch; //时间戳
print(DateTime.fromMillisecondsSinceEpoch(a));湖北众猿腾网络科技有限公司
Flutter 第三方库 date_format 的使用
文档:https://pub.dev/packages/date_format
在main.dart入口文件 dependencies 添加 date_format: ^1.0.8 然后再在要使用的地方引入 import ‘package:date_format/date_format.dart‘;
dependencies:
flutter:
sdk: flutter
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for ios style icons.
cupertino_icons: ^0.1.2
date_format: ^1.0.8
//案例代码
import ‘package:flutter/material.dart‘;
import ‘package:date_format/date_format.dart‘;
class DatePage extends StatefulWidget{
DatePage({Key key});
_DatePage createState() => _DatePage();
}
class _DatePage extends State {
var date = new DateTime.now();
@override
Widget build(BuildContext context) {
// 获取自带日期
_showDatePicker () async {
var _getTime = await showDatePicker(
context: context,
initialDate: DateTime.now(),// 现在时间
firstDate: DateTime(1990), // 时间选项的最小时间
lastDate: DateTime(2030) // 时间选项的最大时间
);
if(_getTime == null) return;
setState(() {
date = _getTime;
});
};
// 获取自带时间
var _time = TimeOfDay(hour: date.hour,minute: date.minute);
_showTimePicker () async {
var _getTime = await showTimePicker(
context: context,
initialTime: _time,// 现在时间
// 时间选项的最大时间
);
if(_getTime == null) return;
setState(() {
_time = _getTime;
});
};
// TODO: implement build
return Scaffold(
appBar: AppBar(
title: Text(‘Date‘)
),
body: ListView(
children: <Widget>[
Text(‘${date}‘), // 日期
Text(‘${date.millisecondsSinceEpoch}‘), // 毫秒数
Text(‘${DateTime.fromMillisecondsSinceEpoch(date.millisecondsSinceEpoch)}‘), //毫秒转换成时间
// 自带日期
RaisedButton(
child: Text(‘日期${date}‘),
onPressed: _showDatePicker
),
// 自带时间
RaisedButton(
child: Text(‘时间${_time.format(context)}‘),
onPressed: _showTimePicker,
),
// 带点击事件的容器
InkWell(
child: Text(‘日期${date}‘),
onTap: _showDatePicker,
),
InkWell(
child: Text(‘时间${_time.format(context)}‘),
onTap: _showTimePicker,
),
Text(‘第三方时间${formatDate(date, [yyyy, ‘-‘, mm, ‘-‘, dd])}‘),
Text(‘第三方时间${formatDate(date, [yyyy, ‘年‘, mm, ‘月‘, dd, ‘日‘, hh, ‘时‘, mm, ‘分‘, ss, ‘秒‘])}‘),
],
)
);
}
}
以上是关于InkWell容器 和 官方自带日期组件 和第三方 日期组件 和 自带日期组件和时间组 件改为中文的主要内容,如果未能解决你的问题,请参考以下文章
Dart/Flutter 不使用 Inkwell 和手势检测器更改页面
在 Flutter 中的 Inkwell 小部件中添加边框半径