382 Stimmen

Android erhält aktuelles Gebietsschema, nicht Standard

Wie erhalte ich das aktuelle Gebietsschema des Benutzers in Android?

Ich kann die Standardversion bekommen, aber das ist vielleicht nicht die aktuelle Version?

Im Grunde möchte ich den zweistelligen Sprachcode des aktuellen Gebietsschemas. Nicht den Standardcode. Es gibt keine Locale.current()

8voto

Rakshit Soni Punkte 927

Nach offiziellen Angaben Dokumentation KonfigurationKompat ist in Support-Bibliotheken veraltet

Sie können Folgendes in Betracht ziehen

LocaleListCompat.getDefault()[0].toLanguageTag() 0. Position ist das vom Benutzer bevorzugte Gebietsschema

Um das Standardgebietsschema an Position 0 zu erhalten, müsste man LocaleListCompat.getAdjustedDefault()

4voto

Alif Hasnain Punkte 1128

Im Moment können wir Folgendes verwenden ConfigurationCompat Klasse, um Warnungen und unnötige Boilerplates zu vermeiden.

Locale current = ConfigurationCompat.getLocales(getResources().getConfiguration()).get(0);

3voto

fvaldivia Punkte 436

Ich habe das verwendet:

String currentLanguage = Locale.getDefault().getDisplayLanguage();
if (currentLanguage.toLowerCase().contains("en")) {
   //do something
}

1voto

farhad.kargaran Punkte 2055

Ich habe diesen einfachen Code verwendet:

if(getResources().getConfiguration().locale.getLanguage().equalsIgnoreCase("en"))
{
   //do something
}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X