是否可能更新这三个 storyboard 相关的字符串文件,或者我必须使用 NSLocalizableString 和 Localizable.strings 在编程中添加新的字符串翻译呢?
苹果公司有一个名为AppleGlot的命令行工具,支持增量本地化。虽然我还没有尝试过它,但它看起来就像你之前搜索过的那个工具。
appleglot
工具适用于最终应用程序包。这是一种完全不同的翻译应用程序的方法。 - FlovdisXlifftool 是一款Mac应用程序,可以很好地显示 info.plist、可本地化的字符串和 storyboard 中的所有可翻译字符串和对象。
在此处获取Mac版本:https://itunes.apple.com/lv/app/xlifftool/id1074282695?mt=12
步骤1:在Xcode中,在项目导航器中选择您的项目文件夹。然后选择"编辑器/导出本地化..."
您的可翻译字符串将包含在xliff文件中,该文件位于您在Xcode中选择的本地化语言下。
步骤2:使用 xlifftool 打开该文件,并在其中翻译或更新先前完成的翻译。
步骤3:然后使用"编辑器/导入本地化..."将其重新上传到您的项目中。
选项1
Xcode可以通过将文件转换为[Interface Builder Cocoa Touch Storyboard]
文件类型或[Localizable Strings]
文件类型来“重新加载”文件。
从项目导航器中选择您的基本storyboard文件
在文件检查器中找到本地化部分。
如果您的文件当前是[Localizable Strings]
,请将其更改为[Interface Builder Cocoa Touch Storyboard]
或反之亦然。
Xcode应该已经将您的storyboard转换为当前版本,同时保留了旧的本地化工作。在这里,您可以将文件更改回原始文件类型,如果您愿意的话。
选项2
使用ibtool
提取您的storyboard中的字符串。
打开终端应用程序
定位到您的Base.lproj
目录
使用以下行来提取字符串:
ibtool MainStoryboard.storyboard --generate-strings-file file_name.strings
在ibtool提取字符串到file_name.strings
之后,您可以将其复制粘贴到原始的.strings
文件中。
这是我从Storyboard或XIB更新新文本到本地化字符串的简单方法:
1- 使用此脚本 http://tredje.se/dev/trouble/?x=entry:entry150917-204052
2- 选择要更新的本地化字符串,并将语言字符串从“本地化字符串”切换到“界面构建器故事板”
3- 切换回来即可 :)
完成。
添加一种新的本地化语言,但你并不需要它。
这将生成例如Indonesian.strings文件,其中包含了所有故事板按钮名称等所需内容。将它们全部复制粘贴到其他所有语言的.string文件中即可。