Aller au contenu

Rafraichissement menu quand changement de langue O.o


Chemical

Recommended Posts

Salut les gars,

Voila j'ai un petit soucis, j'ai une application dans laquel je peux forcer la langue d'affichage.

En gros je fait un truc du style :


Locale n= Locale.getDefault();
String loc=n.getDisplayLanguage();
Resources res = getResources();
Configuration cfg = res.getConfiguration();

switch(langue)
{
  case 'f':
     cfg.locale=Locale.FRANCE;
  break;
  case 'e':
     cfg.locale=Locale.ENGLISH;
  break;
  default:
        cfg.locale=Locale.ENGLISH;
  break;
}

res.updateConfiguration(cfg, res.getDisplayMetrics());

       setContentView(R.layout.main);

Jusque la tout ca bien.

Disons que de base la langue est en francais l'UI est en francais, j'appuis sur la touche "menu" le menu s'affiche donc en francais.

Maintenant je vais dans "settings" et je force la langue en Anglais. J'appuis sur save, qui me fait revenir dans mon activité principale, jsque ici tout va bien mon UI est passée en Anglais... Cependant, lorsque j'appuis sur la touche MENU, celui-ci reste en FRANCAIS....

Pourtant si maiintenant je ternime mon application (appuis sur Home, Back, ou kill avec un taskiller) et que je la relance alors l'UI est en anglais et le menu aussi...

Je comprends pas pourquoi....

Quelqu'un comprend ?

Merci

Lien vers le commentaire
Partager sur d’autres sites

Voir les différences entre onCreate / onPrepare :

http://d.android.com/reference/android/app/Activity.html#onCreateOptionsMenu(android.view.Menu)

Si tes libellés sont créés dans la méthode onCreateOptionsMenu, ils ne sont instanciés qu'une fois dans le cycle de vie de ton Activity. Si tu les positionnes plutôt dans le onPrepareOptionsMenu, tu peux les modifier à chaque affichage du menu.

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...