Flutter中的日期,格式化日期与组件选择

Flutter日期时间选择器实现与定制指南 日期时间选择器是移动应用开发中的基础组件,用于收集用户输入的日期和时间信息。在Flutter框架中,系统提供了`showDatePicker`和`showTimePicker`方法来实现这一功能,遵循Material Design设计规范。其核心原理是通过对话框形式展示可交互的日历和时间选择界面,并返回DateTime对象。这种实现方式既保证了用户体验的一致性,又提供了必要的灵活性。在实际工程应用中,开发者可以通过Theme定制选择器的视觉样式,使用intl包处理多语言和本地化格式,还能通过组合日期和时间选 阅读详情

Flutter中的日期和时间戳

//获取当前日期
DateTime \_nowDate = DateTime.now();
print(\_nowDate);//2019-10-29 10:57:20.384872
print(\_nowDate.millisecondsSinceEpoch);//时间戳,1572317840384
print(DateTime.fromMicrosecondsSinceEpoch(1572317840384));//时间戳转换日期,1970-01-19 12:45:17.840384

所谓时间戳,是指自格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。

有些情况下,后台可能会将所有的时间都转换成时间戳返回给我们前端,这是我们就需要将时间戳转换成时间,并将时间进行格式化。

展示一个时间,我们会有多种形式,比如1970-01-01、1970/01/01、1970年01月01日,等等,那么我们如何把同一个时间根据需要转换成不同的格式呢?接下来我就为大家介绍一个Flutter中的第三方库。

Flutter第三方組件庫

登录pub.dev搜索date_format组件查看Installing添加依赖

pubspec.yaml

dependencies:
    date\_format: ^1.0.8

按ctrl+s或flutter packages get后会自动下载依賴包,注意控制台,如无异常就是下载成功

引入包

import 'package:date\_format/date\_format.dart';
print(formatDate(DateTime.now(), \[yyyy, "-", mm, "-", dd, " ", DD, " ", HH, ":", nn, ":", ss\]));

输出

2019-10-29 Wednesday 14:27:29

调用Flutter自带的日期选择器组件和时间选择器组件

显示日历組件和获取选中数据的方法一

//\_代表私有,重写私有的日历组件
  \_showDatePicker(){
    showDatePicker(
      context:context,//上下文必须传入
      initialDate:\_nowDate,//设置初始化日期
      firstDate:DateTime(1900),//设置起始时间
      lastDate: DateTime(2100),//设置结束时间
    ).then((val){//異步方法
      print(val);
    });
  }

方法二

\_showDatePicker() async{
    var val \= await showDatePicker(
      context:context,//上下文必须传入
      initialDate:\_nowDate,//设置初始化日期
      firstDate:DateTime(1900),//设置起始时间
      lastDate: DateTime(2100),//设置结束时间
    );
    setState(() {
      //将获得的时间传给变量
      this.\_nowDate =val;
    });
  }

使用变量替換文本

Container(  
  margin: EdgeInsets.all(5),  
  width: 350,  
  height: 120,  
  decoration: new BoxDecoration(  
    color: Colors.black12,  
    borderRadius:BorderRadius.circular(10.0),//边框  
  ),  
  child: GestureDetector(//手势事件
    child: Text('${formatDate(\_nowDate, \[yyyy, "-", mm, "-", dd\])}'),//替換文本  
    onTap: (){  
      \_showDatePicker();//调用重写的组件  
    },  
  ),  
),

时间

  //自带组件
  showTimePicker(
      context: context,
      initialTime: new TimeOfDay.now(),
    ).then((val) {
      print(val);
    }).catchError((err) {
      print(err);
    });            
  //获得当前时间
  var \_nowTime = TimeOfDay.now();


\_showTimePicker() async{
    var val \= await showTimePicker(
        context: context,//上下文
        initialTime: \_nowTime/当前时间,设置固定时间TimeOfDay(hour: 12,minute: 10)
    );
    setState(() {
      this.\_nowTime = val;
    });
  }

最后

如果你看到了这里,觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。

