我浏览了有关苹果开发人员的一些国际化文档和视频,但从未找到该问题的明确答案。在Apple的教程中,我看到Base.lproj文件夹以及en.lprojzh.lproj -示例翻译(本地化)是从英语到中文。但是他们告诉我,有一个文件en.lproj/myStoryboard.strings,这很令人困惑。我看不到为 Storyboard创建英语本地化的意义(已经是英语)。

  • 所以我的问题是用户是否会看到Base.lproj/myStoryboard.storyboard中的字符串?
  • 如果系统在我的捆绑软件中找不到用户首选的语言文件夹,该文件中的字符串是否必须是显示给用户的默认字符串?
  • 我是否可以明确地说“从不使用Base.lproj/myStoryboard.storyboard,请始终使用en.lproj/myStoryboard.strings”?

  • 换句话说:
    假设我希望我的应用在用户不可用时以英语显示,但Base.lproj/myStoryboard.storyboard是瑞典语。然后,是否需要将基本 Storyboard 本地化为sv.lproj/myStoryboard.strings并将基本 Storyboard 中的所有字符串转换为英语才能完成此操作?

    最佳答案

    就我而言,XCode 5并未创建en.lproj/myStoryboard.strings,而Base.lproj文件夹中只有原始的 Storyboard。也许这是一个古老的XCode问题?

    尝试删除该文件,并查看您的应用是否与Base.lproj一起使用默认的英语字符串。

    您的Info.plist文件应该具有一个Localization native development region条目,该条目指向要使用的lproj文件夹,以防所需的字符串不存在于首选语言中。

    我对此不太确定,但是我认为您必须使用en,并且UI与Base.lproj一起会自动回退到Base.lproj

    这对您有任何帮助吗?

    关于ios - 对于所有未本地化的语言和字符串,我的基础国际化 Storyboard 是否必须与备用语言相对应?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18114994/

    10-11 05:57