我在自己的应用程序设置中更改语言。如何在设置激活中直接加载新语言。
我找到解决方案去做其他活动,而不是改变语言。我早点想要它
我更改语言的代码:
SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
String language =SP.getString("language", "en");
android.content.res.Configuration config = new android.content.res.Configuration();
config.locale = new Locale(language);
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());
我的onConfigurationChanged方法:
@Override
public void onConfigurationChanged(Configuration locale) {
super.onConfigurationChanged(locale);
Toast.makeText(settings.this, "test", Toast.LENGTH_SHORT).show();
SharedPreferences SP = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
String language =SP.getString("language", "en");
android.content.res.Configuration config = new android.content.res.Configuration();
config.locale = new Locale(language);
getBaseContext().getResources().updateConfiguration(config, getBaseContext().getResources().getDisplayMetrics());