如何使用Xcode 9和Swift 4本地化应用程序的最佳方法?

3
我之前使用Localizable.string文件本地化我的应用程序,并为项目中的每个文本提供一个键。目前,我正在使用Xcode 9和Swift 4开发一个项目,第一次使用Storyboards(是的,听起来很奇怪,但我一直在使用SpriteKit而不使用Storyboards),我有点困惑如何处理本地化。基本上,我的问题是:我应该使用Storyboard本地化UILabel还是应该在Localizable.string中实现所有内容,并通过代码为标签赋值?你能给出一些提示,以便我了解哪种方法最好本地化它吗?
3个回答

2
我建议您使用Localizable.string而不是Storyboard本地化,因为Storyboard中标签的ID可能会更改。

谢谢你的回答!我一定会使用 Localizable.strings 文件。 - user3582537

0

我发现的最可靠的解决方案之一,对我来说确实有效。

首先,我们需要使用Storyboard并创建本地化字符串文件。这将自动为所有对象创建ID。请参考tutorial

然后,我们可以使用一个库MCLocaliztion,它将根据ID选择相应的翻译字符串。我们需要做的是根据对象ID准备一个合适的JSON。

希望这有所帮助。


0

没有更好/更差的解决方案。它取决于您的 UILabel 的目的。如果它是应用程序生命周期中不会更改的元素,则可以优先使用直接的Storyboard本地化。相反,如果标签可能具有不同的值,则建议您以编程方式设置本地化字符串。


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