【发布时间】:2020-03-04 07:55:09
【问题描述】:
我们使用NumberFormatter 类来格式化应用程序中的一些金额。由于我们在 iOS 13 上迁移,用于区域设置 fr_FR 的 groupingSeparator 空格 似乎发生了变化。
我们对格式化字符串数量进行了测试,例如:
var amount = "1000"
XCTAssertEqual(amount.formattedValue, "1 000,00")
在 iOS 上,此测试成功。但是如果我们在 iOS > 13 上启动测试,这个测试就会失败。
原因是因为iOS 13中NumberFormatter的groupingSeparator属性所使用的空间类型发生了变化,所以
根据使用的空间分组分隔符,1 000,00 将不等于 1 000,00。
根据当前 iOS 版本始终使用正确的空间分组分隔符有什么想法吗?
编辑:我们发现iOS 13上的已用空间现在是NARROW NO-BREAK SPACE
编辑 2 :currencyGroupingSeparator 也随着 NNBSP 的变化而变化,所有货币分组分隔符都已替换为新的。
【问题讨论】:
-
将
currencyGroupingSeparator设置为常规空间是否可行?
标签: ios objective-c swift numberformatter