Ho un Frammento con menù:come posso cambiare il menu delle opzioni in diversi frammenti?
public class FragmentA extends Fragment {
public FragmentA() {
setHasOptionsMenu(true);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
setHasOptionsMenu(true);
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.activity_main_actions, menu);
super.onCreateOptionsMenu(menu, inflater);
}
}
vorrei cambiare menù ma non funziona e mantenere il vecchio menu Azione
frammento B è uguale come sopra con diversi gonfia il menu xml.
public class FragmentB extends Fragment {
public FragmentB() {
setHasOptionsMenu(true);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
...
setHasOptionsMenu(true);
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.**action_ranking**, menu);
super.onCreateOptionsMenu(menu, inflater);
}
}
Modificato:
può essere utile utilizzare diversi layout dei menu per i diversi frammenti e 1 il layout del menu per l'attività principale e id differenti
Put 'setHasOptionsMenu (vero)' nel costruttore. –
Ho setHasOptionsMenu (true); nei frammenti onCreate. cosa intendi inserire nel constructore? Non ne ho uno –
Controlla la risposta. –