11
votes

Changer la couleur de l'élément ListView sélectionné

Je veux modifier la couleur de l'élément de la liste lorsqu'il appuiera

car j'ai fait comme ci-dessous, P>

list_item_selector.xml h2> xxx pré>

J'ai défini la couleur dans couleurs.xml comme ci-dessous, p> xxx pré>

et dans mon listview code> J'ai écrit comme ça, P>

<ListView
            android:id="@+id/list_centers_complete"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" 
            android:cacheColorHint="@android:color/transparent"
            android:listSelector="@drawable/list_item_selector" />


1 commentaires

Vous utilisez personnalisé listeView? Android: listelector tag de votre listview .


5 Réponses :


3
votes

Vous devez définir le sélecteur vers la ligne et non la liste de liste elle-même.


2 commentaires

Mais Android: ListSelector - Ceci est disponible. Cela signifie que nous sommes réglés à la ligne


Votre problème est en fait discuté ici Stackoverflow.com/ Questions / 2183447 / ...



29
votes

Appliquer "@ drawable / list_item_selector" à la ligne de cette liste (élément de la liste) pas une liste elle-même ..

Quelque chose comme, votre élément de liste ( Liste des lignes)


5 commentaires

Ma chaque Itatam se compose de 3 TextViews alors où je vais mettre cela cela? dans linearlayout ??


créer une mise en page linéaire. Nidez toutes les trois vues de texte à l'intérieur de cette mise en page linéaire, puis définissez le sélecteur sur votre disposition linéaire.


comme un arrière-plan? comme Android: fond = "@ drapable / list_item_selector" ??


Android: Diable = "# FF6666666" Cela affichera ERR c'est pourquoi j'ai mis en couleur.xml


@ user370305 pouvez-vous m'aider sur ce Stackoverflow.com/questions/18099756/...



-2
votes

Utilisez ce

android:background="@drawable/list_item_selector""


0 commentaires

1
votes

xxx


0 commentaires

1
votes

Essayez avec un adaptateur personnalisé Cela vous aide également à contrôler pleinement vos articles et à définir un élément par défaut sélectionné; ListView XML et élément XML n'ont pas de configuration spéciale.

            ListView listView = (ListView) findViewById(R.id.list_view);
            ListAdapter adapter = new ListAdapter(mContext, R.layout.item_layout, list);
            listView.setAdapter(adapter);
            adapter.selectItem(0); // Default selected item

            // Get selected item and update its background
            listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
                    adapter.selectItem(position);
                }
            });


0 commentaires