0

我有一个名为的主类BaseActivity,它有一个方法

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getSupportMenuInflater().inflate(R.menu.main, menu);
    return true;
}

现在我像这样扩展这个类......

public class MainActivity extends BaseActivity {

      @Override
      public void onCreateOptionsMenu(Menu menu, MenuInflater menuInflater) {
        Log.d("Its called", "Kevin");
        menuInflater.inflate(R.menu.othermenu, menu);
      }       

}

我将如何在这里覆盖此方法,如果它是 abooleanvoid.

更新:

public class FragmentClass extends android.support.v4.app.Fragment {

      // How would i over-ride the onCreateOptionsMenu() here of BaseActivity.

}
4

1 回答 1

2

任何覆盖方法都需要具有与其覆盖的方法相同的签名。不要忘记调用 super,如下所示:

public class MainActivity extends BaseActivity {

      @Override
      public boolean onCreateOptionsMenu( Menu menu ) {
        if( super.onCreateOptionsMenu( menu ) ) {
            Log.d("Its called", "Kevin");
            getSupportMenuInflater().inflate(R.menu.othermenu, menu);
            return true;
        } else {
            return false;
        }
      }       

}
于 2013-03-27T14:10:41.363 回答