¿Cómo puedo extraer el fragmento de backstack sin reanudarlo? Solo quiero eliminar de la pila posterior, no quiero mostrarlo.¿Cómo puedo extraer el fragmento de backstack sin reanudarlo?
Respuesta
Es una cuestión de arquitectura.
1) Supongamos que tenemos 2 controladores (fragmentos/actividades): controlador A y controlador B. Ambos conectados a una instancia de algún Modelo (puede usar enlace con servicio, patrón Singleton o modelo init en Application- clase del heredero y hacer un getter a él). Cuando sucede algo interesante en el controlador B, notifica al modelo al respecto y luego modela las llamadas controllerA.finish()/controllerA.remove(). Por supuesto, siempre trato de implementar esta solución lo mejor posible, pero hay una idea principal.
2) En otras circunstancias, llamo finish() inmediatamente después de startActivity (intención);
3) También puedo escribir: startActivityForResult (intent, requestCode) y después de terminar el segundo método de actividad en ActionResult (requestCode, responseCode, intent) se llama - si requestCode son iguales, termino la actividad.
Fragmento no tiene método de acabado. –
¿Puede insertar una verificación simple directamente en Reanudar() o en Iniciar() - si es necesario eliminarla? – QuickNick
Si no utiliza el método de FragmentTransaction public abstract FragmentTransaction addToBackStack (String name)
para agregarlo a la pila posterior. No será necesario eliminarlo.
Necesito eliminar un fragmento específico de la pila posterior. popBackStack no funciona ya que reanuda el fragmento especificado. –
¿Cuáles son los indicadores utilizados en popBackStack? intenta usar POP_BACK_STACK_INCLUSIVE. –
Sí, he usado esta bandera. Se sigue llamando al registro de entrada de backstack. –
- 1. Android Fragmento backStack tema
- 2. Cómo determinar fragmento restaurado de backstack
- 3. Por qué fragmento de cero en backstack
- 4. Android Eliminar Fragmento y ver desde BackStack
- 5. Android - Backstack al sustituir el fragmento en ViewPager
- 6. mediante programación volver al fragmento anterior en el backstack
- 7. Usar backstack con ViewPager
- 8. Swing Timer, cómo pausar y reanudarlo?
- 9. ¿Fragmento de error de backstack al reemplazar fragmentos en una transacción?
- 10. Ocultar pestañas de ActionBar con modo de navegación que afectan negativamente al fragmento de backstack
- 11. Fragmentar transacciones, barra de acciones y backstack
- 12. Cómo extraer el valor de javax.naming.directory.Attribute
- 13. Cómo revertir animaciones de fragmentos en BackStack?
- 14. ¿Cómo puedo eliminar el identificador de fragmento de una URL?
- 15. Guardando un backstack en un cambio de orientación
- 16. Cómo hacer que el segundo fragmento se superponga en el primer fragmento mientras transiciones de fragmento
- 17. ¿Cómo puedo definir el diseño de un fragmento desde XML?
- 18. Fragmento de transición estándar sin animación
- 19. ¿Cómo puedo extraer Java exe en jar
- 20. ¿Cómo puedo extraer el archivo DLL del volcado de memoria?
- 21. ¿Cómo puedo extraer el MCC y MNC de una PLMN?
- 22. Obtuvo la excepción: fragmento ya activo
- 23. Extraer y limpiar fragmento de HTML utilizando el analizador HTML (org.htmlparser)
- 24. ¿Cómo puedo extraer solo el texto del html
- 25. ¿Cómo puedo expandir un fragmento dentro de un fragmento usando YASnippet?
- 26. lxml ¿Crear fragmento XML sin elemento raíz?
- 27. ¿Cómo puedo extraer datos EXIF usando PerlMagick?
- 28. ¿Cómo puedo exponer solo un fragmento de IList <>?
- 29. ¿Cómo guardar el progreso de un programa y reanudarlo más tarde?
- 30. Mostrar el fragmento anterior
¿Has encontrado una solución? Me he dado cuenta de que mi aplicación se bloquea en alrededor de 140 Fragmentos en el backstack, por lo que quiero comenzar a eliminar los más antiguos en alrededor de 100 Fragmentos, pero aún no he encontrado la manera de hacerlo. –