我正在尝试实现可以更改应用程序语言的功能。 我试图这样设置:
let defaults = NSUserDefaults.standardUserDefaults() defaults.setObject("de", forKey: "AppleLanguages")
在应用重启后,语言仍然是“系统默认值”。 现在,我通过设置来测试不同的语言Scheme > Application Language > language。 但是,用户是否可以单击按钮,然后在重新启动后查看选择的语言?
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值来设置语言。