【问题标题】:XCode 7.3 & Swift 2.0 Decimal Keyboard with dot (".") and not comma (",") [duplicate]XCode 7.3 和 Swift 2.0 带点(“。”)而不是逗号(“,”)的十进制键盘 [重复]
【发布时间】:2016-06-21 12:55:32
【问题描述】:

我是一个 Xcode 新手,几乎没有编码背景。我想要完成的是为 iPhone 制作一个简单的 kg/lb 转换器应用程序。

到目前为止它工作得很好,但唯一的问题是:用户输入必须是一个带点的值。用户可以使用普通(带有字母和所有这些)插入点。但是当我将文本字段输入更改为十进制键盘时,用户只能插入逗号。如果用户使用逗号插入数字/值,应用程序就会崩溃(真实故事)。

在 Xcode 模拟器中启动应用程序时,点就在那里(这就是我想要的方式) - 只有在我的手机上启动时它是逗号。 iPhone 语言和地区设置为挪威(尽管更改其中任何一个都不是解决方案)。

截图:

有没有办法完成我想做的事情? 谢谢!

【问题讨论】:

  • 您必须更改您的应用,使其接受逗号。

标签: ios iphone xcode swift ios9


【解决方案1】:

我认为您在键盘上看到的内容是由 General->Language&Region->Advanced 决定的,因此您在实际设备上使用逗号的原因是这是您设置的区域的正确格式。这是正确的行为,因此不要尝试更改它,而是修复崩溃,以便您可以在应用中进行数学运算。

我建议使用NSNumberFormatter 从字符串中获取 NSNumber 对象,然后进行数学运算。

【讨论】:

  • 同意这一点:虽然英语国家和中美洲使用点表示小数点,用逗号分隔千位,但欧洲大陆和南美使用点分隔千位,逗号分隔表示小数点。在印度,您会看到逗号用作分隔符,但不一定是数千,因为十万。我直接知道的地区列表到此结束。但是,正如 Iawicko 所说,NSNumberFormatter 已经知道这一切并将为您处理。已经解决的问题万岁!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多