studio popbackstackimmediate navegar fragments entre eliminar destruir backstack addtobackstack android tabs android-fragments back-stack

popbackstackimmediate - ¿Cómo obtener una lista de entradas de fragmentos backstack en Android?



navegar entre fragments android studio (2)

El FragmentManager tiene métodos:

getBackStackEntryCount ()

getBackStackEntryAt (índice int)

FragmentManager fm = getFragmentManager(); for(int entry = 0; entry < fm.getBackStackEntryCount(); entry++){ Log.i(TAG, "Found fragment: " + fm.getBackStackEntryAt(entry).getId()); }

Estoy trabajando en una aplicación en la que las pestañas se implementan utilizando FragmentActivity . Como las pestañas son necesarias en toda la aplicación, los fragmentos se utilizan ampliamente para hacer que la aplicación sea compatible con todas las versiones de Android.

Como consecuencia, estoy enfrentando un problema al visualizar qué fragmentos están presentes en el backstack. Estoy seguro de que hay una forma de recuperar la lista de fragmentos presentes en el backstack . Gracias.


Si desea verificar qué fragmento está visible y si conoce el ID de vista donde se coloca el fragmento, primero debe agregar debajo en Crear ()

getSupportFragmentManager().addOnBackStackChangedListener(new OnBackStackChangedListener() { @Override public void onBackStackChanged() { Fragment f = getSupportFragmentManager().findFragmentById(R.id.content_frame); if (f != null){ updateActionBarTitle(f); } } }); private void updateActionBarTitle(Fragment fragment) { String fragClassName = fragment.getClass().getName(); if (fragClassName.equals(FirstFragment.class.getName())) { setTitle("Home"); } else if (fragClassName.equals(SecondFragment.class.getName())) { setTitle("Second"); } }

Esto actualizará el título de la barra de acciones en el detector de cambios de la pila posterior.