2013-11-27 59 views
0

我正在開發一個帶有ActionBarCompat(由google發佈)的Android應用程序。在平板電腦中,它顯示更多菜單項作爲右上角的下拉菜單(圖1),但在小設備(手機)中,您應該點擊菜單按鈕以查看更多項目(圖2)。在Android右上角下拉菜單中顯示「更多菜單項」ActionBarCompat

enter image description here

enter image description here

有什麼辦法能有像在手機設備平板電腦右上角的下拉菜單嗎?如果是,如何? 謝謝。

回答

3

當然可以!

首先,在res>菜單中創建一個menu.xml。

<menu xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:technicachat="http://schemas.android.com/apk/res-auto" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent"> 

    <item 
     android:id="@+id/dropdown_menu" 
     android:showAsAction="ifRoom" 
     technicachat:showAsAction="ifRoom" 
     android:title="Options" 
     android:icon="@drawable/ic_menu_moreoverflow_normal_holo_light"> 

     <menu> 
      <item 
       android:id="@+id/item1" 
       android:showAsAction="ifRoom" 
       technicachat:showAsAction="ifRoom" 
       android:title="Refresh" 
       android:icon="@drawable/ic_menu_refresh"/> 
     </menu> 
    </item> 
</menu> 

當你點擊下拉菜單按鈕時,第二個菜單下的所有項目都會出現。 你甚至不需要使用onOptionsItemSelected來放下它。

只需照常處理項目選擇。

@Override 
public boolean onOptionsItemSelected(MenuItem item) 
{ 
    switch (item.getItemId()) 
    { 
     case R.id.item1: 
     /*DO STUFF*/ 
    } 

    return super.onOptionsItemSelected(item); 
} 

在你想爲你的apk PNG圖像的情況下,他們是下/你的SDK路徑/平臺/ Android的XX /數據/ RES /和你有繪製,華電國際,MDPI等。例如你需要的是ic_menu_moreoverflow_normal_holo_light。

你在這裏! ;)

+0

btw在xml文件中的「technicachat」是因爲操作欄compat,它是我的軟件包名稱,你必須把你的爲了使它工作。 –