Spritekit SKLabelNode中的NSLocalizedString

时间:2017-03-15 19:37:24

标签: ios swift sprite-kit

我一直在网上搜索,似乎没有关于如何使用SpriteKit本地化字符串的明确解释。只看到使用界面构建器的人的教程,但我真正想要的是,想象一下:

我有一个名为SKLabelNode的标签。我将文本定义为:

labl.text = NSLocalizedString("titleOfTheScreen",nil)

基本上我认为我必须做的是在项目设置中添加新语言。然后,我添加一个名为Localized的新Strings文件,并将其添加到新文件夹中。

但是我的英语会怎么样?原始文件没有文件

2 个答案:

答案 0 :(得分:2)

首先,你必须添加一个字符串文件:

enter image description here

enter image description here

然后打开项目设置并添加新语言:

enter image description here

将添加的字符串文件标记为目标:

enter image description here

找到新添加的本地化文件。 (自动添加英文)

enter image description here

答案 1 :(得分:0)

从截图中我可以看到你有" File.strings"文件。你应该已经创建了" Localizable.strings"文件。

另外,我可以看到你有(基础),(英语)和(德语)字符串版本。为什么你认为英语不存在?

在每个文件中,你应该输入这样的字符串:

"titleOfTheScreen" = "blah-blah";

替换" blah-blah"在每个字符串文件中正确翻译。值得注意的是,字符串文件中行末尾的分号是强制性的,否则Xcode会发出一些非常有趣的错误消息。如果你在Swift中进行编程并且尾随的分号不是强制性的,那很容易被忽视。