首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在TextFormField中显示输入时间?

在TextFormField中显示输入时间可以通过以下步骤实现:

  1. 首先,确保你已经在项目中引入了所需的依赖。在Flutter中,你可以在pubspec.yaml文件中添加如下依赖:
代码语言:txt
复制
dependencies:
  flutter:
    sdk: flutter
  intl: ^0.17.0

这里我们使用intl库来处理日期和时间的格式化。

  1. 在需要显示时间的页面中,创建一个DateTime类型的变量来存储用户输入的时间。例如:
代码语言:txt
复制
DateTime selectedTime;
  1. 在TextFormField的controller属性中,创建一个TextEditingController对象,并将其与selectedTime变量关联起来。例如:
代码语言:txt
复制
TextEditingController _timeController = TextEditingController();

然后,在TextFormField的controller属性中使用_timeController。

  1. 在TextFormField的onTap回调中,弹出一个时间选择器供用户选择时间。例如:
代码语言:txt
复制
onTap: () {
  showTimePicker(
    context: context,
    initialTime: TimeOfDay.now(),
  ).then((selected) {
    if (selected != null) {
      setState(() {
        selectedTime = DateTime(
          DateTime.now().year,
          DateTime.now().month,
          DateTime.now().day,
          selected.hour,
          selected.minute,
        );
        _timeController.text = DateFormat.Hm().format(selectedTime);
      });
    }
  });
},

这里我们使用showTimePicker方法来显示时间选择器,并将用户选择的时间存储在selectedTime变量中。然后,我们使用DateFormat.Hm()来格式化时间,并将其显示在TextFormField中。

  1. 最后,在TextFormField的initialValue属性中设置初始值,以便在用户未选择时间时显示默认值。例如:
代码语言:txt
复制
initialValue: selectedTime != null ? DateFormat.Hm().format(selectedTime) : null,

这样,当用户点击TextFormField时,会弹出一个时间选择器供用户选择时间,并将选择的时间显示在TextFormField中。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

何在VimVi显示行号

输入set number或set nu,然后按Enter。...相对行号 启用相对行编号后,当前行显示为0,而当前行上方和下方的行将递增编号(1,2,3…等)。 相对行模式非常方便,因为Vim的许多操作(例如上/下移动和删除行)都作用于相对行号。...混合行号 在Vim 7.4及更高版本,同时启用绝对行号和相对行号会设置混合行号模式。 混合行编号与相对行编号相同,唯一的区别是当前行而不是显示0表示其绝对行号。...永久设置 如果希望每次启动Vim时都显示行号,请在.vimrc(Vim配置文件)添加适当的命令。...例如,要启用绝对行编号,应添加以下内容: > vim ~/.vimrc :set number 结论 要在Vim显示行号,请使用:set number命令表示绝对行号,使用:set relativenumber

3.5K10

何在代码处理时间

但实际上它们指的是一定是同一个时间。想象一下,如果我中午十二点从伦敦给巴黎的朋友打一个电话,他接电话时手机上显示的应该是下午一点。...所以,不要在数据库存储人类可读格式,而应该存储时刻,否则会丢失信息。只有在把时间显示给人类的时候,才应该临时转换成人类可读格式。只传输时刻在 API ,我们只应该传输时刻。...这就要求服务器上必须正确设置了你输入的本地时间所对应的时区,否则换算时就会出错,让服务器所理解的时刻不同于你期望的时刻,从而导致错误。...这样可以防止遗忘,但你就要自己把本地时间换算到零时区时间才能在服务器上输入了。...比如,如果服务器设置为零时区,输入时间时却是你的本地时间,显然会导致错误。让各个节点的真实时刻保持一致并不容易。不过好在互联网建立之初就设计了一个协议:网络时间协议 NTP。

