2017-04-20 58 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