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 :

Couleur selection item navigation drawer


Sujet :

Composants graphiques Android

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 83
    Points : 51
    Points
    51
    Par défaut Couleur selection item navigation drawer
    Bonjour à tous,
    Je galère pour un truc qui doit surement être toute bête...

    Pour une application j'ai utilisé un navigation drawer, par défaut, il semblerait que l'item sélectionné dans le listeview prenne un fond bleu au clique.

    Je souhaite changer ce bleu, mais rien à faire je ne trouve ni où ni comment faire.

    Auriez-vous des pistes ?

    Merci par avance.

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 691
    Points : 20 224
    Points
    20 224
    Par défaut
    Il faut utiliser un selector que tu attribue ensuite aux éléments de ta listeview

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item
            android:state_pressed="true"
            android:drawable="@color/selecteddrawer" />
        <item android:state_selected="true" android:drawable="@color/selecteddrawer" />
        <item android:state_active="true" android:drawable="@color/selecteddrawer" />
    </selector>
    Si tu as utilisé une custom listview , tu as juste à attribuer le selector à ta vue personnalisé pour chaque ligne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     android:background="@drawable/monselector"
    Sinon sur une listview standard tu dois pouvoir l'utiliser en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    android:listSelector="@drawable/monselector"
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé Avatar de Diablo_22
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2005
    Messages
    498
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2005
    Messages : 498
    Points : 490
    Points
    490
    Par défaut
    Bonjour,

    Tu peux utiliser un
    selector
    dans le dossier drawable --> selector.xml:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_pressed="true" 
            android:drawable="@drawable/press" />
        <item  android:state_focused="false" 
            android:drawable="@drawable/normal" />
    </selector>
    dans le dossier drawable --> press.xml:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"> 
        <solid android:color="#FF9D21"/>     
    </shape>
    dans le dossier drawable --> foldernormal.xml:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"> 
        <solid android:color="#8BC7EB"/>    
    </shape>
    Dans le drawer_list_item.xml:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    android:background="@drawable/selector"
    Pour styliser la bar:

    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
     <resources>
     
        <!--
            Base application theme for API 11+. This theme completely replaces
            AppBaseTheme from res/values/styles.xml on API 11+ devices.
        -->
        <style name="AppBaseTheme" parent="android:Theme.Holo.Light">
             <item name="android:background">@style/MyActionBar</item>
            <!-- API 11 theme customizations can go here. -->
        </style>
        <style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar">
            <item name="android:background">@drawable/press</item>
     
        </style>
    </resources>
    Dans ton manifest

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <activity
            android:name=".MainActivity"
              android:theme="@style/MyActionBar"
            android:label="@string/app_name">
    N'oubliez pas la balise

    est ton ami mais quand Google ne trouve pas quelque choses, il demande à Chuck Norris.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 83
    Points : 51
    Points
    51
    Par défaut
    Merci à vous,

    En ajoutant ton code Diablo_22, le fond change de couleur mais pas le surlignage de la ligne.
    Je n'ai pas du le rajouter où il faut.

    fragment_navigation_drawer.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <ListView 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:choiceMode="singleChoice"
        android:divider="@android:color/transparent"
        android:dividerHeight="0dp"
        android:background="@drawable/selector"
        tools:context=".NavigationDrawerFragment"/>

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 83
    Points : 51
    Points
    51
    Par défaut
    Je me demandais s'il n'y avait pas moyen de le faire en passant par la partie java, dans cette partie :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                Bundle savedInstanceState) {
            mDrawerListView = (ListView) inflater.inflate(
                    R.layout.fragment_navigation_drawer, container, false);
            mDrawerListView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                    selectItem(position);
                }
            });

Discussions similaires

  1. [JComboBox] couleur des items
    Par nounetmasque dans le forum Composants
    Réponses: 5
    Dernier message: 17/05/2012, 22h19
  2. ListCrtl couleur des items insérés
    Par benoit70 dans le forum MFC
    Réponses: 2
    Dernier message: 05/03/2008, 16h43
  3. Dropdownlist selection item
    Par blandine555 dans le forum ASP.NET
    Réponses: 14
    Dernier message: 07/08/2007, 10h28
  4. couleur pour item dans popupmenu
    Par boopix dans le forum C++Builder
    Réponses: 4
    Dernier message: 21/08/2006, 21h40
  5. h:selectOneMenu selected item
    Par *alexandre* dans le forum JSF
    Réponses: 2
    Dernier message: 26/07/2006, 14h30

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