最后针对Android程序员,我这边给大家整理了一些资料,包括不限于高级UI、性能优化、移动架构师、NDK、混合式开发(ReactNative+Weex)微信小程序、Flutter等全方面的Android进阶实践技术;希望能帮助到大家,也节省大家在网上搜索资料的时间来学习,也可以分享动态给身边好友一起学习!

需要资料的朋友可以扫描下方二维码
【Flutter】Flutter Dart 获取当前时间戳 在日常的软件开发中,我们经常需要获取当前的时间戳。无论是用于日志记录,还是用于生成唯一标识符,或者是用于时间同步,时间戳都发挥着重要的作用。 阅读详情

相关推荐

Flutter中的日期格式转换

Flutter日期转换操作指南:1)原生方法:使用DateTime获取当前日期和时间戳,支持时间戳与日期互转。2)第三方插件date_format:安装后可通过formatDate方法实现灵活格式化,支持自定义年月日时分等格式。两种方式都能满足不同场景下的日期处理需求,插件方式提供了更丰富的格式化选项。

分享前端工程化、AI 应用、Agent 开发与大模型实践! 6382

flutter 时间,时间戳 格式化

flutter 时间,时间戳,格式化

python4_1的博客 1017

【Flutter】Flutter 日期时间处理神器 Jiffy 入门指南

在开发 Flutter 应用时,我们经常会遇到需要处理日期和时间的情况。这时,一个强大且易用的日期时间处理库就显得尤为重要。Jiffy 就是这样一个库,它提供了丰富的 API,可以帮助我们轻松地解析、操作、查询和格式化日期和时间。

Code Metaverse 1390

Flutter日期格式化及时间戳转换

查看原文点击下方链接: Flutter日期格式化及时间戳转换

qq_36859035的博客 1654

Ubuntu环境下rknn-toolkit2的安装与兼容性解析

本文详细解析了在Ubuntu系统上安装瑞芯微rknn-toolkit2工具链的完整流程与关键注意事项。文章重点剖析了rknn-toolkit2与旧版rknn-toolkit的核心兼容性问题,强调两者在API、模型格式及运行时库上互不兼容,并推荐使用Conda虚拟环境进行隔离管理,为RK3566、RK3588等开发板的AI模型部署提供清晰的实践指南。

weixin_29041767的博客 375

树莓派4B系统安装及SSH远程控制(简单易操作)

​自从2022年4月树莓派官网更新了RaspberryPiImager版本v1.7.2后,便不再支持自行建立ssh文件,并用默认用户名pi和密码raspberry的方式进行远程控制(亲测不行,输密码时一直access denied)。但是该版本软件提供了烧录系统前设置ssh用户及密码功能。本文记录了系统安装和SSH远程操作步骤。........................

机械人的代码路 5791

flutter 年月日_Flutter中的日期、格式化日期、日期选择器组件

Flutter中的日期和时间戳//獲取當前日期DateTime _nowDate = DateTime.now();print(_nowDate);//2019-10-29 10:57:20.384872print(_nowDate.millisecondsSinceEpoch);//時間戳,1572317840384print(DateTime.fromMicrosecondsSinceEpoc...

weixin_34732699的博客 1168

PNETLab 镜像包官方下载太慢?不急,最新版本PNET_4.2.10分享!

你好,这里是网络技术联盟站,我是瑞哥。PNETLab是一个强大的网络仿真工具平台,全称Packet Network Emulator Tool Lab。它不仅允许用户进行深入的网络实验,还支持社区成员之间的实验室共享。PNETLab致力于为学习者、教师以及网络工程师提供一个全面的实验环境,以便于他们能够在实际部署前测试和验证网络配置和协议。和。这两个部分相辅相成,共同构成了一个全面且灵活的网络仿真生态系统。

网络技术联盟站 4481

flutter 底部弹出选择器(选择性别,出生日期)

flutter 底部弹出选择器(选择性别,出生日期、) 转载于: https://blog.youkuaiyun.com/iotjin/article/details/104362491 插件 flutter_picker: ^1.1.5 #https://pub.dev/packages/flutter_picker date_format: ^1.0.8 #https://pub.dev/packages/date_format flutter_picker 插件选择器。包括NumberPicker,Date

