Menu avec icon
lamouchetsetse
Messages postés
112
Date d'inscription
Statut
Membre
Dernière intervention
-
lamouchetsetse Messages postés 112 Date d'inscription Statut Membre Dernière intervention -
lamouchetsetse Messages postés 112 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous, je cherche en vain à créer un menu avec des icons.
voici ce que j'ai fais:
petite précision, les icon qui sont dans /drawable sont des vector mais ça ne change rien si je prend une image png.
en faisant comment ça, je que j’obtiens, c'est un menu uniquement avec les titre. Or, j'aimerais avoir une icon en plus à gauche des titres.
Merci à ceux qui pourrons m'aider.
voici ce que j'ai fais:
<?xml version="1.0" encoding="utf-8"?> <androidx.appcompat.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/barre_a_outil" android:minHeight="?attr/actionBarSize" android:background="#DC0202"/>
<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/menu_journee" android:title="Journées" android:icon="@drawable/icon_journee"> </item> <item android:id="@+id/menu_chercher" android:title="Chercher" android:icon="@drawable/icon_chercher"> </item> <item android:id="@+id/menu_galerie" android:title="Galerie" android:icon="@drawable/icon_galerie"> </item> <item android:id="@+id/menu_parametres" android:title="Paramètres" android:icon="@drawable/icon_parametre"> </item> <item android:id="@+id/menu_exporter" android:title="Exporter" android:icon="@drawable/icon_exporter"> </item> <item android:id="@+id/menu_importer" android:title="Importer" android:icon="@drawable/icon_importer"> </item> </menu>
public class MainActivity extends AppCompatActivity { private LinearLayout activity_main; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); activity_main = (LinearLayout) LayoutInflater.from(this).inflate(R.layout.activity_main, null); recuperer_la_barre_a_outil(); setContentView(activity_main); } /** * On ajoute le menu à la barre à outil */ @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_barre_a_outil, menu); return true; } /** * On recupere la barre à outil */ private void recuperer_la_barre_a_outil() { Toolbar barre_a_outil = (Toolbar) activity_main.findViewById(R.id.barre_a_outil); setSupportActionBar(barre_a_outil); getSupportActionBar().setTitle(null); // supprime le titre de la barre à outil } /** * Evenements lorsque l'on clic sur un bouton du menu */ @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case R.id.menu_journee: Toast.makeText(this, "Journee", Toast.LENGTH_LONG).show(); return true; case R.id.menu_chercher: Toast.makeText(this, "Chercher", Toast.LENGTH_LONG).show(); return true; case R.id.menu_galerie: Toast.makeText(this, "Galerie", Toast.LENGTH_LONG).show(); return true; case R.id.menu_parametres: Toast.makeText(this, "Parametre", Toast.LENGTH_LONG).show(); return true; case R.id.menu_exporter: Toast.makeText(this, "Exporter", Toast.LENGTH_LONG).show(); return true; case R.id.menu_importer: Toast.makeText(this, "Importer", Toast.LENGTH_LONG).show(); return true; default: return super.onOptionsItemSelected(item); } } }
petite précision, les icon qui sont dans /drawable sont des vector mais ça ne change rien si je prend une image png.
en faisant comment ça, je que j’obtiens, c'est un menu uniquement avec les titre. Or, j'aimerais avoir une icon en plus à gauche des titres.
Merci à ceux qui pourrons m'aider.
Configuration: Linux / Firefox 92.0
A voir également:
- Menu avec icon
- Menu déroulant excel - Guide
- Canon quick menu - Télécharger - Utilitaires
- Windows 11 menu contextuel classique - Guide
- Windows 11 menu démarrer classique - Guide
- Réinitialiser menu démarrer windows 10 - Guide
4 réponses
Hello,
Il faut ajouter l'attribut
Il faut ajouter l'attribut
app:showAsActiondans les items
<menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/menu_journee" android:title="Journées" android:icon="@drawable/icon_journee" app:showAsAction="always"/> </menu>
Merci Bruno, le problème, c'est que ce faisant, j'obtiens bien mon icon qui apparaît à coté des 3 point en haut à droite, mais sans texte comme ceci:

et ce que je voudrais, c'est un resultat comme ceci:


et ce que je voudrais, c'est un resultat comme ceci:

Malheureusement, ça ne fonctionna pas non plus. en fait avec le paramètre "app:showAsAction"
soit j'ai mon icon en dehors de mon menu à coté des 3 point en haut à droite, soit j'ai que le texte dans la bulle qui apparaît lorsque l'on click sur le 3 point en haut à droite
je vais essayer de façon programmatique pour voir
soit j'ai mon icon en dehors de mon menu à coté des 3 point en haut à droite, soit j'ai que le texte dans la bulle qui apparaît lorsque l'on click sur le 3 point en haut à droite
je vais essayer de façon programmatique pour voir