我正在爲版本2.3.3和更高版本(使用相同的SDK版本)創建Android應用程序,並使用了舊版菜單按鈕。更新的Android設備上的菜單按鈕
我也使用了自定義的ActionBar庫,它沒有菜單溢出(?)功能。那麼是否有任何方法讓我在沒有物理菜單按鈕的情況下在較新的Android設備上顯示菜單?最好不必更改ActionBar來使用另一個庫,或者不必使用Android的較新的SDK?
謝謝。
我正在爲版本2.3.3和更高版本(使用相同的SDK版本)創建Android應用程序,並使用了舊版菜單按鈕。更新的Android設備上的菜單按鈕
我也使用了自定義的ActionBar庫,它沒有菜單溢出(?)功能。那麼是否有任何方法讓我在沒有物理菜單按鈕的情況下在較新的Android設備上顯示菜單?最好不必更改ActionBar來使用另一個庫,或者不必使用Android的較新的SDK?
謝謝。
,我已經實施遺留菜單按鈕
爲了什麼?如果您的應用程序是傳統應用程序,Android將自行處理此問題,它會在Honeycomb上添加屏幕上的菜單按鈕,因此您不需要打擾。
看到這篇文章:Say goodbye to menu button
如果您的應用程序的設備上運行,而無需專門的菜單按鈕,在 系統決定是否根據你聲明的API級別的動作溢添加到導航 欄以支持 清單元素。邏輯歸結爲:
如果設置任何的minSdkVersion或targetSdkVersion 11或更高,則 系統將不添加傳統的溢出按鈕。
否則,系統將在Android 3.0或更高版本上運行 時添加舊版溢出按鈕。
唯一的例外是,如果你設置的minSdkVersion爲10或更低,設置 targetSdkVersion至11,12,或13,你不要用動作條,上運行你的應用程序時, 系統將添加遺留溢出按鈕一個 手機與Android 4.0或更高版本。對於傳統應用
軟菜單鍵應該是這樣的:
好的,所以它會在沒有物理菜單按鈕的設備上顯示一個軟菜單按鈕(例如:HTC One S),如果保持原樣? – Roshnal
是的。我在答案中加了一個鏡頭 - 右邊的這些「點」是菜單「鍵」 –
@Roshnal:「如果我保持原樣?」 - 因爲我們不知道「實際上」是什麼,所以不可能回答這個問題。如果您的'android:targetSdkVersion'低於10(或者在其他條件中,如答案中引用的段落中所述),*然後*您將在系統或導航欄中獲得菜單的可供選擇性。但是,只要將'android:targetSdkVersion'提升得足夠高,就會失去菜單的可供選擇性,用戶將無法訪問溢出菜單。 – CommonsWare
您還可以查看幾個我的答案,從過去幾天。這兩個問題是ActionBarSherlock
注:作爲這兩種回答也提到了,我想重申。這只是爲開發者提供了一個選項,他們仍然想要強制OverFlow菜單。
感謝您的回答,但我已經使用了另一個小的ActionBar庫。不是ActionBarSherlock ... – Roshnal
「我還使用了自定義的ActionBar庫,它沒有菜單溢出(?)功能。」 - 爲什麼?爲什麼不使用具有溢出菜單的工具,如ActionBarSherlock? – CommonsWare
@CommonsWare我有一些具體的原因...我知道關於ActionBarSherlock。 – Roshnal