studio programacion para herramientas fundamentos desarrollo con avanzado aplicaciones android android-intent android-activity

programacion - Haga que el botón "arriba" se comporte como el botón "volver" en Android



manual android studio avanzado (1)

El diseño de la aplicación para Android con el que estoy trabajando requiere que el botón "Arriba" se comporte de la misma manera que el botón "Atrás", pero no estoy seguro de cómo hacerlo.

Sé que android:parentActivityName debe especificarse para que el botón "Arriba" esté visible en una actividad, pero especificar una actividad principal fija no tiene sentido para la actividad. Imagine este escenario con las actividades A, B y C:

  1. Inicie en la actividad A, contiene dos botones: cada uno lo lleva a las actividades B y C, respectivamente.
  2. Toca el botón para la actividad B.
  3. Transición a la actividad B. contiene dos botones: cada uno lo lleva a las actividades A y C, respectivamente.
  4. Toca el botón para la actividad C.
  5. Transición a la actividad C.
  6. Toque el botón "arriba", debe llevarlo a la actividad B.
  7. En la actividad B ahora: toque el botón para la actividad A.
  8. Transición a la actividad A.
  9. Toque el botón "arriba", debe llevarlo a la actividad B.
  10. En la actividad B Toque el botón "arriba", debe llevarlo a la actividad A.
  11. En la actividad A ahora: toque el botón para la actividad C.
  12. Transición a la actividad C.
  13. Toca el botón "arriba", deberías llevarlo a la actividad A.

Si android:parentActivityName que especificar android:parentActivityName para cada actividad, podría tener sentido que la actividad principal de B y C sea A, pero esto significa que cada vez que presionamos el botón "arriba" de las actividades B o C, aterrizamos en la actividad A (y eso no siempre es lo que se supone que debe suceder).

¿Alguien tiene experiencia con este tipo de cosas?


de las tres actividades agregue lo siguiente

@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: onBackPressed(); return true; } return(super.onOptionsItemSelected(item)); }

cuando presiona el botón de arriba en su aplicación, invocará onOptionsItemSelected con el id de android.R.id.home solo atrapará ese caso y llamará manualmente onBackPressed()