首页 > 解决方案 > Concat 3个文本字段形成生日

问题描述

3 文本字段在一行中对齐。

分别等待输入 dd mm yyyy。在页面打开时,第一个文本字段上的自动对焦,当输入达到 2 位数字时,自动对焦转到第二个文本字段。当输入达到 2 位数时,自动对焦转到最后一个 4 位数的文本字段。用户无需输入“/”或“-”。只有日期可以。

年龄对话形成

有谁知道如何为生日创建这样的文本字段组合?这样当用户按下“下一步”按钮时,会出现一个对话框,要求用户确认他/她的年龄?

(这意味着来自 3 个文本字段的输入被保存为生日,输出为(今天的当前日期 - 日期输入)= 年龄。

任何指导表示赞赏!

标签: flutterdatevalidationdialog

解决方案


您可能希望FocusNode为每个创建一个TextField,然后在您的 TextFields 的验证器中使用birthdayMonthFocusNode.requestFocus().

您可以查看更多信息: https ://flutter.dev/docs/cookbook/forms/focus

然后,当用户点击“下一步”按钮时,您必须做一些逻辑。您将TextEditingController().text每个 TextFields 的所有内容连接起来,并使用 aDateTime.tryParse()您应该立即以用户的生日 DateTime 结束。


推荐阅读