gpt4 book ai didi

ios - 在 Swift 3 中设置语言

转载 作者:行者123 更新时间:2023-11-28 09:53:11 24 4
gpt4 key购买 nike

Swift 2 包含函数:

NSBundle.setLanguage("...")

但新类“Bundle”在 Swift 3 中不包含方法 setLanguage。在 Swift 3 中设置语言的最佳方式是什么?

最佳答案

setLanguage() 似乎已在 Swift 3 Bundle 中弃用,或者您正在使用 NSBundle 扩展。相反,您可以执行以下操作:

let path = Bundle.main.path(forResource: lang, ofType: "lproj")

let bundle = Bundle(path: path!)

然后您可以使用该 bundle 获取本地化字符串。这是我为此编写的扩展:

extension String {
func localized(lang:String) -> String? {
if let path = Bundle.main.path(forResource: lang, ofType: "lproj") {
if let bundle = Bundle(path: path) {
return NSLocalizedString(self, tableName: nil, bundle: bundle, value: "", comment: "")
}
}

return nil;
}
}

用法

"any string from the strings file".localized("en")    // or "sv" for Swedish or "fi" for Finnish

关于ios - 在 Swift 3 中设置语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42806058/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com