是否有 Swift 等价物NSLocalizedString(...)?在Objective-C中,我们通常使用:
NSLocalizedString(...)
Objective-C
NSString *string = NSLocalizedString(@"key", @"comment");
我怎样才能在 Swift 中达到同样的效果?我找到了一个功能:
func NSLocalizedString( key: String, tableName: String? = default, bundle: NSBundle = default, value: String = default, #comment: String) -> String
但是,它很长,一点也不方便。
也存在于 Swift的NSLocalizedString世界中。
NSLocalizedString
、和参数用关键字标记,tableName这意味着我们可以在调用函数时省略这些参数。在这种情况下,将使用它们的默认值。bundle``value default
tableName
bundle``value
default
由此得出结论,方法调用可以简化为:
NSLocalizedString("key", comment: "comment")
Swift 5 - 没有变化,仍然可以这样工作。