Я хочу изменить язык на английский, но он не работает, когда это телефон Android 5.0.2. И это нормально, когда это Android 7.1.1.
Вот мой код:
public static void applyLanguage(Context context, String newLanguage) {
if (StringUtil.isEmpty(newLanguage)) {
return;
}
Resources resources = context.getResources();
Configuration configuration = resources.getConfiguration();
Locale locale = SupportLanguageUtil.getSupportLanguage(newLanguage);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
configuration.setLocale(locale);
createConfigurationResources(context, newLanguage);
} else {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) {
configuration.setLocale(locale);
}else {
configuration.locale = locale;
}
DisplayMetrics dm = resources.getDisplayMetrics();
resources.updateConfiguration(configuration, dm);
}
}
Однако в английской языковой среде по умолчанию я обычно меняю ее на китайский. Это очень странно. Кто-нибудь сталкивался с этой проблемой?