一尘不染

NSLocalizedString()的第二个参数是什么?

swift

什么是*comment参数:

NSString *NSLocalizedString(NSString *key, NSString *comment)

如果我这样做:

NSLocalizedString(@"Hello_World_Key", @"Hello World")

并具有两个Localizable.strings版本(英语和西班牙语),每个版本是否都需要输入:

English.lproj/Localization.strings: @"Hello_World_Key" = @"Hello World";

Spanish.lproj/Localization.strings: @"Hello_World_Key" = @"Hola Mundo";

英语难道不是多余的吗?


阅读 286

收藏
2020-07-07

共1个答案

一尘不染

注释字符串被应用程序忽略。它用于翻译者的利益,可在您的应用程序中找到的键的上下文用法中添加含义。

例如,Hello_World_Key键在给定语言中的取值可能不同,具体取决于该Hello World短语在该语言中需要使用的正式或非正式程度(“
Whats up World”,“ Yo World”,“ Good Day World”等)。

您可以在注释字段中添加一个字符串,以向翻译者提示这种用法,翻译者(可能会认为)可以更好地本地化您的应用程序。

2020-07-07