我使用以下代码获取iPhone所属的国家:

NSLocale *locale = [NSLocale currentLocale];
NSString *countryCode = [locale objectForKey: NSLocaleCountryCode];
NSString *country = [locale displayNameForKey: NSLocaleCountryCode value: countryCode];

我想得到的国家名称总是英文的,但如果iPhone是其他语言,它会返回该语言的国家名称...

推荐答案

查询displayName的英语区域设置

这样地:

NSLocale *locale = [NSLocale currentLocale];
NSString *countryCode = [locale objectForKey: NSLocaleCountryCode];

NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];

NSString *country = [usLocale displayNameForKey: NSLocaleCountryCode value: countryCode];

Objective-c相关问答推荐

为何在Objective-C中,使用self.propName赋值会导致崩溃而使用_ivarName则不会?

Objective-C,如何获取 UTC 时区的当前日期?

从 float 或 double 实例化 NSDecimalNumber 的正确方法

如何更改图像中的特定 colored颜色 ?

将 NSNumber 转换为 NSDecimalNumber

使用自动布局以编程方式更改框架

适用于 ios 的 360° 全景库

NSManagedObjectContext performBlockAndWait:不在后台线程上执行?

更改后退导航栏按钮的字体

更改 UISearchBar 的字体大小

iOS 上 64 位的 BOOL

如何使用 iOS 创建一个大的红色 UIButton?

如何查看 NSError?

如何检测 NSString 是否为空?

Cocoapods ld:找不到-lPods-Projectname 的库

100% 不透明度 UILabel 超过 50% 不透明度背景(UIView?)

发送通知到山狮通知中心

以编程方式设置 UIView 的自动调整大小掩码?

`[super viewDidLoad]` 约定

如何在 iOS 中创建自定义 UIActivity?