在 iPhone 上,当用户将Language设置为French并将Region Format设置为United States时, CurrentCulture 代表en-US。
只有当用户将其区域格式设置为 France 时,我才会得到fr-FR;
如果用户设置了语言,但没有设置区域格式,我如何确定语言?
在 iPhone 上,当用户将Language设置为French并将Region Format设置为United States时, CurrentCulture 代表en-US。
只有当用户将其区域格式设置为 France 时,我才会得到fr-FR;
如果用户设置了语言,但没有设置区域格式,我如何确定语言?
你想看看NSLocale
,例如NSLocale.CurrentLocale.Identifier
得到一个字符串,如en-US
. 这将为您提供 iOS 正在使用的确切值。
.NET 和 iOS 都有相似但略有不同的 API 来获取这些值。仅使用 iOS 数据很难与 .NET 完全兼容(这并不完美)。在某些情况下,例如RegionInfo
,我们已经能够使用 iOS 提供的数据引导.NET 类。随着更多功能可用,我们将来可能会为其他类型做同样的事情。
NSLocale.CurrentLocale
给出区域格式,而不是语言。
要获取语言,请NSLocale.PreferredLanguages[0]
改用。结果将是一个类似于fr
或en-US
所选语言的字符串。
有关详细信息,请参阅在 iOS 中获取当前设备语言?.