2014-01-14 72 views
0

我的設備在android:4.1.2上運行,並且有物理硬件菜單按鈕。有三個點的ActionBar溢出菜單沒有顯示

我添加了5個菜單項,當我設置ShowAsAction =「never」時,按下物理硬件菜單按鈕時顯示選項菜單。有沒有什麼方法可以在帶有溢出菜單的操作欄上顯示它們(我的意思是可以看到沒有物理硬件菜單按鈕的設備的三個點),這些設備具有物理硬件菜單按鈕

+0

http://stackoverflow.com/a/20445592/1937802 –

+0

@Tamilselvan它的工作。感謝您的快速回復。 –

+0

好吧,我已經把它作爲答案 –

回答

0

按照Commonsware描述here

try { 
    ViewConfiguration config = ViewConfiguration.get(this); 
    Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey"); 

    if (menuKeyField != null) { 
    menuKeyField.setAccessible(true); 
    menuKeyField.setBoolean(config, false); 
    } 
} 
catch (Exception e) { 
    // presumably, not relevant 
} 

這不應該是需要在Android 4.4或以上版本,但在地方的異常處理,我就不會,如果你運行它期待任何特殊的問題,並有一天,他們擺脫sHasPermanentMenuKey完全。

個人而言,我仍然不會在Android 4.3及更低版本上更改內容,因爲我懷疑這是一個w situation situation situation的情況,您將替換關於沒有菜單的投訴,並提出有關同一菜單的重複版本的投訴。話雖如此,由於這是現在官方認可的行爲,所以我對開發人員在舊設備上保持一致性沒有任何問題。

關於這一點的帽子提示the commenter on the issue I filed,指出了這一變化。