我本地化了我的应用程序的一部分,创建一个基础。Lproj storyboard和3个字符串文件。这是一个月前,之后我添加了新的视图控制器到应用程序,但这个控制器的按钮和标签没有出现在字符串文件

是否有可能更新这3故事板附加字符串文件或我必须添加新的字符串翻译与使用NSLocalizableString和Localizable.strings编程?


当前回答

您可以手动在本地化文件中添加一个键。您可以通过在故事板编辑器中选择它来找到关键对象。让我们在标识检查器中查看Object-ID。看起来像"nwc-b2-19c"

在本地化更新或添加翻译。例如:

"nwc-b2-19c.title" = "Translated title";

其他回答

我认为最好的方法是使用内置的导出/导入本地化:

在项目导航器中选择您的项目文件夹 选择编辑器>导出本地化, 所有的翻译都留在原来的位置,XCode会自动添加遗漏的字符串。 此外,在导入之前,你可以在XLIFF编辑器中编辑. XLIFF(例如,online - http://xliff.brightec.co.uk),然后你不需要在XCode中这样做。 然后编辑>导入本地化并选择已保存的.xliff文件。

注:如果你不想在XLIFF编辑器中编辑,并且跳过了步骤3,XCode不能保存新字符串。在这种情况下,在XLIFF编辑器中打开. XLIFF,重新保存,不做任何更改,并导入新文件。

xliftool是一个Mac应用程序,运行良好。它显示了info中所有可翻译的字符串和对象。Plist,可本地化字符串,还有故事板。

mac版的下载地址:https://itunes.apple.com/lv/app/xlifftool/id1074282695?mt=12

第一步:在Xcode中,在项目导航器中选择你的项目文件夹。然后选择编辑器/导出本地化…

你的可翻译字符串将包含在xliff文件中,在Xcode中本地化你所选择的语言下。

步骤2:用xliftool打开该文件,翻译或更新之前完成的翻译。

步骤3:然后用编辑器上传回你的项目/导入本地化…

最后,我的解决方案是(基本但有效)复制之前的翻译,并将它们粘贴到通过取消选中本地化语言框创建的新文件中。

这在某些情况下很有用,比如当你只需要更改一两个文本时。

添加一种新的语言进行本地化。一个你不需要的。

它会生产印尼语。例如字符串,它将包含你需要的所有故事板按钮-名称等,复制并粘贴到所有其他语言中。字符串文件。

下面是一个从故事板和xib中提取字符串的脚本,并将它们与现有的翻译合并。

若要在构建项目时自动运行脚本,请将脚本放入项目根目录,并在项目设置中的目标构建阶段中添加带有下面一行的“运行脚本”阶段。

./mergegenstrings.py PathToSourceDir

如果需要,也可以在终端上手动运行脚本。

脚本运行ibtool,正如Tha Leang回答的那样。它还运行genstrings来提取和合并源代码中标记有NSLocalizedString的字符串。该脚本基于本文中的一个脚本,该脚本在运行genstrings后合并字符串。