2011-08-24 213 views
5

我希望能够根据用户的位置更改应用程序。使用NSLocaleCountryCode的国家/地区列表

NSLocale *locale = [NSLocale autoupdatingCurrentLocale]; 
    NSString *countryCode = [locale objectForKey: NSLocaleCountryCode]; 
    NSString *countryName = [locale displayNameForKey: NSLocaleCountryCode value: countryCode]; 
    NSLog(@"countryName %@", countryName); 

伟大的工程,但我想知道countryName的将如何显示,这样我就可以设置开关的情况下的,如果你没有,这是很难知道每一个国家究竟是如何:使用下面的代码林拼写:美国,美国,美利坚合众国等。是否有AppleCountryCode的列表,我无法找到一个。

还有一种方法可以确保结果是英文吗?

回答

9

Apple使用ISO standard ISO-3166

+1

请更新文档链接 – Husyn

+0

-1:仅链接的答案是很差的答案,因为链接可能被破坏(因为这是目前的情况)。您应该在您的答案*中包含相关信息*,并将原始页面/信息链接作为附加资源或属性。 –

+0

在英国[[NSLocale currentLocale] objectForKey:NSLocaleCountryCode];返回'GB',它不在ISO-3166列表中(它不是一个国家!) –

相关问题