【问题标题】:Xcode 10 - Unable to Localize UINavigation Controller TitleXcode 10 - 无法本地化 UINavigation 控制器标题
【发布时间】:2019-07-05 14:18:33
【问题描述】:

我有一个想要翻译成西班牙语的应用程序。该应用程序非常简单,使用基本的 UINavigation 控制器。标题设置在主故事板中:

要添加西班牙语,我做了以下操作:

  1. 在项目本地化中添加了西班牙语

我对大家的第一个问题是为什么显示 4 个英文文件和 3 个西班牙文文件,而我实际上有 2 个英文文件和 2 个西班牙文文件

  1. 我为视图控制器启用了定位功能

  1. 我也在项目中添加了字符串文件。这适用于视图中的标签和动态文本,并且按预期工作。

  1. 编辑了 Main.strings(西班牙语)

在运行应用程序时,我编辑了方案,并将应用程序语言设置为西班牙语。

当应用启动并进入主屏幕时,我仍然看到 Welcome 而不是“Bienvenidos” 我错过了什么?

您应该知道的其他事项,在添加本地化时,我为情节提要尝试不同的选项启用和禁用了几次此功能。另外,在测试应用程序时,我将设置语言更改为西班牙语,我也多次删除并安装了该应用程序。

我使用的是 Xcode 10.1,项目格式与 Xcode 9.3 兼容,iOS 部署目标是 12.1

希望有人可以提供帮助。

【问题讨论】:

    标签: ios swift xcode xcode10 ios12


    【解决方案1】:

    对于您的第一个问题,您可能还本地化了您的 LaunchScreen.storyboard 文件。因此,您总共应该有 3 个本地化文件,除了您的 Main.storyboard 已选中所有三个复选框(BaseEnglishSpanish),并且由于 English 是您的开发语言,它占两个.

    至于你的第二个问题,如果你在模拟器中运行,只需编辑方案就可以了。既然您告诉您为项目启用和禁用本地化,Xcode 可能会出现问题。当我尝试删除本地化时,我也去过那里。尝试在运行应用程序之前清理您的项目 (Product -> Clean Build Folder),甚至在没有此添加/删除流程的情况下从头开始项目(如果可能)。希望这会有所帮助。

    【讨论】:

    • 感谢您的回答。我做了本地化 LaunchScreen,我没有看到那个文件。我做了干净的构建,我仍然看到相同的结果。我更改了所有字符串文件英语和西班牙语的文本。英文版可以用,西班牙文版不行。我仍然将“欢迎”视为标题,并且同样适用于其他视图,没有任何标题被翻译。
    • 我忘了说这个项目是一个cocoapod项目。
    【解决方案2】:

    希望这对其他人有所帮助。使用 Xcode 10 进行任何本地化的推荐方法是选择您的项目并执行本地化导出,只需转到 Editor > Export For Localization

    导出项目后,对 .xliff 文件、图像等进行任何更改。 在 .xliff 文件中,每个翻译都应该有一个<source>, <target> and <note> 标签。就我而言,许​​多标签都丢失了。我手动添加了它们,进行了翻译并将翻译导入到我的项目中。

    要导入本地化,只需选择您的项目并转到 Editor > Import Localizations。现在一切都应该按预期进行。

    来自 WWDC 的这段视频帮助我解决了我的问题 https://developer.apple.com/videos/play/wwdc2018/404/

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-11-11
      • 2012-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多