Swift 如何为不同语言本地化数组

Posted

技术标签:

【中文标题】Swift 如何为不同语言本地化数组【英文标题】:Swift How to localize an Array for different languages 【发布时间】:2018-12-17 19:38:47 【问题描述】:

我正在尝试为不同语言本地化一个数组。

我想要本地化的数组如下所示:

var watch = ["This watch is blue", "this watch is red", "this watch is white "]

我已经有了可本地化的字符串,我正在使用NSLocalizedString 方法,但我不知道如何使用所有不同的描述来本地化数组。

感谢您的帮助

【问题讨论】:

您可以将NSLocalizedString 用于您的数组,而不是原始字符串数组。 【参考方案1】:

如果您已经在应用中设置了本地化,您仍然可以使用 NSLocalizedString in 作为数组元素而不是直接字符串。

假设你有一个Localizable.strings

"BlueMessage" = "This watch is blue";
"RedMessage" = "this watch is red";
"WhiteMessage" = "This watch is white ";

那么您可以将watch 数组声明为:

var watch = [NSLocalizedString("BlueMessage", comment: ""),
             NSLocalizedString("RedMessage", comment: ""),
             NSLocalizedString("WhiteMessage", comment: "")]

它也是一个字符串数组 ([String]),包含字符串的本地化版本。

【讨论】:

以上是关于Swift 如何为不同语言本地化数组的主要内容,如果未能解决你的问题,请参考以下文章

如何为本地通知界面编写适当的测试?

如何为本地化应用加载 XIB?

Swift:如何为 UIPickerView 中的行分配不同的数值?

如何为编码的 UI 测试设置文化以从资源文件中获取本地化文本?

如何为以下场景安排本地通知?

如何为直播创建本地媒体服务器?