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:
- Inicie en la actividad A, contiene dos botones: cada uno lo lleva a las actividades B y C, respectivamente.
- Toca el botón para la actividad B.
- Transición a la actividad B. contiene dos botones: cada uno lo lleva a las actividades A y C, respectivamente.
- Toca el botón para la actividad C.
- Transición a la actividad C.
- Toque el botón "arriba", debe llevarlo a la actividad B.
- En la actividad B ahora: toque el botón para la actividad A.
- Transición a la actividad A.
- Toque el botón "arriba", debe llevarlo a la actividad B.
- En la actividad B Toque el botón "arriba", debe llevarlo a la actividad A.
- En la actividad A ahora: toque el botón para la actividad C.
- Transición a la actividad C.
- 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()