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 :

Context d'une Dialog box


Sujet :

Composants graphiques Android

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 41
    Points : 24
    Points
    24
    Par défaut Context d'une Dialog box
    Bonjour à tous,

    je bloque sur un petit truc de rien du tout. J'ai une DialogBox, je veux afficher une ListView à l'intérieur. La ListView s'affiche sur l'écran en dessous de la DialogBox.

    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
            lieuButton.setOnClickListener(new OnClickListener() 
            {
    			@Override
    			public void onClick(View v) {
    				//dialog box
    				final Dialog dialoglieu = new Dialog(context);	
    				dialoglieu.setContentView(R.layout.dialoglieu);
    				dialoglieu.setTitle("Selectionnez vos critères");
     
    				final Button valider = (Button) dialoglieu.findViewById(R.id.buttonValider);
     
    				System.out.println("context" + dialoglieu.getContext());
     
    				ListAdapter adapter2 = new SimpleAdapter(dialoglieu.getContext(), listeLieu, R.layout.list_lieu, new String[] {TAG_LISTELIEU}, new int[] {R.id.texteLieu});        
    				setListAdapter(adapter2);
    Je pense qu'il s'agit juste de mettre le bon contesxt dans le SimpleAdapter, mais je n'arrive pas à trouver le context du DialogBox.

    Merci d'avance

  2. #2
    Membre habitué
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 281
    Points : 161
    Points
    161
    Par défaut
    Essaye

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    LeNomDeTonActivity.this
     
    //ou//
     
    GetApplicationContext()
    Conseil : En théorie dans les Listener on ne met pas directement les Adapter , on passe par une méthode static

  3. #3
    Expert éminent

    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
    Points : 9 149
    Points
    9 149
    Par défaut
    Bonjour,


    je bloque sur un petit truc de rien du tout. J'ai une DialogBox, je veux afficher une ListView à l'intérieur. La ListView s'affiche sur l'écran en dessous de la DialogBox.
    Tu pourrais nous montrer le xml de ta dialogue : R.layout.dialoglieu

    De plus c'est quoi cette variable context ?


    Merci.
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 41
    Points : 24
    Points
    24
    Par défaut
    dialoglieu.xml :

    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
    24
    25
    26
    27
    28
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="right"
        android:gravity="center"
        android:visibility="invisible" >
     
     
     
        <ListView
            android:id="@+id/listViewLieu"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="50dp" >
     
        </ListView>
     
     
            <Button
                android:id="@+id/buttonValider"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"
                android:text="Valider" />
     
    </RelativeLayout>
    Merci pour vos réponses, au final je me suis débrouillé un peu autrement et je n'affiche plus une ListView dans la DialogBox, mais je me sers d'un EditText avec autocompletion !

    Dois-je laisser le sujet ouvert pour continuer à avancer la discussion et pouvoir aider d'autres personnes dans le besoin ?

  5. #5
    Expert éminent

    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
    Points : 9 149
    Points
    9 149
    Par défaut
    On peut laisser ouvert si tu veux .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setListAdapter(adapter2);
    Tu rajoutes ton adpater a ta ListView de ton Activity. Sauf que là tu es dans le dialogue.

    Donc récupère plutôt la liste de ton dialogue est fait un SetAdapter() sur la ListView

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    final Dialog dialoglieu = new Dialog(context);	
    				dialoglieu.setContentView(R.layout.dialoglieu);
    				dialoglieu.setTitle("Selectionnez vos critères");
     
    				final Button valider = (Button) dialoglieu.findViewById(R.id.buttonValider);
     
    				System.out.println("context" + dialoglieu.getContext());
                                    ListView liste = (ListView)dialoglieu.findViewbyId(R.id.listViewLieu);
    				ListAdapter adapter2 = new SimpleAdapter(dialoglieu.getContext(), listeLieu, R.layout.list_lieu, new String[] {TAG_LISTELIEU}, new int[] {R.id.texteLieu});        
    				liste.setAdapter(adapter2);
    Voilà
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

Discussions similaires

  1. courbe dans une Dialog Box
    Par danymanix dans le forum MFC
    Réponses: 3
    Dernier message: 15/12/2006, 10h31
  2. Réponses: 9
    Dernier message: 27/07/2006, 14h38
  3. Réponses: 5
    Dernier message: 05/03/2006, 14h39
  4. Réponses: 3
    Dernier message: 22/12/2005, 10h43
  5. Pop-up d'une dialog box a partir d'un bouton
    Par bobbyjack dans le forum MFC
    Réponses: 21
    Dernier message: 13/09/2005, 15h32

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