2016-04-15 47 views
0

我希望菜單項顯示在操作欄上。 ActionBar上有很多空間,但仍然沒有顯示出來。每個項目顯示爲三個點,爲什麼?如何在操作欄中顯示菜單項?

java文件

public class GalleryActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.gallery_layout); 
    } 

    public boolean onCreateOptionsMenu(Menu menu) { 
     MenuInflater inflater = getMenuInflater(); 
     inflater.inflate(R.menu.main_menu, menu); 
     return true; 
    } 
} 

.xml文件

<?xml version="1.0" encoding="utf-8"?> 
    <menu xmlns:android="http://schemas.android.com/apk/res/android" 
      xmlns:MissionAndroid="http://schemas.android.com/tools"> 

     <item 
      android:id="@+id/facebookId" 
      android:title="facebook" 
      android:icon="@drawable/facebook" 
      MissionAndroid:showAsAction="always"/> 

     <item 
      android:id="@+id/shareId" 
      android:title="share" 
      android:icon="@drawable/share" 
      MissionAndroid:showAsAction="always"/> 

     <item 
      android:id="@+id/delete" 
      android:title="delete" 
      android:icon="@drawable/delete" 
      MissionAndroid:showAsAction="always"/> 

     <item 
      android:id="@+id/searchId" 
      android:title="search" 
      android:icon="@drawable/search" 
      MissionAndroid:showAsAction="ifRoom"/> 
    </menu> 

回答

2

目前,您正在使用"http://schemas.android.com/tools"不提供你正在尋找和你showAsAction修飾符被忽略的功能。

嘗試用下面的更新main_menu.xml:

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

    ... 

</menu> 

更重要的是,按照慣例,在這個文件與app替換MissionAndroid

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

    <item 
     android:id="@+id/facebookId" 
     android:title="facebook" 
     android:icon="@drawable/facebook" 
     app:showAsAction="always"/> 

    ... 

</menu> 
+0

感謝兄弟及其工作 –