Android工具栏菜单按钮单击事件

Android工具栏菜单按钮单击事件,android,android-toolbar,Android,Android Toolbar,我的片段中有一个简单的工具栏。工具栏上有一个相关的菜单(3点图标下的溢出菜单),一切都很好——当选择其中一个菜单项时,我会得到我的点击事件 但是,我需要在单击“初始设置”菜单时执行某些操作,而不是在选择其中一个菜单项时。有什么办法吗?我不是手动指定菜单-只是使用内置在工具栏中的菜单,所以我不能只进行查找和再次单击 我当前的工具栏代码: mUIToolbar = (Toolbar) view.findViewById(R.id.toolbar); ActionBarActivity activit

我的片段中有一个简单的工具栏。工具栏上有一个相关的菜单(3点图标下的溢出菜单),一切都很好——当选择其中一个菜单项时,我会得到我的点击事件

但是,我需要在单击“初始设置”菜单时执行某些操作,而不是在选择其中一个菜单项时。有什么办法吗?我不是手动指定菜单-只是使用内置在工具栏中的菜单,所以我不能只进行查找和再次单击

我当前的工具栏代码:

mUIToolbar = (Toolbar) view.findViewById(R.id.toolbar);
ActionBarActivity activity = (ActionBarActivity) getActivity();
activity.setSupportActionBar(mToolbar);
activity.getSupportActionBar().setDisplayShowTitleEnabled(false);
activity.supportInvalidateOptionsMenu();

在这种情况下,您可以在OnPrepareOptions菜单方法中编写分析代码。每次显示菜单选项之前都会调用此方法。您可以在活动类中重写此方法

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
    //Analytics code will go here.
    return true;
}

你说的“我需要在初始菜单按钮上触发一个附加事件”是什么意思?单击“对不起,如果我不清楚-当用户点击工具栏上的3点设置菜单时,我需要捕捉该事件并执行一些操作。目前,我只能捕捉到用户选择设置项之一的事件。通过捕捉该事件,您想做什么?你想有条件地更改菜单选项吗?不,我需要发送Google Analytics事件,所以我只需要一个事件挂钩。我建议你阅读这篇文章,我认为你需要一个菜单选项侦听器来处理[[1]:如果您希望在菜单项中以友好方式应用更改,您应该超越此函数。是的,但提问者实际上希望在用户单击溢出图标时编写分析代码,因此此方法将始终被调用以修改菜单选项,但由于不想这样做,因此可以在此返回true,但在返回ca之前在那里写分析代码。是的,我写了另一个答案。谢谢你的帮助aclaration@vkislicins我认为当菜单打开或关闭时,你应该使用菜单侦听器来处理。请阅读这篇文章@encastellano同意。我尝试过它,因为它似乎是一种更干净的方法,但它似乎触发了多次?close大约触发5-6次,open是否至少发射两次(可能每个溢出项目发射一次?)。不确定那里发生了什么,但我今天已经在这上面花费了太多时间:)