2016-10-17 44 views
0

这里是菜单xml文件。操作项的图标未显示

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    tools:context=".MainActivity"> 

    <item android:id="@+id/action_create_order" 
     android:title="@string/action_create_order" 
     android:icon="@mipmap/ic_shopping_cart_black_36dp" 
     android:orderInCategory="1" 
     app:showAsAction="ifRoom" /> 

    <item android:id="@+id/action_share" 
     android:title="@string/action_share" 
     android:orderInCategory="2" 
     app:showAsAction="ifRoom" 
     android:actionProviderClass="android.widget.ShareActionProvider" /> 

    <item android:id="@+id/action_settings" 
     android:title="@string/action_settings" 
     android:orderInCategory="100" 
     app:showAsAction="never" /> 
</menu> 

这里是我的onCreateOptionsMenu(Menu menu)方法

@Override 
     public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.main_menu, menu); 
     MenuItem menuItem = menu.findItem(R.id.action_share); 
     shareActionProvider = (ShareActionProvider) menuItem.getActionProvider(); 
     setIntent("This is example text"); 
     return super.onCreateOptionsMenu(menu); 
    } 

我已经使用xmlns:app="http://schemas.android.com/apk/res-auto"app:showAsAction但它仍然没有显示出于某种原因的图标。

我的项目有一个appcompat.v7依赖项。 任何人都可以帮助我吗?

+0

您是否在Activity中创建了OnOptionCreate()方法? – sushildlh

+0

你在'OnCreate()'方法中设置了'setHasOptionMenu(true)'吗? – Jibbo

+0

@sushildlh是的,我已经创建了方法,但它仍然无法正常工作 – Buddy

回答

0

您可以动态地将按钮等添加到默认的操作栏。 in onCreateOptionsMenu添加以下代码以添加项目。

MenuItem aBarItem= menu.add(0,1,0,"Save"); 
    aBarItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); 
aBarItem.setIcon(//Drawable icon//); 

然后只需将onclicklistener添加到此菜单项以使其工作。 我希望这有助于

+0

其实我更喜欢在xml中做到这一点,但我会在最后的手段尝试这个,谢谢 – Buddy