syrl Posté(e) 11 février 2015 Share Posté(e) 11 février 2015 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 :) 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 More sharing options...
Ecrou Posté(e) 11 février 2015 Share Posté(e) 11 février 2015 Dans le manifest, tu peux changer le theme opur avoir quelque chose de plus visible. http://developer.android.com/guide/topics/ui/themes.html Lien vers le commentaire Partager sur d’autres sites More sharing options...
syrl Posté(e) 12 février 2015 Auteur Share Posté(e) 12 février 2015 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 More sharing options...
syrl Posté(e) 13 février 2015 Auteur Share Posté(e) 13 février 2015 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 More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.