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 21/03/12, 12:38:02
Array

[xs_avatar]
monchyrcg monchyrcg no está en línea
Miembro del foro
 
Fecha de registro: sep 2011
Localización: Cartagena
Mensajes: 384
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
Volver atrás

Buenos días, estoy acabando casi mi aplicación (muy chorra pero mucho para mi). Os cuento más o menos (aunque el que haya seguido mis dudas más o menos sabra ) tengo mi aplicación que arranca con un bonito y unas banderas donde se puede pulsar y aparece un dialogo. Este dialogo tienes varios TextView y un par de botones.
Dos TextView acceden a dos intent uno que abre otra activity y otro que abre una pagina web. Todo esto me funciona perfecto el problema es que quiero que al volver de la pagina web y/o a de la otra activity ese dialogo no este. Actualmente hago en este cuando pulso en un textView

CÓDIGO: SELECCIONAR TODO
txtLink.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
dialog.dismiss();
Uri uri = Uri.parse("http://"+link);
Intent irA = new Intent(Intent.ACTION_VIEW);
irA.setData(uri);
startActivity(irA);
}
});


Si os dais cuenta antes de hacer nada hago un dialog.dismiss() pero aun así cuando vuelvo de la otra activity o de la pagina web me aparece el p**** dialogo.
Alguien me puede ayudar?

Muchas gracias un saludo!!!
Responder Con Cita


  #2  
Viejo 21/03/12, 13:59:24
Array

[xs_avatar]
tiotizo tiotizo no está en línea
Miembro del foro
 
Fecha de registro: dic 2011
Mensajes: 71
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
Por lo que he leido de actividades, en este caso, creo que se queda la actividad en pausa, por lo que deberias usar el metodo onrelease...

Creo...

Porque no llevo mucho en esto.. espero haberte ayudado..

Salu2
Responder Con Cita
  #3  
Viejo 21/03/12, 15:26:58
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
Efectivamente la activity entra en pausa, pero siempre termina la ejecución, aunque pongas código posterior al startActivity ese código se ejecutará, incluso aunque pongas un finish, lo que viene después del finish también se ejecutará. Y encima en este caso el dismiss del cuadro de dialogo está puesto antes del startActivity

¿Si quitas el startActivity el cuadro si se va?

En ese caso deberías de comprobar lo que hace la Activity en los métodos : onStart() y onResume(), porque en alguno de los 2 tiene que estar volviendo a crear el cuadro.
Responder Con Cita
  #4  
Viejo 21/03/12, 16:06:09
Array

[xs_avatar]
monchyrcg monchyrcg no está en línea
Miembro del foro
 
Fecha de registro: sep 2011
Localización: Cartagena
Mensajes: 384
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
kriogeN, da lo mismo donde ponga el dismiss porque cuando vuelvo a la actividad principal sigue apareciendo. Por otra parte los métodos onStart() y onResume() no los uso en mi aplicacion, Se hace todo desde el método onCreate().

En este método llamo a otro que se llama hacerDialogo(String a, String b,...) donde le paso cuatro string y devuelve el Dialog, este dialogo se le paso al constructur de otra clase que es el encargado de mostartlo.
Mas o menos:

Código:
public class Main extends MapActivity{
onCreate(){ ....... Dialog a = hacerDialog(String a, String b,String c, String d); ClaseB clase = new ClaseB(a); }
}
public class ClassB { private Dialog a; public ClassB(Dialog dialog){ a=dialog; } private void show(){ dialog.show(); } }
Responder Con Cita
  #5  
Viejo 21/03/12, 17:24:34
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
Pero no has respondido a mi pregunta, mi pregunta es si haciendo el dismiss sin lanzar la otra activity se quita el cuadro o no, porque si no se quita deberías empezar por ahí.

Y luego otra cosa, ¿como vuelves desde la otra activity? ¿haces un finish o creas a una nueva Main?
Responder Con Cita
  #6  
Viejo 21/03/12, 21:49:33
Array

[xs_avatar]
monchyrcg monchyrcg no está en línea
Miembro del foro
 
Fecha de registro: sep 2011
Localización: Cartagena
Mensajes: 384
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
En cuanto a la primera pregunta, el dismiss funciona perfectamente.
La segunda pregunta no he hecho nada especifico referente a eso. Solo le doy para atrás y ya esta.
Sinceramente no lo entiendo, si primero hago un dismiss el dialogo se cierra y luego hace lo que siga, da igual que sea un intent que sea lo que sea no?
Responder Con Cita
  #7  
Viejo 21/03/12, 21:58:12
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
Ponle un log.d en el OnCreate a ver si es que te lo está volviendo a ejecutar, pero no debería pasar.
Responder Con Cita
  #8  
Viejo 21/03/12, 22:18:49
Array

[xs_avatar]
monchyrcg monchyrcg no está en línea
Miembro del foro
 
Fecha de registro: sep 2011
Localización: Cartagena
Mensajes: 384
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
Se trata de un MapActivity con objetos ItemizedOverlay y al pulsar sobre estos objetos aparece el dialogo. Si necesitas código decirlo!!
Responder Con Cita
  #9  
Viejo 21/03/12, 22:41:43
Array

[xs_avatar]
tiotizo tiotizo no está en línea
Miembro del foro
 
Fecha de registro: dic 2011
Mensajes: 71
Modelo de smartphone: LG Optimus Black
Tu operador: Orange
 Cita: Originalmente Escrito por monchyrcg Ver Mensaje
Se trata de un MapActivity con objetos ItemizedOverlay y al pulsar sobre estos objetos aparece el dialogo. Si necesitas código decirlo!!
Creo que lo que te quiere decir el compañero, es que si tu destruyes el dialogo, y luego vuelve aparecer puede ser por dos razones:

1.- Que no se destruya bien, y siga ahi, cuando vuelves...
2.- Que se destruya y se vuelva a crear en alguna parte.

De ahi que se te comente que mires los metodos de creacion y destruccion para detectar donde esta el problema...

Si la destruccion esta correcta, entonces es que se vuelve a crear,
Segun este grafico:



solo algunos procesos se llaman al inicio o al retomar, que creo que tienes ke tener en cuenta.

Que no se.....Que a lo mejor, es otra cosa, pero tiene pinta de que sera algo de esto...

Salu2

Responder Con Cita
Respuesta

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



Hora actual: 03:42:20 (GMT +2)



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

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