从语言代码中获取该语言的语言名称

Get language name in that language from language code

我有一个语言代码列表(如 "en"、"es"...)我需要像这样以这些语言显示:

English
Español
Français
Deutsch
日本語

是否有任何内置 API 可以在 Android 中获取这些内容,还是我应该自己映射它们?

Locale class 为此有 a methodpublic String getDisplayLanguage(Locale locale),如文档所述:

Returns the name of this locale's language, localized to locale. The exact output form depends on whether this locale corresponds to a specific language, script, country and variant.

因此您可以像这样获取区域设置的语言名称:

String lng = "en";
Locale loc = new Locale(lng);
String name = loc.getDisplayLanguage(loc); // English

lng = "es";
loc = new Locale(lng);
name = loc.getDisplayLanguage(loc); // español

//...