Sir. J'essaie de créer une application de support multi-langue. J'utilise les abréviations comme zh-Hant, en, jp pour enregistrer comme utilisateur par défaut. Et changez la langue de l'application. Si vous cliquez sur l'élément de la vue de collection, le texte de l'espace réservé au champ de texte change. Cependant, je ne peux pas faire ça. Le langage du simulateur est l'anglais par défautEchec de la définition de la langue dans Swift 3
Voici mon travail en cours:
Localisation Fichier: Japon (jp)
"User Email"; = "ユーザーメール";
Set méthode de texte
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)
Chaîne 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 "";
}
La langue de l'application est quelque chose qui change sur l'appareil, pas dans l'application elle-même. Si vous souhaitez afficher les chaînes localisées, modifiez la langue dans les paramètres du périphérique. – matt
Comment dois-je changer la langue de l'application au moment de l'exécution? –