flutter - Concat 3个文本字段形成生日
问题描述
分别等待输入 dd mm yyyy。在页面打开时,第一个文本字段上的自动对焦,当输入达到 2 位数字时,自动对焦转到第二个文本字段。当输入达到 2 位数时,自动对焦转到最后一个 4 位数的文本字段。用户无需输入“/”或“-”。只有日期可以。
有谁知道如何为生日创建这样的文本字段组合?这样当用户按下“下一步”按钮时,会出现一个对话框,要求用户确认他/她的年龄?
(这意味着来自 3 个文本字段的输入被保存为生日,输出为(今天的当前日期 - 日期输入)= 年龄。
任何指导表示赞赏!
解决方案
您可能希望FocusNode
为每个创建一个TextField
,然后在您的 TextFields 的验证器中使用birthdayMonthFocusNode.requestFocus()
.
您可以查看更多信息: https ://flutter.dev/docs/cookbook/forms/focus
然后,当用户点击“下一步”按钮时,您必须做一些逻辑。您将TextEditingController().text
每个 TextFields 的所有内容连接起来,并使用 aDateTime.tryParse()
您应该立即以用户的生日 DateTime 结束。
推荐阅读
- java - Spring MVC 返回 404
- docker - 将两个 docker run 命令合并在一起
- c# - LINQ 搜索包含具有对象的类的列表
- c# - 在 C# 中从 datagridview 创建一个 sqlite 表
- c# - 创建 Json 反序列化器以修复移动的类
- swift - 屏幕快照在设备上显示工具栏,但在模拟器上不显示
- sql - 为特定列的每个不同值选择除第一行之外的所有行
- linux - 如何从监控中排除linux缓存内存,只监控应用程序消耗的内存
- android - 如何在无活动类中使用 textToSpeech?
- javascript - 如何找到动态创建的 li 的宽度