如果我将 iOS 8.1 模拟器上的语言更改为任何语言并尝试从代码中检测到这一点
NSString * language = [[NSLocale preferredLanguages] objectAtIndex:0];
NSLog(@"Language: %@", language);
我得到“en”回来。我已经尝试过重置导航器等。我已经使用 iOS 7.1 运行时(在 Xcode 5.1.1 中)进行了尝试,并且效果很好。有没有人设法找到解决这个问题的方法?
根据发行说明,这是一个已知问题。有一个解决方法。如果你去“编辑方案...”然后“选项”选项卡有一个“应用程序语言”选项。这只会影响当前的运行设置,而不是应用程序,就像更改设备的语言一样。
https://i.stack.imgur.com/74xw0.png
iOS8.1 Simulator always uses US keyboard layout despite german hardware keyboard 的另一个骗局
Xcode 6.1 发行说明中提到的已知和记录的错误。如果您想在 http://bugreport.apple.com 处将您的 +1 添加到投诉列表中,请提交雷达
我的模拟器是法语的。当我想检查英文界面时,更改 iphone 语言是不够的。我必须至少切换两次区域设置。
使用 [[NSLocale 可用的LocaleIdentifiers]
就我而言,编辑模式适用于地区,但不适用于语言。它看起来被开发语言覆盖。像这样更改 developmentRegion 可以很好地与 project.pbxproj 一起使用。
developmentRegion = ja;
https://i.stack.imgur.com/3H8fF.png
Xcode 版本 11.3.1 (11C504)
iPhoneX iOS 13.3.1