部分安卓版本虛擬按鍵上沒有Menu按鍵的解決方法


此文僅作爲個人筆記,如果被你搜到就當作分享了。


最近發現很多安卓手機都開始用虛擬按鍵了,這樣一來菜單按鍵就消失了。雖然現在用到菜單扭的機會很少,但需要的時候找不到它也會很煩惱。


解決方法1.

發現Manifest文件中編譯版本號(targetSdkVersion)小於11可以讓菜單按鈕顯示出來。


解決方法2.

在onCreate()中,super.onCreate();之後添加如下代碼:

try {
    getWindow().addFlags(WindowManager.LayoutParams.class.getField("FLAG_NEEDS_MENU_KEY").getInt(null));
} catch (IllegalAccessException e) {
	e.printStackTrace();
} catch (IllegalArgumentException e) {
	e.printStackTrace();
} catch (NoSuchFieldException e) {
	e.printStackTrace();
}

這樣菜單按鈕就顯示到標題欄上了,所以爲了保證菜單鍵在虛擬按鍵上,此方法只適用於程序不需要標題欄的狀況下。

取消標題欄可以在onCreate();方法中添加如下這句話:

requestWindowFeature(Window.FEATURE_NO_TITLE);
注意,這句話一定要在setContentView();前面纔會生效,不然會拋異常。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章