Смена языка программно на DroidX (2.1, обновление 1) не работает? - PullRequest
0 голосов
/ 10 сентября 2010

Я пытаюсь программно изменить локаль на Android.Приведенный ниже код отлично работает на Incredible (2.2) и Droid (2.2).Однако, это не на DroidX (2.1 обновление 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 ]

2 голосов
/ 22 июля 2011

Попробуйте:

Locale locale = new Locale(languageToLoad);
Locale.setDefault(locale);
Configuration config = getBaseContext().getResources().getConfiguration();
config.locale = locale;
getBaseContext().getResources().updateConfiguration(config,getBaseContext().getResources().getDisplayMetrics());
0 голосов
/ 18 сентября 2010

Это просто не работает для Droid-X, очень печально - оно не позволяет менять локаль из приложения.

...