在activity中使用是这样的
<span style="font-size:18px;">@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
if (!mScanning) {
menu.findItem(R.id.menu_stop).setVisible(false);
menu.findItem(R.id.menu_scan).setVisible(true);
menu.findItem(R.id.menu_refresh).setActionView(null);
} else {
menu.findItem(R.id.menu_stop).setVisible(true);
menu.findItem(R.id.menu_scan).setVisible(false);
menu.findItem(R.id.menu_refresh).setActionView(
R.layout.actionbar_indeterminate_progress);
}
return true;
}</span>
但是在fragment中使用是这样的
<span style="font-size:18px;">public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.gatt_services, menu);
if (mConnected) {
menu.findItem(R.id.menu_connect).setVisible(false);
menu.findItem(R.id.menu_disconnect).setVisible(true);
} else {
menu.findItem(R.id.menu_connect).setVisible(true);
menu.findItem(R.id.menu_disconnect).setVisible(false);
}
}</span>
<span style="font-size:18px;">MenuInflater inflater</span>
返回值为void
并且在fragment的onCreate()中,要添加
setHasOptionsMenu(true)
<span style="font-size:18px;">public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
System.out.println("BBBBBBBBB____onCreate");
setHasOptionsMenu(true);
}</span>