如何在运行模式下将新语言应用于应用程序

时间:2016-03-01 10:47:48

标签: android

我在自己的应用程序设置中更改语言。如何在设置激活中直接加载新语言。

我找到解决方案去做其他活动,而不是改变语言。我早点想要它

我更改语言的代码:

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());

0 个答案:

没有答案