Lemp Posté(e) 21 février 2010 Share Posté(e) 21 février 2010 bonsoir, rencontrez vous le meme pb dans vos dev : lorsque je suis sur un dialog box et que je bascule d'un affichage a un autre (vertical/horizontal) la dialog box se ferme :( ? comment corriger ? Slts Lemp Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
popolbx Posté(e) 21 février 2010 Share Posté(e) 21 février 2010 bloquer le basculement pendant l'affichage de la dialog ^^ activity.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR); tu mets sensor pour debloquer et le mode actuel pour le verrouiller: perso je fais comme ça: public static void LockScreen(Activity activity){ Display display = ((WindowManager) activity.getSystemService(WINDOW_SERVICE)).getDefaultDisplay(); String model = android.os.Build.MODEL; int orientation = display.getOrientation(); if(model.equals("Archos5")){ activity.setRequestedOrientation(orientation==0?ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE:ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); }else{ activity.setRequestedOrientation(orientation==0?ActivityInfo.SCREEN_ORIENTATION_PORTRAIT:ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); } } avec en cadeau gestion de l'archos 5 qui marche pas à l endroit.... Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Lemp Posté(e) 22 février 2010 Auteur Share Posté(e) 22 février 2010 donc le pb existe , ce n'est pas une erreur de dev de ma part ??? impec merci popolbx :) A+ Lemp Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Antares Posté(e) 22 février 2010 Share Posté(e) 22 février 2010 Bonjour, C'est normal que la dialogbox se ferme. Quand tu changes d'orientation d'écran, l'activity en cours est détruite et reconstruite, donc la dialogbox appartenant à l'activity est elle aussi détruite. Dans l'ordre, tu passes par : OnSaveInstanceState() OnPause() OnStop() OnDestroy() puis par OnCreate() OnStart() OnRestoreInstanceState() et OnResume() Il faut donc sauvegarder les informations temporaires dans le OnSaveInstanceState() et les récupérer dans le OnRestoreInstanceState(). Tu peux donc par exemple positionner un flag à true quand tu affiches la dialogbox, et le remettre à false quand elle se ferme. Puis tu sauve ce flag dans OnSaveInstanceState(), et tu le récupére dans OnRestoreInstanceState(). Dans le OnResume(), si ton flag est à true, tu le remets à false et tu affiches ta dialogbox. Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Lemp Posté(e) 23 février 2010 Auteur Share Posté(e) 23 février 2010 encore merci à vous 2. je vais reflechir pour voir qu'elle solution je vais choisir. Lemp Citer Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Rejoignez la conversation
Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.