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

Composants graphiques Android Discussion :

Bouton d'alert dialog


Sujet :

Composants graphiques Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Etudiante
    Inscrit en
    Juillet 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Juillet 2010
    Messages : 164
    Par défaut Bouton d'alert dialog
    Bonjour,

    Je veux onClick() sur le bouton qui se trouve dans l'alert dialog, l'alert dialog ne se ferme pas. J'ai utilisé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    adb.setCancelable(false);
    . Mais l'alert dialog se ferme toujours.
    Comment je peux le faire?

  2. #2
    Membre très actif
    Homme Profil pro
    Ingénieur Informatique et Développeur Android
    Inscrit en
    Janvier 2010
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur Informatique et Développeur Android

    Informations forums :
    Inscription : Janvier 2010
    Messages : 384
    Par défaut
    je veux vous donnez deux type d'alert dialogue :
    1ère: exemple si vous voulez lorsque vous cliqué sur validé et vous voulez qu'il apparaisse un message "authentification valide" . voilà le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public AlertDialog.Builder ad ;
            ad = new AlertDialog.Builder(this);
    puis dans le code de l'evenement de  button tu met  ad.setMessage("votre msg");
    ad.show();
    2ème: si vous voulez entrer un string à partir de alertdialog . tu déclares un fichier dans le layout :
    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
    19
    20
    21
    22
    23
    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout
      xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:padding="15dip"
     
      >
     
      <TextView
        android:id="@+id/TextView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Entrer quelque chose ci-dessous :"
        android:paddingBottom="10dip" />
     
      <EditText 
        android:id="@+id/EditText1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/TextView1"  />
     
    </RelativeLayout>
    contient un text view et edit text puis dans votre code tu mets
    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
    LayoutInflater factory = LayoutInflater.from(Modification.this);
    			        final View alertDialogView = factory.inflate(R.layout.alertdialog, null);
     
    			        //Création de l'AlertDialog
    			        AlertDialog.Builder adb = new AlertDialog.Builder(Modification.this);
     
    			        //On affecte la vue personnalisé que l'on a crée à notre AlertDialog
    			        adb.setView(alertDialogView);
     
    			        //On donne un titre à l'AlertDialog
    			        adb.setTitle("Entrez le nouveau mot de passe");
     
    			        //On modifie l'icône de l'AlertDialog pour le fun ;)
    			        adb.setIcon(android.R.drawable.ic_dialog_alert);
     adb.setPositiveButton("OK", new DialogInterface.OnClickListener() {.....}
    adb.show() ;

  3. #3
    Membre confirmé
    Femme Profil pro
    Etudiante
    Inscrit en
    Juillet 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Juillet 2010
    Messages : 164
    Par défaut
    merci pour votre explication mais je n'ai pas besoin de faire un alert dialog.
    Je l'ai fait déjà. J'ai un bouton dans l'alert dialog. Je veux si les champs sont vides et en cliquant sur ce bouton alert dialog ne se ferme pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    adb.setNeutralButton("OK", new DialogInterface.OnClickListener() {
    	            public void onClick(DialogInterface dialog, int which) {
    	            	
    	            	
    	        		if (db.recherche(livre)!=null)
    	        		{Toast.makeText(Main.this, "Existant", Toast.LENGTH_LONG).show();
    	        			adb.show();
    	        		}
    	        	
    	        		else{
    	        			            
    	            	Toast.makeText(Main.this, edit.getText(), Toast.LENGTH_SHORT).show();}
    	          } });
    La ligne colorée en jaune me provoque une erreur lors d'exécution c'est pourquoi je veux le remplacer par une autre méthode qui ne ferme pas AlertDalog au click de ce bouton.

  4. #4
    Membre très actif
    Homme Profil pro
    Ingénieur Informatique et Développeur Android
    Inscrit en
    Janvier 2010
    Messages
    384
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur Informatique et Développeur Android

    Informations forums :
    Inscription : Janvier 2010
    Messages : 384
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    adb.setNeutralButton("OK", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) {
     
     
    if (db.recherche(livre)!=null)
    {Toast.makeText(Main.this, "Existant", Toast.LENGTH_LONG).show();
     
    }
     
    else{
     
    Toast.makeText(Main.this, edit.getText(), Toast.LENGTH_SHORT).show();}
    } });
    adb.show();

  5. #5
    Membre confirmé
    Femme Profil pro
    Etudiante
    Inscrit en
    Juillet 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Femme

    Informations professionnelles :
    Activité : Etudiante

    Informations forums :
    Inscription : Juillet 2010
    Messages : 164
    Par défaut
    Vous n'avez pas bien compris mon problème. Je veux que c'est dans cette condition l'alert dialog ne se ferme pas.

  6. #6
    Membre prolifique
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    10 266
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 10 266
    Par défaut
    Bon je ne sais pas comment empêcher le bouton de l'AlertDialog de fermer l'AlertDialog, par contre ton erreur me semble simple, toi t'as écris ça :
    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
     
    adb.setNeutralButton("OK", new DialogInterface.OnClickListener() 
    {
    	public void onClick(DialogInterface dialog, int which) 
    	{
        		if (db.recherche(livre)!=null)
           		{
        			Toast.makeText(Main.this, "Existant", Toast.LENGTH_LONG).show();
            		adb.show();
        		}
        		else
        		{
        			Toast.makeText(Main.this, edit.getText(), Toast.LENGTH_SHORT).show();
        		}
    	} 
    });
    Tu mets adb.show() dans la déclaration d'adb.
    Donc forcement ça ne peut pas fonctionner.

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    322
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 322
    Par défaut
    Bonjour,
    Pour fermer une alertDialog il faut généralement mettre dialog.cancel();
    Donc si tu ne le met pas, la fenêtre ne devrait pas se fermer.

    Après si cela ne marche pas, tu pourrais faire en sorte de relancer ton alertDialog quand la condition n'est pas remplie. Mais tu ne peux pas le faire au sein même de ta fonction onClick();


    Est ce que tu utilises la fonction onCreateDialog ? Je l'ai apprise récemment sur ce site et c'est assez pratique http://developer.android.com/guide/t...i/dialogs.html

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

Discussions similaires

  1. erreur dans l'alert dialog
    Par étudiante_info dans le forum Composants graphiques
    Réponses: 1
    Dernier message: 24/05/2011, 19h10
  2. Différent nom bouton dans un dialog
    Par bellouk dans le forum jQuery
    Réponses: 2
    Dernier message: 25/05/2010, 11h15
  3. Enlever le bouton fermer sur dialog
    Par skurty dans le forum jQuery
    Réponses: 2
    Dernier message: 10/05/2010, 09h24
  4. Griser un bouton sur une dialog based
    Par orj30754 dans le forum MFC
    Réponses: 4
    Dernier message: 20/06/2006, 16h08
  5. bouton swing sur dialog : pb : pas d'action
    Par mm2405 dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 12/04/2006, 10h51

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