ActionbarSherlock和ViewpagerIndicator:如何使用片段将不同的操作栏菜单添加到ViewPagerIndicator中的不同页面

Way*_*yne 3 android-viewpager actionbarsherlock viewpagerindicator

我的应用程序使用了Actionbarsherlock一个ViewpagerIndicator.每个页面使用1个片段.我希望每个页面都有不同的操作栏菜单,那么我该如何存档呢?

我已尝试使用onCreateOptionsMenu每个SherlockFragment但操作栏菜单未显示,我也尝试找到一些方法以编程方式添加菜单但没办法.

@Override
public void onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu, com.actionbarsherlock.view.MenuInflater inflater)
{       
    inflater.inflate(R.menu.main, menu);    
    super.onCreateOptionsMenu(menu, inflater);
}
Run Code Online (Sandbox Code Playgroud)

谢谢!

*编辑:添加更多细节*

如果我在Activity中使用onCreateOptionsMenu,则菜单(操作项)会正常显示.

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
    MenuInflater menuInflater = getSupportMenuInflater();
    menuInflater.inflate(R.menu.main, menu);
Run Code Online (Sandbox Code Playgroud)

这就是我在ViewPager中设置ActionBar的方法

final ActionBar actionbar = getSupportActionBar();
    actionbar .setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
    actionbar .setDisplayHomeAsUpEnabled(true);
    actionbar .setTitle("olala");

    mFragmentAdapter = new MyFragmentPagerAdapter(getSupportFragmentManager());     
    mPager.setAdapter(mFragmentAdapter);

    mIndicator.setViewPager(mPager);
    mIndicator.setOnPageChangeListener(new MyPageChangeListener());
    mPager.setCurrentItem(3);
Run Code Online (Sandbox Code Playgroud)

Way*_*yne 5

我们需要在Fragment(onCreate或onCreateView)上添加它,以便通过接收对onCreateOptionsMenu(Menu,MenuInflater)和相关方法的调用来报告此片段想要参与填充选项菜单.

setHasOptionsMenu(true);
Run Code Online (Sandbox Code Playgroud)

参考:http://developer.android.com/reference/android/app/Fragment.html