ChatGPT解决这个技术问题 Extra ChatGPT

iOS 8.1 模拟器本地化损坏 (NSLocalizedString)

TL;DR:本地化似乎不适用于 xCode 6.1 和 8.1 模拟器。解决方法:转到“编辑方案”>>“运行”(侧栏)>>“选项”选项卡>>“应用程序语言”选择您希望在模拟器上运行应用程序的语言。

很长的故事:

我已将 xCode 更新到 6.1。该更新删除了 iOS 7.x 模拟器,只给我留下了 8.x 模拟器。我已经完成了以下步骤:

我已经安装了 7.x 模拟器

清理项目

从模拟器中删除了应用程序

删除了我的项目的派生文件夹

该项目支持英语和日语。在 7.1 模拟器 (5s) 上,本地化按预期工作。在 8.1 模拟器 (5s) 上它不起作用。

我猜苹果用模拟器破坏了一些东西,因为它可以在真实设备上运行。

对此有任何意见,其他人也遇到过类似的问题吗?

EDIT
好像是模拟器的bug,参考:
Apple Dev Forums

使用 GM2 时遇到了同样的问题,现在应该是一样的
即使 iOS 8.1.1/Xcode 6.1.1 已发货,问题仍然存在。
在构建方案中设置语言对我有用。为了更好地衡量,我还在模拟器中设置了语言。
Apple 使用 xCode 版本 6.2 修复了该错误

C
Community

这在 Xcode 6.1 发行说明和其他堆栈推翻线程中有所提及,例如:

iOS8.1 Simulator always uses US keyboard layout despite german hardware keyboard


嗨杰里米,你所指的问题有点不同,除了问题的标题并不表明本地化不起作用。
这是同一个问题。全局首选项(包括区域设置和键盘设置)在 iOS 8.1 模拟器中无法正确运行。
你是对的,硬件键盘也失败了。