IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

AlertDialog affiché dans une autre Activity


Sujet :

Android

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut AlertDialog affiché dans une autre Activity
    Bonjour,

    Je viens tout juste de m'apercevoir d'un petit problème avec un de mes AlertDialog.

    Pour schématiser le problème, il y a deux activity et une AsyncTask.
    A sa création, Activity1 lance une AsyncTask qui affichera un AlertDialog dans le onPostExecute.
    Dans certains cas, il est possible que Activity1 lance Activity2 juste après avoir lancé l'AsyncTask (qui n'est pas terminée).
    Le problème, c'est que l'AlertDialog va "s'afficher" dans l'Activity1 alors qu'on est dans l'Activity2 et, lorsque je retourne sur l'activity1 (finish sur Activity2), l'AlertDialog "essaye" de s'afficher : l'écran s'assombrit mais l'alert ne s'affiche pas. Impossible donc de fermer le dialog ou de faire autre chose, à moins d'appuyer sur le bouton "back" du téléphone mais ce n'est pas acceptable pour l'utilisateur.


    Méthode utilisée pour afficher un AlertDialog :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    	public static void displayNeutralDialog(Context context, String titre, String message, String boutonName)
    	{
    		AlertDialog.Builder builder = new AlertDialog.Builder(context);
            if (titre != null) { builder.setTitle(titre); }
            if (message != null) { builder.setMessage(message); }
     
     
            builder.setNeutralButton(boutonName, new DialogInterface.OnClickListener() 
            {
                public void onClick(DialogInterface dialog, int which) 
                {
                	dialog.cancel();
                }
            });
     
     
            builder.show();
    	}
    Et voici un exemple d'appel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    StaticTools.displayNeutralDialog(this.context, R.string.common_dialog_error, this.msgError, R.string.common_dialog_close);

    Existe t'il un moyen pour éviter ce problème ?
    Merci d'avance.

  2. #2
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Dans certains cas, il est possible que Activity1 lance Activity2 juste après avoir lancé l'AsyncTask (qui n'est pas terminée).
    Le problème, c'est que l'AlertDialog va "s'afficher" dans l'Activity1 alors qu'on est dans l'Activity2 et, lorsque je retourne sur l'activity1 (finish sur Activity2), l'AlertDialog "essaye" de s'afficher : l'écran s'assombrit mais l'alert ne s'affiche pas. Impossible donc de fermer le dialog ou de faire autre chose, à moins d'appuyer sur le bouton "back" du téléphone mais ce n'est pas acceptable pour l'utilisateur.
    Bonjour,

    je ne comprends pas trop ton problème pourquoi lors de ton lancement de tonActivity 2, ne pas tout simplement faire un dismiss() sur ton dialogue pour le forcer à se fermer.
    Et là sur le retour de ton Activity 1 tu n'aura plus ce problème.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 10/05/2008, 02h12
  2. Réponses: 9
    Dernier message: 30/03/2008, 20h30
  3. afficher dans une autre frame
    Par lrgtk dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 18/02/2008, 09h38
  4. Choix multiple à afficher dans une autre fenêtre
    Par makohsarah dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/07/2007, 11h37
  5. Réponses: 2
    Dernier message: 31/05/2007, 11h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo