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 :

Récupération d'items de type ListView dans un dialog


Sujet :

Composants graphiques Android

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Récupération d'items de type ListView dans un dialog
    Bonjour à tous et merci d'avance pour la lecture,

    Je débute en programmation sous Androïd et j'aurais besoin de votre aide.

    Voici mon fichier comme il est pour l'instant :

    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    package denis.android;
     
    import android.app.Activity;
    import android.app.AlertDialog;
    import android.app.Dialog;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.ArrayAdapter;
    import android.widget.ListView;
     
    public class ApplicationPortfolioActivity extends Activity implements OnClickListener {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
     
            findViewById(R.id.btn_menu_principal).setOnClickListener(this);
     
            findViewById(R.id.btn_menu_web_id).setOnClickListener(this);
            findViewById(R.id.btn_menu_graphisme_id).setOnClickListener(this);
            findViewById(R.id.btn_menu_mobile_id).setOnClickListener(this);
            findViewById(R.id.btn_menu_architecture_id).setOnClickListener(this);       
        }
     
    	public void onClick(View v) {
    		switch(v.getId()) {
    		case R.id.btn_menu_principal:
     
    			AlertDialog.Builder builder = new AlertDialog.Builder(this);
     
    			ListView menuList = new ListView(this);
    			String[] stringArray = new String[] { "Mon site web", "Mon CV", "Me contacter" };
    			ArrayAdapter<String> modeAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, stringArray);
    			menuList.setAdapter(modeAdapter);
     
    			builder.setView(menuList);
    			final Dialog dialog = builder.create();		
     
    			dialog.show();
     
    			break;		
    		}		
    	}	
    }
    Ma question est la suivante : comment dois-je m'y prendre pour écouter sur quel élément de la ListView (Mon site web ou Mon CV ou Me contacter) l'utilisateur appuie et alors lancer une action ?

    Voici un petit screen pour peut-être mieux comprendre :

    http://www.deniscastro.com/upload/im...xplication.jpg


    J'ai voulu essayer avec la méthode :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    protected void onListItemClick(ListView l, View v, int position, long id) {
    		switch (position) {
    		case 0:
    			Intent intent1 = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.deniscastro.com"));
    			startActivity(intent1);
    			break;
                    }
    }
    mais en vain, Eclipse me disant que void n'est pas un type valide. Je suis ouvert aussi à une autre proposition qu'un ListView du moment que le principe reste là au final.

    Merci et j'espère que mes explications sont compréhensibles.

  2. #2
    Membre extrêmement actif
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    9 605
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 9 605
    Points : 18 523
    Points
    18 523
    Par défaut
    Sur ta ListView menuList tu peux mettre un OnItemClickListener :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    menuList.setOnItemClickListener(new OnItemClickListener(){
              onItemClick(AdapterView<?> parent, View view, int position, long id){
     
              }
         }
    );
    Et voilà lors du click sur une item de ta ListView la méthode est appelé et t'as position et id.
    Keith Flint 1969 - 2019

  3. #3
    Membre habitué Avatar de linked
    Profil pro
    Développeur Android
    Inscrit en
    Mai 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Android

    Informations forums :
    Inscription : Mai 2008
    Messages : 88
    Points : 133
    Points
    133
    Par défaut
    Il faut extends ListActivity (pas Activity) pour utiliser onListItemClick.
    Applications et jeux gratuits sur http://www.kamaxandroid.com

Discussions similaires

  1. [Débutant] Enregistrer les items d'une listview dans un fichier XML
    Par NABZ27 dans le forum C#
    Réponses: 0
    Dernier message: 22/10/2014, 16h37
  2. Evènement clic bouton dans un item d'une ListView
    Par koukou11 dans le forum Composants graphiques
    Réponses: 11
    Dernier message: 12/05/2012, 15h21
  3. Réponses: 5
    Dernier message: 20/07/2011, 17h58
  4. [XL-2007] Récupération de données de type CLOB dans une base Oracle
    Par SlySylvain dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/09/2010, 17h33
  5. Récupération d'un Content Type dans un ItemAdding
    Par Liham dans le forum SharePoint
    Réponses: 7
    Dernier message: 27/03/2008, 11h59

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