【发布时间】:2014-12-22 22:53:15
【问题描述】:
有没有办法通过货币代码而不是 iOS 中的区域设置标识符为 NSNumberFormatter 设置 NSLocale?
例如,在语言环境设置的任何位置都使用“USD”而不是“en_US”?
我看到有一个 NSLocaleCurrencyCode 对象,但我不确定我可以使用什么方法来设置 NSNumberFormatter's locale。
我目前正在使用 Swift,如果这样可以使过程更容易的话。
编辑:为了进一步解释我在做什么,我列出了每个国家/地区的货币代码(美元、英镑、日元、人民币等)。用户通过这些代码选择他使用的任何一种货币,然后我希望 NSNumberFormatter 自动将其语言环境设置为该货币的语言环境以自动格式化。
【问题讨论】:
-
请记住,
USD用于多个语言环境。许多地区都使用欧元。更好地解释你拥有什么以及你想要完成什么。 -
所以我列出了每个国家的货币代码(美元、英镑、日元、人民币等)。用户通过这些代码选择他使用的任何一种货币,然后我希望 NSNumberFormatter 自动将其语言环境设置为该货币的语言环境以自动格式化。
-
这还不清楚。您有国家列表及其相关的货币代码,还是只有货币代码列表?就像我说的,像 EUR 这样的代码被用于许多不同的国家。没有特定的语言环境与给定的货币代码相关联。货币格式应基于用户的区域设置,而不是任何特定的货币代码。
-
这是一个货币代码列表。用户没有选择国家。它适用于用户在国外旅行并想要输入外币价格的情况。我希望他们的输入在选择时以该货币格式化。
标签: ios objective-c swift