Saltar al contenido

¿Cómo puedo cambiar el menú de opciones en diferentes fragmentos?

Verificamos de forma profundamente cada tutoriales en nuestra web con la meta de mostrarte siempre la información certera y certera.

Solución:

Poner setHasOptionsMenu(true) en el constructor e inflar el menú específico del fragmento.

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.fragmenta_menu, menu);
        super.onCreateOptionsMenu(menu, inflater);
    

menú en actividad principal

public class MainActivity extends Activity 
    @Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) 
        inflater.inflate(R.menu.main_menu, menu);
        super.onCreateOptionsMenu(menu, inflater);
    

Todo se puede hacer a través de Fragmento; no es necesario inflar el menú de la actividad:

public class UpdateFragment extends Fragment  

    @Override
    public void onCreate(Bundle savedInstanceState) 
        super.onCreate(savedInstanceState);
        // ...
        setHasOptionsMenu(true);
    

    @Override
    public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) 

        inflater.inflate(R.menu.update_menu, menu);
        super.onCreateOptionsMenu(menu, inflater);
    


    @Override
    public boolean onOptionsItemSelected(MenuItem item) 
        int id = item.getItemId();
        switch (id)
            case R.id.navUpdateProfile:
                showToast("navUpdateProfile");
                return true;

            default:
                return super.onOptionsItemSelected(item);
        
    

Al final de la post puedes encontrar las acotaciones de otros creadores, tú además tienes la opción de insertar el tuyo si lo crees conveniente.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *