在Android程序設計中,通常來說在Actionbar中在條目過多時會顯示三個豎著的小點的菜單,但在實機測試的時候發現并不顯示,查找資料并測試之后發現問題所在:如果該機器擁有實體的menu鍵則不在右側顯示溢出菜單,而改為按menu來生成。這樣就不利于統一的界面風格。
我們可以改變系統探測實體menu鍵的存在與否來改變這個的顯示。
菜單顯示是根據public boolean hasPermanentMenuKey ()這個方法來判斷的。這個方法是獲取sHasPermanentMenuKey的boolean值。
解決方法如下:
在onCreate()中加入:
try {ViewConfiguration mconfig = ViewConfiguration.get(this);Field menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");if(menuKeyField != null) {menuKeyField.setAccessible(true);menuKeyField.setBoolean(mconfig, false);}} catch (Exception ex) {}
新聞熱點
疑難解答
圖片精選