iphone - NSLocale - 查找 CountryCode 然后使用它来部署代码

标签 iphone ios locale nslocale

我很困惑为什么这段代码不能按照下面的评论工作:

NSString *countryCode = [[NSLocale currentLocale] objectForKey: NSLocaleCountryCode];
NSLog(@"Country Code: %@", countryCode);

if (countryCode == @"US") {
    NSLog(@"Country is USA"); // Does not execute since the if does not pass
}

区域设置为 en_US,因此国家/地区代码为 US。在那部分事情上一切都是正确的。我做错了什么,如何显示“Country is USA”?

谢谢!

在 iOS 5.1 和 6.0 上测试,结果相同

最佳答案

无法使用 == 运算符比较字符串,请尝试使用 isEqualToString: 代替:

NSString *countryCode = [[NSLocale currentLocale] objectForKey: NSLocaleCountryCode];
NSLog(@"Country Code: %@", countryCode);

if ([countryCode isEqualToString: @"NL"]) {
    NSLog(@"Country is NL");
}

因为我在荷兰,所以使用了 NL :)

关于iphone - NSLocale - 查找 CountryCode 然后使用它来部署代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11326294/

相关文章:

ios - 无法存档更新的 iOS PhoneGap 应用程序

iphone - 创建静态库iOS错误

c - 我如何知道与给定区域设置对应的度量单位?

iphone - 如何在应用程序中检测免打扰模式?

ios - 自定义交互式演示过渡

c++ - 虹吸管为 iOS 模拟器构建,但为设备构建获取链接器错误

java - 什么 ISO 用于定义 Locale 中的 countryId?

java - 在 Java 中获取特定于语言环境的日期/时间格式

iphone - 信息属性列表所需的设备能力

iphone - iPhone应用程式当机