Cómo reanudar la actividad en lugar de reiniciar al ir "arriba" de la barra de acción

Tengo dos actividades. Diga Activity A y Activity B
Desde la Activity A Haga clic en un botón para iniciar Activity B Este es el código que uso para esto:

 Intent intent = new Intent(this, ActivityB.class); this.startActivity(intent); 

Ahora, en este punto, estoy en la Activity B En el método de creación on de la Activity B , habilito el botón arriba.

 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_view_news); getActionBar().setDisplayHomeAsUpEnabled(true); //Here// } 

Y en el identificador de evento para el botón "arriba", tengo este código:

 public boolean onOptionsItemSelected(MenuItem item){ switch (item.getItemId()) { case android.R.id.home: finish(); NavUtils.navigateUpFromSameTask(this); default: return super.onOptionsItemSelected(item); } } 

Ahora decido volver a Activity A Haga clic en el botón de arriba en la barra de acción que se ve así: Introduzca aquí la descripción de la imagen

Ahora el problema es, cuando hago clic en el "botón de arriba", que se remonta a la Activity A que está bien, pero se reinicia . ¿Cómo puede hacer que deje de reiniciar? Sólo quiero que se reanude .

Cuando uso mi botón de hardware atrás, funciona como se esperaba. Es decir, va a la Activity A y lo reanuda en lugar de reiniciarlo.

Quiero que mi actividad se reanude porque en esa actividad, descargo una cadena en línea y por lo tanto no quiero que siga descargando los datos cuando un usuario pasa de Actividad B -> Actividad A


Editar Mi archivo de manifiesto para la sección de Activity B tiene este aspecto:

 <activity android:name="com.example.android.ActivityB" android:label="@string/title_activity_view_news" android:parentActivityName="com.example.android.ActivityA"> <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.example.android.ActivityA" /> </activity> 

Edit 2 [Answer] Ok, así que esto fue bastante inesperado, pero en mi AndroidManifest.xml, en la sección de la actividad A, tuve que agregar el trazador de línea siguiente. android:launchMode="singleTop" por lo que ahora se ve así:

 <activity android:name="com.example.android.ActivityA" android:label="@string/app_name" android:launchMode="singleTop"> //**HERE**// <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 

La explicación a esto se da aquí

Debería haber añadido como una respuesta en lugar de un comentario .. pero aquí vas para que puedas aceptar si quieres para que otros puedan ver si es necesario.

https://stackoverflow.com/a/16147110/3286163

Básicamente, para resumir el androide siempre se recreará la actividad a menos que se especifique que no con

 android:launchMode="singleTop" 

Nota: no funcionará si la actividad de retorno no está en la parte superior de la pila trasera como se menciona en la referencia.

Para cualquier persona, por favor upvote la respuesta en la url en vez de la mía si usted encuentra esto útil.

También puede lograr el mismo resultado programáticamente

 Intent upIntent = NavUtils.getParentActivityIntent(this); upIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); NavUtils.navigateUpTo(this, upIntent); 
  • Integre tabhost y el cajón de navegación
  • ViewPager PagerObserver no estaba registrado
  • Android Navigation Drawer implementado con Actividades
  • SingleTask launchMode en android no funciona
  • Cómo obtener el ID de submenú en la vista de navegación
  • Cambiar Icono Del Cajón De Navegación
  • Vista de navegación de Android: Desplácese por los elementos del menú sólo para emitir
  • Pestañas intercambiables en el fragmento Menú Deslizante
  • ¿Cómo organizar una aplicación utilizando fragmentos?
  • El cajón de navegación no cierra
  • Cómo combinar el cajón de navegación y Spinner
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.