我在ActionBar中有MenuItems,我在ViewPager中使用Fragments。现在我想在片段中处理onMenuItemClickListener事件。它在主要活动中正常工作。但不是在Fragments中。而且它也不会收到任何错误。
这是我尝试过的方法。两者在Activity中都很好。
第一种方法:
public boolean onCreateOptionsMenu(Menu menu) {
MenuItem item = menu.findItem(R.id.grid_view);
item.setOnMenuItemClickListener(new OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
Log.v("test","dfsfdsfasd");
return true;
}
});
return true;
}
第二种方法:
public boolean onOptionsItemSelected(MenuItem item)
{
switch(item.getItemId())
{
case R.id.grid_view:
{
Log.v("Log:","grid_view item pressed");
return true;
}
case R.id.list_view:
{
Log.v("Log:","list_view item pressed");
return true;
}
default:
return true;
}
}
如何实现这一目标的任何帮助将不胜感激。
答案 0 :(得分:2)
使用onPrepareOptionsMenu方法解决。