qq_41070101的博客 6355

塔石DTU通过MQTT传递数据教程

塔石通过MQTT通讯上传ADL400电表用电量。

renkai721的专栏 256

基于STM32设计的智能防盗单车锁_349

本设计基于STM32F103RCT6单片机,研制了一种适用于户外环境的智能防盗单车锁系统。系统集成了GPS定位模块、ADXL345加速度传感器、4G通信模块(Air780E)、OLED显示屏、继电器模拟锁控模块等硬件,通过姿态感知实现车辆异常移动检测,在锁车状态下自动触发蜂鸣器报警并通过短信与APP通知用户。

868

Flutter---个人信息(4)---实现修改生日日期

【代码】Flutter---个人信息(4)---实现修改生日。

m0_50891221的博客 262

S7-1200 PN与G120变频器控制起停及调速PROFINET实现详解

S7-1200 PLC与G120变频器通过PROFINET通信可实现高效、实时的电机控制。2. 《S7-1200与G120 CU250S-2PN的PROFINET通讯指南》- 控制器:S7-1200 PLC (如1214C DC/DC/DC)- 变频器:G120 CU250S-2PN (带PROFINET接口)- 输出区(PZD1-2):控制字(16位)、速度设定值(16位)- 输入区(PZD1-2):状态字(16位)、实际速度值(16位)- P922=1:选择报文类型为"标准报文1 (PZD2/2)"

电工 1870

Flutter 日期插件date_format 中文 国际化 及flutter_cupertino_date_picker

Flutter中的日期和时间戳 //日期时间戳转换 var _nowTime = DateTime.now();//获取当前时间 print(_nowTime); print(_nowDate.millisecondsSinceEpoch); //13位时间戳 1575389234667 print(DateTime.fromMillisecondsSinceEpoch(1575389234667)); //时间戳转为日期2019-12-03 16:07:14.667 展示一个时间,会有多种形式,比如

迦南的专栏 4372

《拉依达的嵌入式\驱动面试宝典》—操作系统篇(二)

《拉依达的嵌入式\驱动面试宝典》 整合了所有我认为可能遇到的技术面试问题。所有问题及其答案均是我个人学习后查阅资料总结,每个回答都做了仔细的分析,在嵌入式及其驱动面试相关问题解析做到全网独一无二。学习或者转行到嵌入式、驱动开发领域学习的不二之选

拉依达不拉跨的博客 473

【教程4>第6章>第15节】 基于I+jQ复数信号的LS信道估计和均衡实现1——matlab仿真分析,QPSK为例

在基于QPSK调制的通信系统中,LS信道估计和均衡是用于补偿信道失真、提高信号传输质量的重要技术。以下将详细介绍基于I+jQ复数信号的 LS 信道估计和均衡的实现原理与过程。可以看到,通过线性插值之后,QPSK信号的星座图可以模糊的看到四个星座点(图2),通过非线性插值之后,可以清晰的看到QPSK的四个星座点(图3)。可以看到,信道均衡显著提高了通信系统的可靠性和有效性。

FPGA/MATLAB学习教程/源码/项目合作开发 657

26Flutter 日期 和时间戳/格式化日期库/flutter异步/ 官方自带日期组件showDatePicker、时间组件showTimePicker以及国际化...

