estado buscando para este problema por un tiempo en vano ahora:Cómo determinar fragmento restaurado de backstack
cómo determinar fragmento se ha restaurado de backstack? Estoy usando la biblioteca de compatibilidad y un ListFragment dentro de una FragmentActivity. Cuando se selecciona un elemento dentro de ListFragment, se inicia un nuevo Fragment para reemplazar el ListFragment.
Me di cuenta de que cuando FragmentActivity se detiene, se llama al onSaveInstanceState del Fragmento. Pero cuando el Fragmento se coloca en la pila posterior a través de FragmentTransaction, onSaveInstanceState no se llama, entonces los métodos del ciclo de vida onCreateView y onActivityCreated se invocan con el paquete null savedInstanceState Bundle.
Lo estoy preguntando porque quiero cargar algunos datos cuando se crea o restaura el fragmento, pero no cuando el usuario vuelve a través de. pila posterior.
He visto How to check if Fragment was restored from a backstack? pero quiero agregar más detalles con la esperanza de que esto incite una respuesta.
Editar: di cuenta http://developer.android.com/reference/android/app/Fragment.html#onSaveInstanceState(android.os.Bundle) dice
Nota sin embargo: este método puede ser llamado en cualquier momento antes OnDestroy(). Hay muchas situaciones en las que un fragmento se puede derribar (como cuando se coloca en la pila posterior sin UI), pero su estado no se guardará hasta que su actividad propietaria realmente necesite guardar su estado.
Así onSaveInstanceState es definitivamente fuera de la cuestión ...
Como una pequeña actualización a esta pregunta, estoy sospechando cada vez más que se debe a las peculiaridades de la biblioteca de compatibilidad. Aún no he intentado ejecutar un caso de prueba en dispositivos más de 3,0, lo comprobaré cuando lo haga. – dvd
por qué no realiza su llamada al servidor para cargar los datos en 'onCreate()'. Quizás, eso aliviará tus problemas. Creo que este método en particular no se llama cuando un fragmento se restaura desde la pila de respaldo. – Abhijit