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 :

Modification des paramètres du contenu d'une ListView dynamique


Sujet :

Composants graphiques Android

  1. #1
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut Modification des paramètres du contenu d'une ListView dynamique
    Salut !

    J'ai une ListView que je remplis dynamiquement avec des valeurs que je récupères en base de données, comme ceci :

    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
    public class Consultation extends ListActivity {
            [...]
            public void onCreate( Bundle savedInstanceState ) {
                    db = new BDDAcces( this );
                    db.open();
     
                    [...]
     
                    Cursor c = db.getListeDeChosesEtDAutres();
     
                    if ( c.moveToFirst() )
                    {
                        do {          
                        	// Remplissage d'un ArrayList
                        }
                        while ( c.moveToNext() );
                    }
     
                    this.adapter = new SimpleAdapter(
                    	this,
                    	monArrayListenQuestion,
                    	R.layout.rowdelaliste,
                    	new String[] { "pleindecontenu" },
                    	new int[] { R.id.idsupercoule }
                    );
     
                    setListAdapter( this.adapter );
            }
    }
    Jusque là tout va bien, je n'ai aucun problème.

    Ma liste est composée de TextView dont le code ressemble à :

    Code xml : 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
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:paddingLeft="5px"
         android:paddingRight="5px"
         android:textColor="#7b7b7b"
         android:background="#00000000">
     
         <TextView   
    	    android:id="@+id/idsupercoule"
    	    android:layout_width="wrap_content"
    	    android:layout_height="wrap_content"
         />
     
    </LinearLayout>

    Comment faire, donc, pour modifier, par exemple, la couleur du texte sous condition ?

    J'ai essayé vaguement de tenter des trucs comme parcourir la liste des éléments, mais je ne sais pas quoi en faire :

    (code mis à la suite du setListAdapter() ci-dessus)

    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
    ListViewDeChosesEtDAutres = (ListView) findViewById( android.R.id.list );
     
    for ( int i = 0; i < ListViewDeChosesEtDAutres.getCount() ; i++ ) {
            // Ici je ne sais pas quoi faire et voici les trucs que j'ai essayé et qui ne fonctionnent pas :
     
            /*TextView tx = (TextView) ListViewDeChosesEtDAutres.findViewById( R.id.idsupercoule );*/
     
            /* // Bon là c'est surtout que je sais pas quoi en faire de l'objet :
            Object machin = ListViewDeChosesEtDAutres.getItemAtPosition(i);*/
     
            /* Pareil pour là :
            Object machin = this.adapter.getItem(i);*/
     
     
             /* Maintenant admettons que j'ai réussi à récupérer le TextView de la position i
             ce que je voudrais faire c'est un truc comme :
             if ( tx.toString().equals( "maChaineQuiDeboite" ) ) {
                     tx.setTextColor( 0xff0000 );
             }
     
             mais quand j'avais essayé avec un getChildCount(), bien que ça
             me retourne 0, j'avais accès au TextView mais Eclipse buggait,
             il me demandait de remplacer setTextColor par setHighlightColor
             et quand je le faisais, il me remettait une erreur en me disant
             de remplacer par setTextColor, et ainsi de suite*/
    }
    Une idée ?

    Merci !

  2. #2
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    Salut,

    Tu peux venir personnaliser ton adapter pour y traiter le comportement spécifique de ta liste.
    Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum

  3. #3
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Heuu Et en décrypté ? Désolé je débute dans la programmation Android/Java ...

  4. #4
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Points : 4 240
    Points
    4 240
    Par défaut
    As-tu jeté un coup d'oeil par ici : http://mickael-lt.developpez.com/tut...iser-listview/
    Tu y trouveras un descriptif plus détaillé sur la notion de liste et d'adapter.
    Si tu as toujours des points bloquants, n'hésites pas à compléter ta demande ici.
    Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum

  5. #5
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 868
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 868
    Points : 16 258
    Points
    16 258
    Par défaut
    Merci, ça fonctionne nickel. J'avais trouvé le tuto, mais j'étais resté sur mon idée primaire de l'utilisation d'un SimpleAdapter, un setListAdapter et une ListActivity ..
    J'ai quelque peu modifié le code proposé dans la personnalisation pour modifier la couleur d'un texte donné et non pas la couleur de fond du layout.

    Merci pour ton aide en tout cas.

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

Discussions similaires

  1. [Débutant] Afficher le contenu d'une listview dans des textbox
    Par Martipit dans le forum VB.NET
    Réponses: 1
    Dernier message: 06/04/2013, 15h01
  2. [Batch] Modification des paramètres d'entrée dans une boucle FOR
    Par reppier dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 15/06/2009, 15h23
  3. Réponses: 0
    Dernier message: 24/07/2007, 13h22
  4. Modification des paramètres régionaux et folders options
    Par Looping_V60 dans le forum Access
    Réponses: 1
    Dernier message: 07/06/2006, 19h02
  5. [Débutant]Comment lire le contenu d'une Listview ?
    Par PierreBord dans le forum Composants VCL
    Réponses: 2
    Dernier message: 13/02/2006, 16h40

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