以编程方式在DroidX(2.1 Update 1)上更改语言环境不起作用?

时间:2010-09-10 19:46:19

标签: android locale

我正在尝试在Android上以编程方式更改语言环境。我在下面的代码在Incredible(2.2)和Droid(2.2)上运行良好。但是,它不在DroidX(2.1 Update 1)

这里的任何人都遇到过类似的问题吗?任何见解都会有所帮助。

public void overrideLocale(String languageToLoad) { 
    Locale locale = new Locale(languageToLoad);
    Locale.setDefault(locale);
    Configuration config = new Configuration();
    config.locale = locale; 

    getBaseContext().getResources().updateConfiguration(config, null);

    Intent intent = new Intent(this, ActivityB.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(intent); 
}

2 个答案:

答案 0 :(得分:2)

尝试:

Locale locale = new Locale(languageToLoad);
Locale.setDefault(locale);
Configuration config = getBaseContext().getResources().getConfiguration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config,getBaseContext().getResources().getDisplayMetrics());

答案 1 :(得分:0)

这对Droid-X不起作用,非常难过 - 它不允许从应用程序内部更改语言环境。