我正在开发一个应用程序,它应该创建一个 NSLocale 对象,而不是基于用户的区域(对于大多数界面元素,它应该保持用户的首选语言),而是基于旅行者的物理位置,以格式化货币。但是,要构建 NSLocale,我需要将语言(例如'en')和位置(例如'US')连接到 initWithLocaleIdentifier:@"en_US",从而将货币约定放入格式化程序中。
我可以从 CLPlacemark 获得 ISOcountry 代码,但语言信息......更难识别。是否有每个国家/地区的语言选项查找表,或仅基于“国家/地区”信息初始化 NSLocale 对象的其他选项?
我做了一个廉价的@"us_US" 串联,它似乎和@"de_DE"(!)一样有效,但我不知道我是否可以在所有情况下都指望它。
谢谢,
蒂姆