bonjour Je dois obtenir la liste des langues définies sur un appareil Android et souhaite remplir une fileuse avec le code de langue et le nom de la langue. Comment puis-je faire ça? P>
Merci d'avance et des salutations c. p>
4 Réponses :
Utilisation:
Resources.getSystem().getAssets().getLocales();
Vous devez ajouter les parties essentielles de l'article lié pour éviter que votre réponse soit supprimée.
public static List<String> getLanguages() { String[] locales = Resources.getSystem().getAssets().getLocales(); List<String> list = new ArrayList<>(); for (Locale locale : Locale.getAvailableLocales()) { if (locale.getLanguage().length() == 2) { if (!isLanguageInList(list, locale)) { list.add(locale.getDisplayLanguage()); } } } Collections.sort(list); return list; } private static boolean isLanguageInList(List<String> list, Locale locale) { if (list == null) { return false; } for (String item: list) { if (item.equalsIgnoreCase(locale.getDisplayLanguage())){ return true; } } return false; }
J'ai fait face au même problème. J'ai compris comment obtenir des locaux définis dans
KOTLIN P> Paramètres du téléphone -> Système -> Langues et entrée CODE> P>
val locales = Resources.getSystem().configuration.locales
Qu'entendez-vous par «défini sur un appareil Android? Signifiez-vous simplement les locaux possibles? (tels que EN-RUS, FR-RFR, etc.)