【问题标题】:Flutter input with decimal number带十进制数的颤振输入
【发布时间】:2019-08-16 17:39:02
【问题描述】:

我正在尝试解析 Flutter 中的输入并在那里提取 Double 值。 IE。用户只能输入十进制数字。

为此,我使用了 TextField:

TextField(
                    keyboardType: TextInputType.numberWithOptions(signed: false, decimal: true)
                    controller: _controller,
                  )

但在 iOS 设备上,我的键盘带有数字和逗号 (,),而不是点 (.)。当用户输入逗号时,我正在解析字符串并出现如下错误:

Error: FormatException: Invalid double 5,

处理此问题的最佳方法是什么? 一些肮脏的解决方案是:

  • 使用 TextInputType.numberWithOptions(signed: true, decimal: true) - 这给键盘提供的不仅仅是数字和用户输入点。
  • 也许先用点替换逗号

【问题讨论】:

    标签: dart flutter


    【解决方案1】:

    显示逗号的原因是设备的本地区域格式。或许this link可以帮到你。

    【讨论】:

      猜你喜欢
      • 2023-03-21
      • 2020-06-05
      • 2016-04-21
      • 2014-05-26
      • 1970-01-01
      • 2020-12-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多