Je développe une application pour Mac OS X. Je veux changer le contenu des indications en fonction de la langue (anglais, espagnol, etc.) de l'utilisateur de l'application, comment puis-je obtenir des informations sur la langue utilisée?Comment obtenir la langue locale de l'utilisateur en Objective-C?
Répondre
Vous pouvez utiliser l'API NSLocale pour obtenir cette information, mais il n'est pas nécessaire de faire ce que vous voulez faire. OS X a support for localization intégré dans le système d'exploitation - tout ce que vous devez faire est de fournir les fichiers de langue appropriés et l'utilisateur peut sélectionner la langue qu'il veut.
Vous cherchez à "localiser" votre application. Pour commencer, consultez les documents Apple ici: Internationalization - Apple Developer Docs. Sans en savoir plus sur votre application spécifique, il serait difficile de suggérer quelque chose de plus ici!
NSLog(@"localeIdentifier: %@", [[NSLocale currentLocale] localeIdentifier]);
'[[NSLocale currentLocale] displayNameForKey: Valeur NSLocaleIdentifier: [[NSLocale currentLocale] localeIdentifier]]' peut être utilisé pour obtenir la version en clair de localeIdentifier – Alexander
extrait de code
NSLocale *locale = [NSLocale currentLocale];
[locale objectForKey:NSLocaleLanguageCode]
vous pouvez utiliser comme bon des deux façons suivantes:
NSString *language = [[NSLocale currentLocale] localeIdentifier];
NSLog(@"Language: %@", language);
sortie: Langue: en_US
ou ceci:
NSString *language = [[NSLocale preferredLanguages] objectAtIndex:0];
NSLog(@"Language: %@", language);
sortie: Langue: en
Pour être exact, il y a un changement avec iOS 9 et plus où [NSLocale preferredLanguages] retourne maintenant - au lieu de seulement. Donc, il est préférable de faire:
NSString *languageOS = [[NSLocale preferredLanguages] objectAtIndex:0];
if([[[UIDevice currentDevice] systemVersion] floatValue] >= 9.0) {
languageOS = [[languageOS componentsSeparatedByString:@"-"] objectAtIndex:0];
}
- 1. Détecter la langue & django locale-url
- 2. google maps fournissant des indications dans la langue locale
- 3. comment obtenir la date et l'heure locale en php
- 4. Comment obtenir le paramètre de langue firefox?
- 5. Mise en forme de date locale en Python
- 6. Comment obtenir la langue sans le pays de CultureInfo
- 7. Comment charger la langue avec gettext en PHP?
- 8. Analyseur AMF0 dans ObjectiveC
- 9. Comment obtenir l'heure locale en utilisant Mysql et PHP?
- 10. Comment puis-je obtenir le nom de la machine locale en C#?
- 11. C#: obtenir des lettres de l'alphabet pour la langue scandinave?
- 12. Comment réinitialiser les messages d'erreur de la langue en anglais
- 13. AnkhSVN - conserver la copie locale et obtenir la dernière version
- 14. Comment obtenir des messages d'erreur en anglais sur une version en langue étrangère de Windows?
- 15. Automatisation de la construction locale?
- 16. Obtenir l'adresse IP locale dans Delphi
- 17. Changer la langue des messages d'erreur Subversion
- 18. Paramètre Java Applet Locale
- 19. Codeigniter obtenir des clés de fichiers de langue
- 20. Comment obtenir la langue ou la variation dans Sharepoint (MOSS) 2007?
- 21. Comment construire un moteur de traduction de langue en Java
- 22. Modification de la langue de NSLocalizedString() en cours d'exécution
- 23. Obtenir l'adresse IP locale correcte à partir de l'applet Java
- 24. Comment obtenir l'attribut top (comme dans locale) d'un élément DIV en utilisant Javascript?
- 25. Impossible de changer l'environnement de la langue dans Django
- 26. Le moment de l'appel de la méthode de la super classe est-il important dans ObjectiveC?
- 27. Modification de la langue d'entrée du clavier en Java
- 28. Prise en charge de la langue arabe pour une application
- 29. Comment convertir "byte gdicharset" en nom de script/langue?
- 30. Comment créer son propre fichier header.jsp dans JBoss Portal avec prise en charge de la langue?
Merci beaucoup! Je suis heureux, Si vous me donnez quelques exemples de codes – freddiefujiwara
Ce n'est pas exactement le genre de chose où vous pouvez simplement donner un exemple de code, puisque les interfaces utilisateur Mac sont généralement stockées dans des plumes et donc il n'y a pas vraiment de code responsable. Fondamentalement, il y a une structure de répertoire que les ressources de votre application doivent suivre et le système d'exploitation s'occupera du reste pour vous. Lisez les documents de localisation dans le lien que je vous ai donné et vous verrez comment cela fonctionne. Pour les occasions où vous affichez du texte par programmation, vous utiliserez généralement la fonction NSLocalizedString(). – Chuck