-1
我想創建一個多語言支持的應用程序。我使用像zh-Hant,en,jp這樣的縮寫來保存爲用戶默認值。並更改應用程序的語言。以文本字段的持有者爲例,如果單擊集合查看項目,則文本字段佔位符的文本將發生更改。但是,我不能這樣做。仿真語言是英語作爲默認
這是我的工作正在進行中:
本地化文件:日本(JP)
"User Email"; = "ユーザーメール";
設置文本方法
let lcode : String = self.langList[indexPath.item].code
print("You selected cell #\(indexPath.item) and code : \(lcode)")
UserDefaults.standard.setValue(lcode, forKey: "lang")
txtUsername.placeholder = "User Email".localized(lang: lcode)
字符串exntension
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 "";
}
該應用的語言是在設備上改變的,而不是在應用本身內。如果您想查看本地化的字符串,請在設備的設置中更改語言。 – matt
那麼我應該如何在運行時更改應用程序語言? –