【问题标题】:Swift - How to use localisation from Shared ExtensionSwift - 如何使用共享扩展中的本地化
【发布时间】:2017-01-13 11:28:45
【问题描述】:

如何在 Swift 中使用来自共享扩展的容器应用本地化字符串。我已经将容器字符串文件添加到 extension -> build phase -> compile sources 中,但它仍然无法正常工作。我应该在配置中设置什么吗?从主容器应用程序字符串被翻译,但从共享扩展它只显示文本的字符串键/ID。

【问题讨论】:

标签: ios swift localization translation


【解决方案1】:

您需要更改 Localizable.strings 文件的目标成员资格。在左侧的 Project Navigator 中选择 Localizable.strings,然后打开右侧的 File Inspector 并在“Target Membership”字段中的扩展目标旁边添加复选标记。

【讨论】:

  • 非常感谢@ovejka。现在它工作正常。再次感谢。
【解决方案2】:

有几件事需要检查:

  • 其中一个是@ovejka 提供的解决方案 - 单击您的字符串 本地化文件,并确保在右侧的设置窗格中, 该文件适用于您的小部件以及您的主应用程序(目标 会员)。
  • 另一个是确保你的故事板字符串文件,它应该 已在您添加第二语言时自动创建 您的应用,有正确的翻译。
  • 如果这些都不起作用,因为小部件非常小并且 可能只有很少的标签,您可以向“viewWillAppear”添加一个 switch 语句,以根据检测到的语言翻译每个标签

最后,这些似乎都不适用于模拟器中的我,甚至通过切换模式语言并在我的实际手机上运行它。

事实证明,它一直在工作,而模拟语言并未应用于小部件。我将实际手机的语言变成了西班牙语,运行了我的应用程序的新版本,小部件被翻译了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多