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 :

Problème sur ListView


Sujet :

Composants graphiques Android

  1. #1
    Membre du Club
    Homme Profil pro
    Developpeur Android
    Inscrit en
    Juin 2012
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Developpeur Android
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2012
    Messages : 65
    Points : 57
    Points
    57
    Par défaut Problème sur ListView
    Bonjour, voici ma question.

    Je dois présenter ces informations dans une ListView :



    Comme vous pouvez le voir (j'espère), il y a 4 informations par item de ma listview :
    - Titre
    - Heure de début
    - Heure de fin
    - Lieu


    Avec une listview tiré d'un tuto, j'arrive a obtenir ceci :



    La listview est sur fond bleu.
    Je n'arrive qu'a afficher les 2 premières info, je pense que cela vient du Layout de ma listview (ou de l'adapter).

    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
    mList = (ListView)findViewById(R.id.activiteJour);
     
     
    		 String[][] repertoire = new String[][]{
    			      {"Séance Aquagym", "Heure de début : " + hd, "Heure de fin : " + hd, "Lieu" + l},
    			      {"Rendez vous Dr Rouillet", "Heure de début : " + hd, "Heure de fin : " + hd, "Lieu" + l},
    			      {"Visio Julie", "Heure de début : " + hd, "Heure de fin : " + hd, "Lieu" + l}};
     
    		 List<HashMap<String, String>> liste = new ArrayList<HashMap<String, String>>();
    		 HashMap<String, String> element;
     
    		 for(int i = 0 ; i < repertoire.length ; i++) {
    		      element = new HashMap<String, String>();
    		      element.put("text1", repertoire[i][0]);
    		      element.put("text2", repertoire[i][1]);
    		      liste.add(element);
    		    }
     
    		 ListAdapter adapter = new SimpleAdapter(this, liste, android.R.layout.simple_list_item_2, new String[] {"text1", "text2"}, new int[] {android.R.id.text1, android.R.id.text2 });
    		 mList.setAdapter(adapter);
    Je vous remercie de répondre à cette question difficile pour un débutant

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Points : 968
    Points
    968
    Par défaut
    Si tu veux complètement customiser ta listview, il faut utiliser ton propre BaseAdapter.
    Créé une classe qui hérite (extends) de BaseAdapter, et redéfini les méthodes nécessaires.

  3. #3
    Membre du Club
    Homme Profil pro
    Developpeur Android
    Inscrit en
    Juin 2012
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Developpeur Android
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2012
    Messages : 65
    Points : 57
    Points
    57
    Par défaut
    Il n'est donc juste pas possible d'afficher 4 info dans cet adapter ?

    EDIT : C'est bon, j'ai fait comme tu ma conseiller, avec mon propre adapter
    Pour ce que ça intéresse, un tuto youtube sur le principe :

    [ame="http://www.youtube.com/watch?v=iJl1wpptl3A"]Android - How to create and use a Custom ListView Adapter - YouTube[/ame]

  4. #4
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    70
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2013
    Messages : 70
    Points : 113
    Points
    113
    Par défaut
    Citation Envoyé par winchester Voir le message
    Il n'est donc juste pas possible d'afficher 4 info dans cet adapter ?
    si, il suffit d'utiliser son propre fichier xml dans le simple adapter au lieu de ceux fournis par android (Avec le nombre de View que tu désires)

    dans ton Hashmap tu lui donnes tes 4elements
    dans ton tableau de String le nom de tes éléments dans ton Hashmap
    dans ton tableau de ressource (int) les id de tes View qui vont contenir tes élément

    et ton simple adapter fini avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    new SimpleAdapter(this, liste, R.layout.tonconteneur, new String[] {"text1", "text2", "text3", "text4"}, new int[] {R.id.text1, R.id.text2, R.id.text3, R.id.text4});

Discussions similaires

  1. Problème sur ListView pour récupérer le texte d'un item ?
    Par spl-concept dans le forum Composants graphiques
    Réponses: 4
    Dernier message: 28/07/2014, 13h45
  2. Problème KeyListener sur Listview
    Par Armakorhall dans le forum Composants graphiques
    Réponses: 6
    Dernier message: 02/05/2013, 16h11
  3. Problème d'affichage des données sur listView
    Par af.zakaria dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 17/08/2012, 03h15
  4. [débutant]Problème de tri sur ListView : IComparer
    Par TomDuBouchon dans le forum Windows Forms
    Réponses: 5
    Dernier message: 01/09/2009, 10h36
  5. [c# 2.0] Problème performance sur "listview" type outlook
    Par 2020 dans le forum Windows Forms
    Réponses: 9
    Dernier message: 23/10/2007, 15h39

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