2
我有一个很大的项目,在故事板和变量的标签中都存储了大量文本。我知道如何本地化标签中的文字,但不知道如何本地化字符串变量。你可以解释一下,或给出指南的链接。我使用的Xcode 6.2版本Swift字符串变量本地化
我有一个很大的项目,在故事板和变量的标签中都存储了大量文本。我知道如何本地化标签中的文字,但不知道如何本地化字符串变量。你可以解释一下,或给出指南的链接。我使用的Xcode 6.2版本Swift字符串变量本地化
在代码中,你使用NSLocalizedString()
与基础语言:
NSLocalizedString("This is my text", comment: "Label in mainView")
注释可以留空“”但它是翻译(即使这是你有用)知道字符串来自哪里。
Xcode自动在您的项目中为该语言的子文件夹创建一个文件Localizable.strings
。该文件包含的条目类似:
/* Label in mainView */
"This is my text" = "Dies ist mein Text";
您可以与您选择的文本编辑器翻译该文件中的字符串。
一种更好的方式与翻译工作是选择在Xcode项目的目标,然后从菜单
编辑器 - >导出本地化的选择...
这将创建一个文件夹您选择的位置包含xliff格式的语言文件,即用于德语:de.xliff
xliff
是一种标准化(XML)格式。在简单的文本编辑器中编辑该文件有点困难。我使用iXLIFF。这是一个非常小的Mac应用程序,使翻译变得轻而易举。
翻译XLIFF文件去的Xcode
编辑 - >导入本地化...
,并选择XLIFF文件之后。 Xcode会告诉你什么时候缺少东西。
非常感谢你! – 2015-04-06 12:22:50
我写了这段代码后,发现了一个奇怪的错误。错误文本:'MiniGames Ultra [57948:188222]'2015-04-06 15:37:53.763 CFPropertyListCreateFromXMLData():旧式plist解析器:在第10行字典中缺少分号。解析将被废弃。打破_CFPropertyListMissingSemicolon调试.' – 2015-04-06 12:38:49
你错过了字符串文件中的一行的末尾的分号 – zisoft 2015-04-06 12:39:38