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

Respuesta
 
Herramientas
  #1  
Viejo 26/06/13, 16:14:42
Array

[xs_avatar]
davidddp davidddp no está en línea
Miembro del foro
· Votos compra/venta: (2)
 
Fecha de registro: jun 2010
Localización: Santa Amalia
Mensajes: 56
Modelo de smartphone: Huawei P20 Pro
Tu operador: Orange
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. Pantalla Principal(Menú)
  2. Juego
  3. Puntuaciones.

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?
Responder Con Cita


  #2  
Viejo 26/06/13, 17:12:39
Array

[xs_avatar]
mocelet mocelet no está en línea
Desarrollador
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -

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!
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 28/06/13, 03:29:41
Array

[xs_avatar]
davidddp davidddp no está en línea
Miembro del foro
· Votos compra/venta: (2)
 
Fecha de registro: jun 2010
Localización: Santa Amalia
Mensajes: 56
Modelo de smartphone: Huawei P20 Pro
Tu operador: Orange
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);
Responder Con Cita
  #4  
Viejo 28/06/13, 08:27:58
Array

[xs_avatar]
rafaxplayer rafaxplayer no está en línea
Miembro del foro
 
Fecha de registro: jun 2013
Localización: en la barcelona media
Mensajes: 224
Modelo de smartphone: LG-E610
Tu operador: Orange
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.
Responder Con Cita
  #5  
Viejo 28/06/13, 08:39:18
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
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();
}
Responder Con Cita
Gracias de parte de:
  #6  
Viejo 28/06/13, 12:21:48
Array

[xs_avatar]
rafaxplayer rafaxplayer no está en línea
Miembro del foro
 
Fecha de registro: jun 2013
Localización: en la barcelona media
Mensajes: 224
Modelo de smartphone: LG-E610
Tu operador: Orange
 Cita: Originalmente Escrito por kriogeN Ver Mensaje
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();
}
Aja! ese método aun no lo conocía , gracias
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 17:13:33 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /