/**
* 强制显示 overflow menu
*/
private void forceShowActionBarOverflowMenu() {
ViewConfiguration config = ViewConfiguration.get(this);
Field menuKeyField = null;
try {
menuKeyField = ViewConfiguration.class.getDeclaredField("sHasPermanentMenuKey");
} catch (NoSuchFieldException e1) {
e1.printStackTrace();
}
if (menuKeyField != null) {
menuKeyField.setAccessible(true);
try {
menuKeyField.setBoolean(config, false);
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
}
}
}
在onCreate方法中调用该方法即可。
本文介绍了一种在Android应用中强制显示ActionBar Overflow菜单的方法。通过反射机制修改ViewConfiguration的sHasPermanentMenuKey字段,使应用即使在没有菜单键的设备上也能正常显示Overflow菜单。
194

被折叠的 条评论
为什么被折叠?



