getSupportMenuInflater

getSupportMenuInflater

所以即时通讯收到以下问题getSupportMenuInflater() is undefined

该项目正在使用ActionBarSherlockViewPagerIndicator库。

我确定此问题与我的ABS导入无关,但是它似乎仅在实际的Fragment类中发生,该类在extends SherlockFragment中,但是我对主类中的菜单项没有问题,在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;

最佳答案

您需要使用:

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


由于getSupportMenuInflater()是SherlockActivity中的方法,而不是SherlockFragment。

Reference Link

10-04 20:02