|
||
|
|
|
|||||||
| Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
![]() |
|
|
Herramientas |
|
#1
|
||||
|
||||
|
Volver a la primera actividad, no crear una nueva!
Hola, tengo un problema:
Tengo creando un juego para Android, que sus principales actividades son 3:
1 --> 2 --> 3 ---> 1 Pues el problema es el siguiente: Entras en el menú, seleccionas jugar y pasas a la 2ª actividad(el juego), terminas de jugar y pasas a la 3ª activity puntuaciones (una vez que paso a puntuaciones finalizo la actividad Juego para que si das al botón de atras no vuelvas al juego). Pues en la pantalla de Puntuaciones hay un boton para volver a la Pantalla Principal de nuevo (por si quieres volver a jugar), pues aquí debería volver pero reiniciando la actividad principal con el onRestart() pero no! vuelve a crear una nueva actividad principal(En este momento tengo dos actividades exactamente iguales). Entonces si pulso en finalizar del menu de esta actividad, se cierra esa actividad pero vuelve a salir la primera actividad(Que es la misma). Espero que me halláis entendido, no quiero que me digáis: "leete los ciclos de vida" me los he leido y visto videos 200 veces y lo entiendo pero no entiendo porque me hace esto. Que codego debo poner para regresar a la primera actividad sin crear una nueva? |
|
|
|
#2
|
||||
|
||||
|
Leete los cicl... nooo, pero los FLAGs de los Intent sí
![]() http://developer.android.com/guide/c...ack-stack.html Supongo que con añadir el flag FLAG_ACTIVITY_CLEAR_TOP al Intent te vale
__________________
El mejor Cuatro en Raya de Android (Hilo en HTCMania, Play Store) ¡Un millón de descargas!
|
| Gracias de parte de: | ||
|
#3
|
||||
|
||||
|
Ok, solucionado. Lo pongo por si alguien lo necesita. No he vuelto a la primera, pero cuando estoy en la ultima elimino todas y creo una nueva que es como si acabara de empezar:
Código:
Intent i=new Intent(Risultato.this,Suma.class); i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); //Elimina las otras activity startActivity(i); |
|
#4
|
||||
|
||||
|
Si pero mi pregunta es si le das al boton back ? al no haber activitys en pausa se termina el juego y debes lanzar la aplicacion otra vez no?
A mi me gustaria saber si hay alguna forma de controlar la acción a realizar del botón "Back" de los dispositivos. |
|
#5
|
||||
|
||||
|
Sobreescribiendo el método onBackPressed, si se cumple la condición para volver, llamas al método de la clase padre. Y si no simplemente acabas sin hacer nada.
@Override public void onBackPressed() { if (concion_para_terminar) super.onBackPressed(); } |
| Gracias de parte de: | ||
|
#6
|
||||
|
||||
|
Aja! ese método aun no lo conocía , gracias
|
![]() |
Estás aquí
|
||||||
|
||||||