Aller au contenu

Menu écrit en blanc sur blanc


Recommended Posts

Bonjour à tous !

Je suis actuellement confronté à un problème : lorsque je crée un menu, puis que j'ouvre un sous-menu de ce menu, la liste d'items, est écrite en blanc sur blanc, donc illisible :s

J'avais déjà eut ce problème, pour créer une liste personnalisée avec un adaptateur, et j'avais résolu le problème en changeant "getApplicationContext" par "this" lors de la création de l'adaptateur (cela est impossible ici...).

Pouvez-vous m'aider ?

Merci d'avance,

Syrl :)

 

Menu%20blanc%20sur%20blanc.jpeg

 

Code XML (menu_perso.xml) :

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
 
    <item android:id="@+id/item1" android:title="Item 1"></item>
    <item android:id="@+id/item2" android:titleCondensed="Item 2" android:title="Item 2 mais avec un nom assez long quand même">
 
        <menu>
 
            <item android:id="@+id/item3" android:title="Item 2.1" android:checkable="true"/>
            <item android:id="@+id/item4" android:title="Item 2.2"/>
 
        </menu>
 
    </item>
 
    <item android:id="@+id/item5" android:title="Item 3" android:checkable="true"/>
 
    <item android:id="@+id/item6" android:title="Item 4">
 
        <group android:id="@+id/group1" android:checkableBehavior="all">
            <item android:id="@+id/item7" android:title="Item 4.1"></item>
            <item android:id="@+id/item8" android:title="Item 4.2"></item>
        </group>
 
    </item>
 
    <group android:id="@+id/group2" android:enabled="false">
        <item android:id="@+id/item9" android:title="Item 5.1"></item>
        <item android:id="@+id/item10" android:title="Item 5.2"></item>
    </group>
 
</menu>

Code où on déserialise le XML :

@[member=override]
public boolean onCreateOptionsMenu(Menu menu)
{
    getMenuInflater().inflate(R.menu.menu_perso, menu);
 
    return true;
}
Lien vers le commentaire
Partager sur d’autres sites

D'accord, merci !

Mais est-ce normal que ce ne soit pas automatique ? (J'ai trouvé très peu de problèmes similaires au mien...)

De plus, quel thème dois-je appliquer, et comment, pour que ce soit valable uniquement pour un sous-menu ?

Merci !

Syrl

Lien vers le commentaire
Partager sur d’autres sites

Un p'tit up ? :)

 

[EDIT]

 

J'ai finalement trouvé une solution :

@[member=override]
public boolean onCreateOptionsMenu(Menu menu)
{
    getMenuInflater().inflate(R.menu.menu_main, menu);

    SubMenu sm = menu.findItem(R.id.item2).getSubMenu();

    for(int i = 0 ; i < sm.size() ; i++)
    {
        MenuItem item = sm.getItem(i);

        SpannableString s = new SpannableString(item.getTitle());
        s.setSpan(new ForegroundColorSpan(Color.DKGRAY), 0, s.length(), 0);
        item.setTitle(s);
    }

    return true;
}

Seulement, je trouve vraiment bizarre qu'on ait besoin de faire cela, alors que c'est normalement le XML qui est censé définir l'apparence de l'application. Et c'est encore plus bizarre de mettre un menu blanc sur blanc par défaut...

 

Si quelqu'un a une meilleure solution, peut-il se manifester ?

 

Merci,

Syrl :)

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...