0

所以我遇到了以下问题getSupportMenuInflater() is undefined

该项目使用ActionBarSherlockViewPagerIndicator库。

我确定这个问题与我对 ABS 的导入无关,但是它似乎只发生在我的实际 Fragment 类中, extends SherlockFragment但是我的 Main 类中的菜单项没有问题extends SherlockFragmentActivity

现在我尝试简单地将我的片段类更改为扩展SherlockFragmentActivity。但是在这样做时,我被迫删除所有@Override的,然后我以以下错误结束

The method onActivityCreated(Bundle) is undefined for the type SherlockFragmentActivity.

代码

public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater Inflater = getSupportMenuInflater();
    Inflater.inflate(R.menu.menu_main, menu);
    return true;    
    }

已解决将代码更新为以下内容。

 public void onCreateOptionsMenu(Menu menu) {
    getSherlockActivity().getSupportMenuInflater().inflate(R.menu.menu_main, menu);
    return;
4

1 回答 1

1

你需要使用:

getSherlockActivity().getSupportMenuInflater().inflate(R.menu.activity_main, menu);

因为getSupportMenuInflater()是 SherlockActivity 中的方法而不是 SherlockFragment。

参考链接

于 2013-06-05T05:45:25.957 回答