iOS - 故事板 - 本地化 - 修改故事板后,如何同步到其他语言的故事板?

3
我知道如何开启故事板的本地化,问题是我不知道在修改主要(英文)故事板后如何同步所有本地化故事板。
有没有什么快捷方式可以同步它们?我是否必须一遍又一遍地在十多种语言的故事板中进行所有修改?
我的情况是:我有一个具有十多种本地化的项目。当我发布它到AppStore后,我们有了新的用户需求。然后,我们开始编写下一个版本的应用程序。在完成了大量的改进和创建故事板后,我感到绝望面对其他语言的故事板。
2个回答

6

如果您使用的是iOS版本>= 6(和Xcode>=4.5),则可以为多种语言使用单个故事板,即进行基本本地化+通常的字符串本地化。这样,您只需要关心字符串文件中的本地化字符串。

有关指南,请参见例如 这里


关键点在于,他所建议的链接中的最后一个脚本而不是原始脚本可以更新您的.strings文件。Xcode可以使用适当的设置调用脚本。 - kmugitani

1
如果您的目标是 iOS 6.0,您可以像 Matthias 提到的那样使用 Base.lproj。
如果您的目标版本低于 6.0,则可以使用 ibtool 的本地化合并功能。它们适用于 NIB、XIB 和 Storyboard。您可以这样调用它们:
ibtool path-to/development.storyboard --local-
       ize-incremental --previous-file path-to/development-storyboard-localization-was-based-on.storyboard --incremental-file path-to/previous-localized-storyboard.storyboard--write path-to/updated-localized-storyboard.storyboard

这个操作会打开development.storyboard,复制它,并比较path-to/development.storyboard和path-to/development-storyboard-localization-was-based-on.storyboard之间的所有本地化属性。如果这些属性相同,则从path-to/previous-localized-storyboard.storyboard中复制对应的值到path-to/updated-localized-storyboard.storyboard,否则当前的development值将保留在原位。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接