【问题标题】:Xcode 6: iOS doesn't use storyboard localizationsXcode 6:iOS 不使用故事板本地化
【发布时间】:2014-10-01 17:49:10
【问题描述】:

自从我将我的 Xcode 项目升级到 Xcode 6 后,我的情节提要本地化不起作用。 我有:

  • 故事板文件的基本本地化(基本上是英文)
  • 四个字符串文件:英语、德语、法语和日语

在 Xcode 5 之前,这些都可以正常工作。

但是从 Xcode 6 开始我有以下情况:

  1. 应用程序在设备/模拟器上运行时仅使用基本文件中使用的标签
  2. 但是我的 Localizable.strings 文件,我为所有非故事板相关的本地化提供了不同的语言,工作完美。 (所以最后我在设备上运行时会混合多种语言)
  3. 从 Xcode 6 开始,可以在助手编辑器中以预览屏幕的形式查看本地化。一切正常。

所以:唯一不起作用的是故事板在运行时的本地化

其他人有同样的问题吗?有解决办法吗?

更新:使用 Xcode 6.1 GM,现在实际设备上的本地化是正确的,但模拟器只有英文,即使我在模拟器中选择了另一种语言。

【问题讨论】:

    标签: ios localization uistoryboard xcode6.1-gm-seed


    【解决方案1】:

    我遇到了同样的问题。我一直在努力让我的本地化故事板在 Xcode 6.0 中工作,直到我读到你的问题。然后我尝试了Xcode 6.1的第二个GM。在那里,我的 UILabel 在设备上正确本地化(而不是在模拟器中)。但是,我的 UITextView 没有本地化,我又花了 30 分钟才弄明白。

    希望这将很快得到解决。

    【讨论】:

    • 我在 App Store 上的最新版本 Xcode 中遇到了同样的问题(Xcode 6.1 - 不是 GM),您确认该错误尚未修复吗?即使我从设置中更改语言,模拟器上运行的应用程序也只有英语。我发现覆盖它的唯一方法是编辑方案-> 运行-> 应用程序语言。当应用在应用商店上线时,我很害怕会出现问题。
    【解决方案2】:

    我认为我遇到了同样的问题,因为我在模拟器中看不到任何翻译文本。我尝试使用一个虚拟的新项目并且它起作用了,这让我不太确定问题是什么。

    然后我决定使用专门的编辑器进行翻译。导出后,通过编辑器翻译文件并导入它们,我可以在 iOS 模拟器中看到正确的文本。所以我猜是我手动编辑它们的方式导致了这个问题。

    仅供参考,我使用的工具是https://poeditor.com

    【讨论】:

      【解决方案3】:

      我也遇到过同样的问题。解决方案是:你需要先清理(shift-cmd-k)一个项目,然后构建并运行它。

      【讨论】:

        【解决方案4】:

        尝试将本地化文件切换到“界面构建器故事板”而不是“可本地化的字符串”。出于某种原因,我的项目 Storyboard.storyboard 有效,但 Storyboard.strings 无效。可能是 xcode 错误。

        【讨论】:

          猜你喜欢
          • 2013-08-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-01-08
          • 2015-11-30
          • 1970-01-01
          • 2018-08-17
          相关资源
          最近更新 更多