Restauración del estado en Android cuando se utiliza el botón "arriba"

Estoy utilizando onSaveInstanceState() para almacenar una variable de miembro ArrayList y restaurarla en el método onCreate() de la actividad principal. Esto funciona en la mayoría de las circunstancias, como la rotación de la pantalla, etc, pero si abro una nueva actividad y utilizar el botón "arriba" (no el botón Atrás) para navegar de nuevo a la pantalla principal, parece crear una nueva actividad principal sin pasar la Estado en onCreate() .

He confirmado que cuando se presiona el botón de arriba, se llama al método onDestroy() para la instancia original de la actividad principal que no tiene sentido para mí porque quiero que reanude la actividad existente como si hubiera presionado el botón de retroceso en lugar de Crear uno nuevo.

¿Hay una manera que puedo forzar a la nueva actividad para restaurar la antigua o simplemente reanudar la actividad existente?

Intente establecer el modo de inicio de la actividad principal en singleTop, en su manifiesto:

 <activity android:name="activityName" android:launchMode="singleTop" ... /> 

Has intentado usar

  Intent i = new Intent(this, MainScreenActivity.class); i.setFlags(Intent.FLAG_CLEAR_TOP); startActivity(i); finish(); 

Este código debe ser llamado al presionar el botón hacia arriba.

  • IllegalStateException: Fragmento ya agregado en el fragmento tabhost
  • Android: onDestroy () o un método similar en la clase Application
  • Principiante de Android: onDestroy
  • DialogFrag # show () de un lanzamiento de fragmentos "IllegalStateException: no se puede realizar esta acción después onSaveInstanceState"
  • Escenario de Android donde ondestroy () se llama sin onpause () o onstop ()
  • Liberar recursos en onPause en lugar de onDestroy
  • Mal comportamiento de Backstack de la actividad cuando la actividad destruida
  • Apertura de la cámara en un proceso diferente
  • Fragmento de Android superpuesto por otro fragmento todavía se muestra y no onPause
  • OnCreate () llamado mientras se detiene la actividad (pero no se destruye). Sólo después de la instalación
  • Distinguir entre presionar el botón "inicio" y abrir otra Actividad
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.