---- 2017 年 3 月 28 日更新 ----
\n\n当您通过 Xcode 中的“编辑方案”设置应用程序的语言和区域时,您将获得组合的区域设置标识符es-419_MX。但是,当您通过进入设置来更改设备/模拟器的实际语言和区域时,您将获得“正确的”区域设置标识符es_MX,同时保留 的语言代码es-419,这可以有效解决几乎每个用例的问题。
// After setting language and region in Edit Scheme from Xcode\nprint(Bundle.main.preferredLocalizations) // ["es-419", "es"]\nprint(Locale.current) // es-419_MX (current)\n\n// After setting the language and region from Settings\nprint(Bundle.main.preferredLocalizations) // ["es-419", "es"]\nprint(Locale.current) // es_MX (current)\nRun Code Online (Sandbox Code Playgroud)\n\n- - /更新 - -
\n\n我正在将我的应用程序本地化为拉丁美洲西班牙语 ( es-419)。当我尝试使用 显示本地化货币时NumberFormatter,iOS 返回一个圣甲虫\xc2\xa4而不是美元符号$。
例如,如果用户的区域是墨西哥,则他们将具有区域代码es-419_MX。$以下代码没有返回,而是返回\xc2\xa4
let formatter …Run Code Online (Sandbox Code Playgroud)