我在片段中使用了选项菜单。问题是,当我第一次去片段时,不会调用选项菜单单击事件。但是当我转到另一个片段时,再次修改该片段,然后单击选项菜单事件称为...以下是代码
//Creating the option menu
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater)
{
super.onCreateOptionsMenu(menu, inflater);
inflater.inflate(R.menu.newcarmenu, menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
//super.onOptionsItemSelected(item);
switch(item.getItemId())
{
case R.id.menuNewCar:
_menuClickCallback.onMenuSelected();
break;
}
return super.onOptionsItemSelected(item);
}
请告诉我为什么会这样?
现在,您每次都返回super.onOptionsItemSelected(item)
,因此选择被传递。选择了return true
后,需要MenuItem
。请尝试以下方法:
switch(item.getItemId())
{
case R.id.menuNewCar:
_menuClickCallback.onMenuSelected();
return true;
default:
return super.onOptionsItemSelected(item);
}