本文介绍了调用supportInvalidateOptionsMenu()后,菜单ActionBarActivity无法正常工作;的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我与图书馆和抽屉菜单的兼容性工作。
调用supportInvalidateOptionsMenu()函数后;在弹出菜单中没有出现,只留下核心流图标。
这个解决的办法?
为此在我ActMain(非常碎片主要活动)
@覆盖
prepareOptionsMenu(菜单菜单)上公共布尔{ //如果资产净值抽屉被打开,隐藏操作项相关内容视图
布尔drawerOpen = mDrawerLayout.isDrawerOpen(mDrawerList);
hideMenuItems(菜单,drawerOpen!);
返回super.on prepareOptionsMenu(菜单);
} 私人无效hideMenuItems(菜单菜单,布尔可见)
{ 的for(int i = 0; I< menu.size();我++){ menu.getItem(ⅰ).setVisible(可见);
}
}
解决方案
The supportInvalidateOptionsMenu
is only valid for android 2.3 and lower
that is why it has a prefix support
on it, more likely if you use that the onPrepareOptionsMenu
is not called when you are trying to run it in android 2.3 and above
.
solution:
You can check first if the device is 2.3 and lower
or above
, if it is above you use invalidateOptionsMenu()
for updating/calling the onPrepareOptionsMenu
这篇关于调用supportInvalidateOptionsMenu()后,菜单ActionBarActivity无法正常工作;的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!