我正在这样更改应用程序定位,
Language language = getPreferenceAppLanguage();
if (language == null) {
return;
}
Locale locale = createLocale(language);
Locale.setDefault(locale);
Resources res = mContext.getResources();
Configuration config = new Configuration(res.getConfiguration());
if (Build.VERSION.SDK_INT >= 17) {
config.setLocale(locale);
mContext.createConfigurationContext(config);
} else {
config.locale = locale;
res.updateConfiguration(config, res.getDisplayMetrics());
}
res.updateConfiguration(config, res.getDisplayMetrics());
在所有其他设备上都可以正常工作,但是在oneplus和huawei中,当我更改语言并再次启动应用程序时,所有资源都仅设置为英语语言环境。有人对此有解决办法吗?
重新启动活动时不会发生这种情况,只有在关闭应用程序并重新启动时才会发生