2017-04-20 42 views
2

我尝试从iOS应用程序中的代码切换应用程序语言。我这样做从代码更改应用程序语言在iOS中不起作用

var lang = "en"   
    print("lang 1 = \(lang)") 
    print("lang 2 = \(UserDefaults.standard.array(forKey: "AppleLanguages")![0])") 

    UserDefaults.standard.setValue([lang], forKey: "AppleLanguages") 
    UserDefaults.standard.synchronize() 

    print("lang 3 = \(UserDefaults.standard.array(forKey: "AppleLanguages")![0])") 

而上面的代码打印这个。

lang 1 = en 
lang 2 = es 
lang 3 = es 

为什么'lang'没有保存到UserDefaults?我错过了什么?

+1

是从操场这个代码? – dirtydanee

+0

@dirtydanee,不,这是来自我的项目的ViewController – Alexander

+0

您使用什么设备进行测试(模型,版本)? –

回答

1

我有一个相同的问题,最有可能是在运行scheme的配置的情况下,如果在application language非集system language参数将被强制。 enter image description here 在这种情况下,你会不会能够覆盖AppleLanguages