在我的Android手机语言设置中,我将语言设置为英语(美国Kingdowm)。
我使用以下代码来获取语言:
Log.d(TAG,"getDisplayLanguage = " + Locale.getDefault().getDisplayLanguage());
Log.d(TAG,"getLanguage = " + Locale.getDefault().getLanguage());
Log.d(TAG,"Resources.getLanguage = " + Resources.getSystem().getConfiguration().locale.getLanguage());
Log.d(TAG,"getResources.getLanguage = " + getResources().getConfiguration().locale);
日志显示如下:
getDisplayLanguage = English
getLanguage = en
Resources.getLanguage = en
getResources.getLanguage = en_GB
它没有显示
Local.UK
。我错过了什么吗?
最佳答案
根据Is en_UK an illegal locale?中的答案
正确的国家/地区代码为en_GB。语言环境将ISO 3166-1用于国家/地区代码。维基百科的文章包括:
那不是我的答案,而是链接文章中的答案。以防万一某个时候链接的答案不可用。