Home Menu

Menu



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  
Viejo 22/03/13, 02:04:21
Avatar de Millas
Millas Millas no está en línea
Miembro del foro
Mensajes: 79
 
Fecha de registro: dic 2009
Localización: Valencia
Mensajes: 79
Modelo de smartphone: SAMSUNG GALAXY NEXUS
Tu operador: Vodafone
Mencionado: 0 comentarios
Tagged: 0 hilos
onActivityResult antes de tiempo

Hola, no llevo mucho con android.. pero cada día me sale una traba nueva. El tema es que estoy intentando pasar a una clase un objeto de una actividad.. vamos.. comunicación entre actividades. Y resulta que el método onActivityResult de la primera actividad se ejecuta antes que la segunda actividad.. por tanto no devuelve nada.. a ver si alguien me puede ayudar.

Os dejo un poco de código:

Primera actividad:

public void lanzarUsuarios(View view) {

Intent i = new Intent(this, ListaUsuarios.class);
this.startActivityForResult(i,0);

}


@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
Bundle extras = data.getExtras();

switch (requestCode) {
case 0:
usuarioActual = (Usuario) extras.get("usuario");
lanzarSalones(null);
break;
}
}




Segunda actividad:

public void onItemClick(AdapterView<?> arg0, View arg1, int position,
long arg3) {
// TODO Auto-generated method stub

Usuario usuario = (Usuario) lista.getItemAtPosition(position);
Log.w(TAG, "ID = "+ usuario.getIDUsuario() + "; Nombre = " +usuario.getNombre());

Intent dato = new Intent();
dato.putExtra("usuario", usuario);
setResult(RESULT_OK, dato);
finish();
}
Responder Con Cita


  #2  
Viejo 22/03/13, 09:43:04
Avatar de pernath
pernath pernath no está en línea
Miembro del foro
Mensajes: 83
Compra y venta: (1)
 
Fecha de registro: may 2011
Mensajes: 83
Modelo de smartphone: LG optimus 2x
Tu operador: Movistar
Mencionado: 0 comentarios
Tagged: 0 hilos
Buenas,

Por lo que veo en el código pasas parámetros entre actividades.

Puedes probar en trabajar con "shared preferences" y seguramente no te dará problemas.

De esta manera es como si tuvieras una variable global a la que siempre puedes acceder desde cualquier activity.

Bueno espero que te ayude.

Un saludo.
Responder Con Cita
  #3  
Viejo 22/03/13, 18:06:24
Avatar de Millas
Millas Millas no está en línea
Miembro del foro
Mensajes: 79
 
Fecha de registro: dic 2009
Localización: Valencia
Mensajes: 79
Modelo de smartphone: SAMSUNG GALAXY NEXUS
Tu operador: Vodafone
Mencionado: 0 comentarios
Tagged: 0 hilos
Cita:
Originalmente Escrito por pernath Ver Mensaje
Buenas,

Por lo que veo en el código pasas parámetros entre actividades.

Puedes probar en trabajar con "shared preferences" y seguramente no te dará problemas.

De esta manera es como si tuvieras una variable global a la que siempre puedes acceder desde cualquier activity.

Bueno espero que te ayude.

Un saludo.
No se lo que es, voy a buscar información.
Es como atributos estáticos!?

Gracias
Responder Con Cita
  #4  
Viejo 22/03/13, 18:12:08
Avatar de Millas
Millas Millas no está en línea
Miembro del foro
Mensajes: 79
 
Fecha de registro: dic 2009
Localización: Valencia
Mensajes: 79
Modelo de smartphone: SAMSUNG GALAXY NEXUS
Tu operador: Vodafone
Mencionado: 0 comentarios
Tagged: 0 hilos
No pinta mal.. pero en mi programa hay una constante comunicación con una base de datos externa, y creo que para algunas cosas me va a interesar la comunicación de actividades si o si.. mas que nada por cómo tengo montando las vistas y tal..

¿Alguna solución a que OnActivityResult no se ejecute antes de tiempo!?
Responder Con Cita
  #5  
Viejo 22/03/13, 18:25:47
Avatar de mocelet
mocelet mocelet no está en línea
Desarrollador
Mensajes: 2,203
 
Fecha de registro: may 2011
Localización: Madrid
Mensajes: 2,203
Tu operador: -
Mencionado: 17 comentarios
Tagged: 2 hilos
¿Cómo tienes definida la actividad ListaUsuarios en el AndroidManifest.xml? Por lo visto si la defines como singleTask o singleInstance no puedes llamar al startActivityForResult (no tendría mucho sentido y por eso devuelve el no-resultado enseguida).

Fuente: http://stackoverflow.com/questions/3...ed-prematurely
Responder Con Cita
  #6  
Viejo 22/03/13, 18:29:00
Avatar de Millas
Millas Millas no está en línea
Miembro del foro
Mensajes: 79
 
Fecha de registro: dic 2009
Localización: Valencia
Mensajes: 79
Modelo de smartphone: SAMSUNG GALAXY NEXUS
Tu operador: Vodafone
Mencionado: 0 comentarios
Tagged: 0 hilos
Cita:
Originalmente Escrito por mocelet Ver Mensaje
¿Cómo tienes definida la actividad ListaUsuarios en el AndroidManifest.xml? Por lo visto si la defines como singleTask o singleInstance no puedes llamar al startActivityForResult (no tendría mucho sentido y por eso devuelve el no-resultado enseguida).

Fuente: http://stackoverflow.com/questions/3...ed-prematurely
jajaja me acabo de dar cuenta y lo iba a comentar ahora!! era eso!!
Lo cambie porque al principio no me iba y entonces probé cosas raras.. pero ya está!!

Muchisimas gracias de todas formas!! ^^


Tema cerrado
Responder Con Cita
Respuesta

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

Herramientas

Reglas de Mensajes
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Las caritas están On
Código [IMG] está On
Código HTML está Off

Saltar a Foro



Hora actual: 01:36:48 (GMT +1)

Cookies
Powered by vBulletin™
Copyright © vBulletin Solutions, Inc. All rights reserved.
 
HTCMania: líderes desde el 2007