我正在尝试确定用户的Region / Locale设置是否验证了Metric值的使用(在这种情况下,如果应该追加 kg 或 lb )。
我在iPad上和模拟器上运行3.2(Xcode 3.2.4)。
我尝试了一些不同的区域设置,但我无法让NO
为NSLocaleUsesMetricSystem
NSLocale *locale = [NSLocale systemLocale];
BOOL usesMetric = [[locale objectForKey:NSLocaleUsesMetricSystem] boolValue];
NSLog(@"The system is Metric: %@\n", (usesMetric ? @"YES" : @"NO"));
对于在模拟器和实际设备上设置为英语且区域设置为美国的语言,甚至会发生这种情况。
我也试过NSLocaleMeasurementSystem
,它也总是返回“公制”,而不是“美国”。
我将如何决定是否应该使用Metric?
感谢您提供的任何帮助:)
......我可以这么幸运,在我睡觉的时候整个世界变成了公制:)
答案 0 :(得分:11)
尝试使用currentLocale
代替systemLocale
答案 1 :(得分:2)
出现同样的问题,直到我意识到,英国正式使用公制系统。我一直以为他们仍然使用帝国,所以我和英国一起测试。
当我开始测试美国语言环境时,NSLocaleUsesMetricSystem开始按预期返回“NO”。
希望这有帮助。