设置“ AppleLanguages”不会更改应用语言

我正在尝试实现可以​​更改应用程序语言的功能。

我试图这样设置:

let defaults = NSUserDefaults.standardUserDefaults()

defaults.setObject("de", forKey: "AppleLanguages")

在应用重启后,语言仍然是“系统默认值”。

现在,我通过设置来测试不同的语言Scheme > Application Language > language

但是,用户是否可以单击按钮,然后在重新启动后查看选择的语言?

另外,执行此操作以避免在重新启动时更改语言的正确方法是什么?

回答:

是的,您可以立即更改应用语言,例如,

var language = "de"

let path = NSBundle.mainBundle().pathForResource(language, ofType: "lproj")

let bundle = NSBundle(path: path!)

let string = bundle?.localizedStringForKey("key", value: nil, table: nil)

使用您的NSUserDefaults值来设置语言。

以上是 设置“ AppleLanguages”不会更改应用语言 的全部内容, 来源链接: utcz.com/qa/408904.html

回到顶部