/* 一、Flutter日期和时间戳 日期转换成时间戳 varnow=newDateTime.now(); print(now.millisecondsSinceEpoch);//单位毫秒,13位时间戳。 时间戳转换成日期: varnow=newDateTime.now(); vara=now.millisecondsSinceEpoch;//时间戳...

weixin_30522095的博客 950

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

18.Flutter学习之路日期和时间戳,以及日期组件

日期 Flutter中获取当前日期可以使用DateTime.now()进行获取。now.millisecondsSinceEpoch可以获取到时间戳 class DatePickerPage extends StatefulWidget{ @override State<StatefulWidget> createState() { return _DatePicker...

易帜¤的博客 1688

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Flutter&OpenHarmony日期时间选择器实现

摘要 本文介绍了Flutter和OpenHarmony平台实现日期时间选择器的方法。Flutter通过showDatePicker/showTimePicker函数提供弹出式选择器,支持日期范围选择和24小时制显示。OpenHarmony使用DatePicker/TimePicker组件实现滚轮式选择,可封装为对话框形式。文章详细讲解了日期时间组合、格式化显示等技术要点,为笔记应用开发提供完整的时间选择功能实现方案。两种平台均支持日期范围限制、本地化显示等常见需求,开发者可根据平台特性选择合适实现方式。

2501_94444600的博客 710

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Flutter 自带日期组件

main.dart import 'package:flutter/material.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:date_format/date_format.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override ...

飞翔的熊blabla 379

Flutter DatePicker 详解

DatePicker 是 Flutter 提供的日期选择组件,适用于各种需要用户选择日期的场景,如日程安排、生日选择等。Flutter 通过 showDatePicker 方法弹出日期选择器,并返回用户选择的日期。本文将介绍 DatePicker 的基本用法、主要属性及自定义方法。

帅次的博客 2267

Flutter for OpenHarmony 实战:文本输入框(TextField)的样式与交互增强

/ 选中的日期TimeOfDay?// 选中的时间DateTime?// 选中的日期时间// 淡入动画@overrideduration: const Duration(milliseconds: 800), // 800ms 淡入// 启动淡入动画@override提供动画控制器所需的vsync。管理三种选择器的状态,使用淡入动画提升用户体验。firstDate;lastDate;label;

2301_79166266的博客 1144

Flutter for OpenHarmony轻量级开源记事本app实战——笔记卡片组件

本文介绍了如何设计一个功能完善的笔记卡片组件,包括核心设计理念、基础结构、滑动操作和交互处理。笔记卡片需要在有限空间展示标题、内容预览、更新时间等信息,支持点击编辑、长按选择和滑动收藏/删除等操作。组件采用Dismissible实现双向滑动功能,通过InkWell提供水波纹点击效果,并灵活处理选择模式与普通模式的切换。代码展示了如何解析颜色、响应主题变化,以及如何通过条件渲染优化不同场景下的UI显示,最终实现一个信息丰富、操作便捷且视觉美观的笔记卡片组件。

2601_94964009的博客 696

Flutter自带日期组件及第三方日期组件

Futter日期组件学习日期和时间戳转为年月日格式使用自带日期和时间组件需要注意时间选择组件显示中文第三方时间组件遇到的问题 日期和时间戳 Flutter中获取当前日期可以使用DateTime.now()进行获取。now.millisecondsSinceEpoch可以获取到时间戳 什么是时间戳 “时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。通俗的讲, 时间戳是一份能够表示一份数据在一个特定时间点已经存在的完整的可验证

m0_46527751的博客 3655

Flutter for OpenHarmony 猫咪管家App实战 - 添加日记实现

本文介绍了Flutter实现的猫咪日记功能开发过程,主要包括:1)使用StatefulWidget管理表单状态;2)日期选择器支持中文格式化显示;3)emoji表情选择心情;4)下拉菜单关联猫咪信息。代码展示了表单验证、状态管理和UI布局的最佳实践,适合需要开发类似功能的开发者参考。(149字)

2401_89200052的博客 611

Flutter for OpenHarmony社团管理App实战:意见反馈实现

文章摘要: 本文介绍了如何实现一个Flutter意见反馈页面,包含提交反馈和查看历史反馈两个功能。页面采用Tab布局,使用Provider进行状态管理。提交反馈部分包括类型选择(建议/投诉/Bug/其他)和多行文本输入,提交按钮验证内容非空后保存数据。历史反馈列表显示用户提交记录及官方回复,支持时间格式化显示。技术实现上使用了TabController、StatefulBuilder、ChoiceChip等组件,并遵循状态管理最佳实践,确保页面交互流畅、数据实时更新。

2603_94946210的博客 800
上一篇: kotlin入门教程指南(2023最新)
下一篇: 2023最新Android大厂高频面试题(包含答案解析免费分享)
不秃头de程序猿
博客等级 码龄5年 4089粉丝 1478原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值