12

J'ai commencé à utiliser ActionBar avec la bibliothèque AppCompat. Mais toute action que j'ajoute à cela, apparaît dans le menu overflow. Je suis sûr que j'ai sauté quelque chose, mais je ne sais pas du tout. Voici mon fichier de menu:ActionBarCompat affiche toutes les actions du menu de débordement

<menu xmlns:android="http://schemas.android.com/apk/res/android" > 

    <item 
     android:id="@+id/connect_plus" 
     android:icon="@drawable/ic_google_plus" 
     android:title="Connect to Google+" 
     android:showAsAction="always" 
     android:titleCondensed="Connect to Google+"> 
    </item> 

</menu> 

Et toute configuration dans la méthode onCreate d'une activité allant de ActionBarActivity:

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
getSupportActionBar().setHomeButtonEnabled(true); 

Ai-je raté quelque chose?

Répondre

25

Ai-je raté quelque chose?

Oui.

Vous devez utiliser votre propre espace de noms:

<menu 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:yourapp="http://schemas.android.com/apk/res-auto" > 

    <item 
     android:id="@+id/connect_plus" 
     android:icon="@drawable/ic_google_plus" 
     android:title="Connect to Google+" 
     yourapp:showAsAction="always" 
     android:titleCondensed="Connect to Google+"> 
    </item> 

</menu> 

comme il est indiqué dans the documentation.

+0

Ohhh super. Ça a marché. Merci! – Korcholis

+0

J'utilise ActionBarCompat Library, et j'ajoute un menu comme celui-ci via le code java. @Override \t public boolean onCreateOptionsMenu (menu Menu) {// \t \t TODO méthode généré automatiquement bouchonner \t \t menu.add (0, 1, 1, "Recherche"). SetIcon (R.drawable.search_icon) \t \t return super.onCreateOptionsMenu (menu); \t} Comment ajouter un espace de noms par programmation lors de l'ajout d'un menu comme celui-ci? –

+1

@BhargavVasani: Vous ne traitez pas l'espace de noms. Vous devez toutefois utiliser 'MenuItemCompat' pour accéder à des choses comme' setShowAsAction() ': http://developer.android.com/reference/android/support/v4/view/MenuItemCompat.html#setShowAsAction%28android.view .MenuItem,% 20int% 29 – CommonsWare

Questions connexes