如何实现在Android的一个片段内的菜单项点击监听器监听器、如何实现、菜单项、段内

2023-09-12 03:22:18 作者:一声姐妹大过天

我在动作条的MenuItems,我使用内部ViewPager片段。现在,我想处理我的片段里面onMenuItemClickListener事件。这里面主要活动工作正常。但里面没有碎片。而且它不会提取任何错误。

I have MenuItems in the ActionBar and I am using Fragments inside ViewPager. Now I would like to handle onMenuItemClickListener event inside my fragment. It works fine inside Main Activity. But not inside Fragments. And also it doesn't fetch any error.

下面是我试过的方法。这两个工作正常的内部活动。

Here is the methods that I tried. Both works fine inside 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;
}

第二种方法:

Second Method:

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;
    }
}

在如何实现这一目标将是AP preciated任何帮助。

Any help on how to achieve this will be appreciated.

推荐答案

通过使用prepareOptionsMenu方法解决了。

Solved by using onPrepareOptionsMenu method.