在iPhone上,当用户将语言设置为法语,将区域格式设置为美国时,CurrentCulture代表 en-US 。
只有当用户将地区格式设置为法国时才能获得 fr-FR ;
如果用户设置了 Langauge ,但未设置区域格式,如何确定语言?
答案 0 :(得分:5)
您想查看NSLocale
,例如NSLocale.CurrentLocale.Identifier
获取en-US
之类的字符串。这将为您提供iOS正在使用的完全值。
.NET和iOS都有相似但略有不同的API来获取这些值。仅使用iOS数据很难与.NET完全兼容(它不是一个完美的选择)。在某些情况下,例如RegionInfo
,我们已经能够使用iOS提供的数据引导 .NET类。随着越来越多的功能可用,我们可能会在将来为其他类型做同样的事情。
答案 1 :(得分:0)
NSLocale.CurrentLocale
提供区域格式,而不是语言。
要获取该语言,请改用NSLocale.PreferredLanguages[0]
。对于所选语言,结果将是fr
或en-US
之类的字符串。
有关详细信息,请参阅Getting current device language in iOS?。