我想在用户打开/关闭 ActionBar 的溢出菜单(三个点)时收听,就像这样:
void onOverflowMenu(boolean expanded) {
}
为了处理打开的案例,我尝试了 onPrepareOptionsMenu()
,但它是在构建 ActionBar 或调用 invalidateOptionsMenu()
时触发的。这不是我想要的。
如果用户在 onMenuItemSelected()
中选择菜单项,我能够检测到溢出菜单已关闭。但我也想检测用户是否通过点击菜单外部、按下返回键以及所有其他情况来关闭溢出菜单。
有什么办法可以实现吗?
最佳答案
在 Activity
中捕获打开的 Action :
@Override
public boolean onMenuOpened(int featureId, Menu menu) {
...
return super.onMenuOpened(featureId, menu);
}
要捕获关闭的 Action ,即使用户在菜单 View 之外触摸也是如此:
@Override
public void onPanelClosed(int featureId, Menu menu) {
...
}
关于android - Actionbar 的溢出菜单打开/关闭监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23806383/