我正在开发一个应用程序,它应该创建一个NSLocale对象,而不是基于用户的区域(对于大多数界面元素应该保留用户的首选语言),但是在旅行者的物理位置上,要格式化货币。但是,要构建NSLocale,我需要将语言(例如'en')和位置(例如'US')连接到initWithLocaleIdentifier:@“en_US”,从而将货币约定连接到格式化程序中。
我可以从CLPlacemark获取ISOcountry代码,但语言信息......更难识别。是否有针对每个国家/地区的语言选项查找表,或仅根据“国家/地区”信息初始化NSLocale对象的其他选项?
我已经对@“us_US”做了一个便宜的连接,它看起来和@“de_DE”(!)一样好,但我不知道在所有情况下我是否可以依赖它。
谢谢,
添
答案 0 :(得分:0)
对于它的价值,似乎NSLocales实际上可以使用'gb_GB'或'us_US'语言环境标识符进行初始化 - 至少是为了获取货币信息。我没有在Xcode提供的位置找到例外。