gpt4 book ai didi

ios - 在基本本地化中找不到 main.storyboard 字符串

转载 作者:行者123 更新时间:2023-12-04 23:29:01 24 4
gpt4 key购买 nike

在 xcode 8.3.3 中,玩我的第一个认真的本地化。我添加了两种语言,“使用基础本地化”已打开,导出 xliff,导入翻译,一切似乎都如我所愿。我有一个 base.lproj 文件夹,其中包含 main.storyboard、我的基本 Localizable.strings 和 InfoPlist.strings。我有两个语言 lproj 文件夹,每个文件夹中都有它们的文件。在应用程序中,它们按类型组织:

screenshot of Main.storyboard in project structure

enter image description here

如果我将应用程序设置为以这些语言中的任何一种运行,它就可以正常工作(我还必须向构建阶段添加一个副本以复制 Localizable.strings 和 InfoPlist.strings)。控制台中没有错误或警告,应用程序工作并显示 Storyboard字符串和代码的正确文本。

但是,当我使用基本语言(英语,如果重要的话)时,当应用程序启动时,它会抛出所有 Storyboard字符串的警告。类似的东西:

2017-07-16 10:57:22.977774-0500 AppName [1574:688423] [strings] ERROR: bFh-6v-hYF.text not found in table Main of bundle CFBundle 0x101d00020 </var/containers/Bundle/Application/guidguid-guid-guid-guid-guidguidguid/AppName.app> (executable, loaded)

注意事实上,所有 Storyboard字符串都以基本语言正确显示,它只是将这些错误写入日志。在我意识到我需要基本的 Localizable.strings 之前,当它找不到那些时,它会显示“Key”,对于这个项目,它是可翻译的字符串,但它们会以大写显示。这里情况不同。该应用程序看起来不错,但会引发错误。

所以我的第一次尝试(在仪式清理和重建之后)是创建一个 Main.strings 文件并尝试将其作为所述字符串的基本版本导入,因为它显然没有在已经存在的 Main.storyboard 中找到它们在 base.lproj 中。没有运气,它不会让我这样做 - 这是有道理的,因为它已经认为 Main.storyboard 是基础。下一个想法是尝试将 Main.storyboard 作为构建阶段的一部分复制到包中,但这没有帮助。在阅读了有关其他人在此平台上使用 i18n 遇到的所有问题的文章一天后,我还没有发现完全相同的问题,并且没有想法。

我不能说消除这些最后的错误似乎是一件大事,但它们困扰着我,因为否则它会运行得很干净,并且它可以在除基本语言之外的任何语言中运行。

最佳答案

您的问题现在肯定已解决,但也许其他人(如我)收到类似的错误消息:
我的情况是,由于某种原因,主 Storyboard不再本地化。

我因此对其进行了本地化,它创建了两个子文件:
enter image description here
因此,要本地化 Storyboard,需要:

  • 始终是文件夹 Base.lproj 中的文件 Main.storyboard
  • 对于每个本地化文件 Main.strings,在文件夹 XX.lproj 中,其中 XX 特定于语言,例如de 为德语。

  • 一旦我完成了 Storyboard的本地化,错误消息就消失了。

    关于ios - 在基本本地化中找不到 main.storyboard 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45130784/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com