1.5K10
  • Flutter&鸿蒙next的表单封装:提升开发效率与用户体验

    本文将探讨如何在Flutter中封装一个表单,以提升开发效率和用户体验。表单封装的重要性封装表单意味着将表单的创建和管理逻辑集中到一个或几个可复用的组件。...一致性:确保应用不同表单的UI和行为保持一致。用户体验:通过封装可以快速响应用户输入,提供即时反馈,提升用户体验。...Flutter表单基础在Flutter,表单通常由Form组件和TextFormField组件构成。Form组件包裹TextFormField组件,用于管理表单的状态和验证。...在Flutter,我们可以通过validator回调来实现即时验证,并给用户即时反馈。例如,当用户输入不符合要求时,我们可以立即显示错误信息。...异步验证对于需要服务器交互的验证,检查用户名是否已存在,我们可以使用异步验证。

    1600

    何在python构造时间戳参数

    前面有一篇随笔大致描述了如何在jmeter中生成时间戳,这次继续介绍下在用python做接口测试时,如何构造想要的时间戳参数 1....目的&思路 本次要构造的时间戳,主要有2个用途: headers需要传当前时间对应的13位(毫秒级)时间戳 查询获取某一时间段内的数据(30天前~当前时间) 接下来要做的工作: 获取当前日期,...2020-05-08,定为结束时间 设置时间偏移量,获取30天前对应的日期,定为开始时间 将开始时间与结束时间转换为时间戳 python中生成时间戳的话,可以使用time模块直接获取当前日期的时间戳;...(days=-30) # 定义偏移量,即与当前时间时间间隔 start_time = int(round((today + offset).timestamp()*1000)) # 定义查询开始时间...=当前时间回退30天,转为时间戳 print("开始日期为:{},对应的时间戳:{}".format(today + offset, start_time)) print("结束日期为:{},对应的时间

    2.5K20

    Linux小技巧:如何在 Vim 显示行号?

    你可能会想,“如果 Vim 可以显示行号,我会立即切换到 Vim”。 要在 Vim 显示行号,请按 Esc 键进入命令模式并使用: :set number! 那!部分是必要的。...实际上,你可以在 Vim 显示三种行号: 绝对行号 相对行号 混合行号 让我们更深入地了解一下。...在 Vim 显示绝对行号 在几乎所有 IDE 中都可以找到绝对行号,它以 1 开始,以最后一行的编号结束。 而且,有两种方法可以实现这一点。 从活动的 Vim 会话设置选项 确保您处于命令模式。...这特别有用,因为上下移动光标 x 行数变得更容易,您不必进行从行号减去当前行号的心算,您可以轻松地转到 Vim 的特定行。 从活动的 Vim 会话显示 Vim 的相对行号 确保您处于命令模式。...在 Vim 总是显示相对的行号 您尝试了相对行号,并且您喜欢它。您想知道如何使这种更改永久化,而不是每次打开 Vim 时都输入 ':set relativenumber'。

    11.1K00

    何在Word输入复杂的数学公式?

    键盘快捷方式:自定义”, 找到 ‘公式工具|公式 选项卡’,在右边框中选择 “EquationProfessionalOne”,在下方‘请按新的快捷键’按下你想设置的快捷键,本人设置的 “alt +...输入l_1后,按下“alt + P”,即可变成 l 1 l_1 l1​ 当然,还可以定义其它快捷键,如要想全部转换为专业可以设置“alt + L,P”。 输入公式后显示: ?...$输入$(例:$\alpha$ ) 输入 显示 输入 显示 输入 显示 输入 显示 \alpha α \alpha...显示不出来时多加【空格】 3、手写识别 ? ? 当然这种方法 不推荐,浪费时间,有时候写丑了还不一定能识别出来,用鼠标不容易写。...另:Markdown 的表示 直接输入下面代码: $F(j\omega)=\int_{\infty}^{\infty}f(t)e^{-j\omega t} dt$ 显示

    5.4K21

    「译文」如何在YAML输入多行字符串?

    问题 在YAML,我有一个非常长的字符串。我希望将其保存在编辑器的80列(大约)视图中,因此我想中断字符串。它的语法是什么?...> 折叠样式[1]删除了字符串的单个换行符(但在结尾处增加一个,并将双换行符转换为单换行符)。...| 字面风格[2]将字符串的每一个换行(newline)都变成一个字面换行(literal newline),并在最后加上一个换行。...这是唯一可以在不添加空格的情况下将一个很长的标记(URL)跨行分隔的方法。也许在中间添加换行符是很有用的。...\n表示“换行符”(在JavaScript为\n),“其他功能”下除外。“前导空格”应用于第一行之后(建立缩进): 示例 注意“空格”之前一行的末尾空格。

    5.1K20

    【第21期】Flutter 文本框初始化时显示默认值

    但是现在有一种情况: **问题1: **当页面文本框的初始值是动态的,从后台获取到的时候,应该怎么办呢? 这种情况下,说明创建TextEditingController时,并不知道文本内容。...什么时候使用TextFormFieldTextFormField: 例如制作一个表单,表单中有用户姓名,姓名必须包含@符号。这个时候就需要使用TextFormField这个组件 ?...'Do not use the @ char.' : null; }, ) TextField: 例如制作一个显示文本框,框中提示输入文本框的内容信息。 ?...InputDecoration( border: OutlineInputBorder(), labelText: 'Password', ), ) 总结: 如果需要使用保存、重置、验证用户输入的情况下...如果只需要简单的捕获用户的输入行为,只需要使用TextField组件即可。

    4.7K20

    何在 Bash Shell 脚本显示对话框

    Zenity 工具 在Ubuntu安装zenity,运行: ? 用zenity创建消息框或者对话框的命令是不言自明的,我们会给你提供一些例子来参考。 创建消息框 ? ?...创建输入框并将输入值保存到变量 ? ? 输入后,值会保存在变量 $a 。 这是一个获取用户姓名并显示的实际事例。 ? 这些是运行前面脚本的截图。 ? 框1 ? 输入框 ? 输入框 ? 输入框 ?...创建有缺省值的输入框 ? ? 尝试使用输入值要注意的一点是whiptail用stdout显示对话框,用stderr输出值。...结论 选择合适的工具显示对话框取决于你期望在桌面机器还是服务器上运行你的脚本。桌面机器用户通常使用GUI窗口环境,也可能运行脚本并与显示的窗口进行交互。...然而,如果你期望用户是在服务器上工作的,(在没有图形界面时,)你也许希望能确保总能显示,那就使用whiptail或者任何其它在纯终端窗口显示对话框的工具。

    2.6K10

    何在Excel设置单元格只能输入正值?

    Excel技巧:如何在Excel设置单元格只能输入正值? 今天培训的客户咨询,如果能让输入的单元格只能输入正值?正值就是大于0的数据吗?是只能输入数值?...经过确认后,希望能限制单元格只能输入数值,而且是正数。Excel果然是强大的,这种问题分分钟搞定。与大家分享一下。 场景:适合公司人事、行政、财务、销售等进行专业统计的办公人士。...问题:如何设置单元格只能输入正值? 解答:利用Excel的数据验证(数据有效性)功能搞定。 具体操作如下:首先选中下图中“数量”字段下面的区域,点击“数据-数据验证”按钮。(下图3处) ?...1.输入汉字 2.不允许录入,很好。 ? 2.输入负数试试,不允许输入,很好。 ?...总结:“Excel2013的数据验证”在Excel2010叫做“数据有效性”,数据有效性是Excel定制工作模板中非常重要一种技巧。大家有兴趣可以深入研究,也会后续技巧中发布。

    2.5K20

    js获取现在时间_js如何动态显示日期时间

    js可以通过Date对象获取当前日期和时间,使用Date()获取系统当前时间,在使用getFullYear()、getMonth()、getDate() 、getHours()等方法获取特定格式的时间,...在使用innerHTM方法显示。...首先我们来了解一下js获取当前时间所需的一些方法: 获取当前时间: var d = new Date();//获取系统当前时间 获取特定格式的时间: 1、获取当前年份 getYear()方法:可以获取年份...= d.getHours();//得到小时数 var minute= d.getMinutes();//得到分钟数 var second= d.getSeconds();//得到秒数 js获取当前时间显示示例...document.getElementById("s").innerHTML=second; setTimeout(show,1000);//定时器一直调用show()函数 return ""; } 第二种:用JS实现实时显示系统时间

    25.3K20
    领券