2012-10-23 75 views
2

我的應用程序提供了一個菜單,可以通過單擊Android菜單按鈕來訪問。 由於Google自3.0版以來刪除了硬件菜單按鈕,因此屏幕上會出現一個軟件模擬按鈕(通常爲3個點)以訪問該菜單。Android 4.1.2不顯示菜單按鈕

很多與谷歌Nexus手機用戶現在開始抱怨,因爲他們更新到4.1.2的菜單按鈕不會出現。

下面的代碼:

@Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     menu.add(0, 0, Menu.NONE, this.getString(R.string.setting)); 
     menu.add(0, 1, Menu.NONE, this.getString(R.string.config)); 
     return super.onCreateOptionsMenu(menu); 
    } 

我有什麼改變帶來的按鈕後面還4.1.2?

回答

8

我對平板電腦同樣的問題,現在看來也推廣到手機。唯一的解決辦法是添加一個ActionBar(你會得到然後你自動菜單項)或使android:targetSdkVersion低於11.

+0

我不明白爲什麼按鈕在那裏與4.1。用戶在更新到4.1.2後開始投訴。 – tobias

+0

我認爲谷歌要規範行爲,順便設置機器人:targetSdkVersion =「8」做的工作並帶回了「3點」按鈕 –

+0

谷歌希望擺脫菜單按鈕。從界面的角度來看,我無法強調這個決定有多好。 – Teovald

2

這個問題的正確解決方案是實現一個ActionBar(ActionBarSherlock是如果你要協調你的應用程序的Android防空火炮版本的外觀&感覺一個不錯的選擇):

  • Android 3.0的&優越:沒有菜單按鈕,相應的動作條&溢出菜單訪問選項。
  • 早期版本:使用菜單按鈕訪問相應的操作。
+0

我不想使用ActionBar。那麼唯一的解決方案就是3.0之前的目標版本? – tobias

+0

是的,它應該做的工作 –

+1

但是應該指出,它會導致糟糕的用戶界面。在帶有物理菜單按鈕但沒有主頁按鈕的Android 4.X手機中(再次,這種佈局是Android的發展方向),它會創建一個令人厭惡的黑色樂隊,將該按鈕添加到應用程序中。即使在使用虛擬按鈕的手機中,它也離乾淨的實施還很遙遠。 – Teovald