Avisos

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 14/10/15, 23:53:41
Array

[xs_avatar]
claudioestay.m91 claudioestay.m91 no está en línea
Usuario poco activo
 
Fecha de registro: nov 2014
Mensajes: 15
Modelo de smartphone: moto g 2013

pasar un String a otra clase

Hola, tengo una duda, resulta que quiero una url(imagen) mostrarlo en un ImageView.
Estoy trabajando con volley y SpreatSheet como Rest Api...
En un fragment implemento todo lo que es la parte de volley...
y recibo los datos. uno de esos datos lo intercepte y lo guarde en un String
de la siguiete forma:
String m = t.setImagen(jsonObject.getString("m"));
System.out.println(m);-->usado para comprobar que si estaba almacenada la url

y ese String quiero enviarlo a otra clase, pero estoy teniendo problemas con como hacerlo...
probe con el metodo de paso de parametros, pero en la clase donde voy a recibirlo, no puedo hacerlo por errores en el codigo, para ser especificos, no me reconoce el getIntent()
para poder seguir con la linea de codigo....
No se si fui claro en mi explicacion, pero necesito una forma de pasar ese String a mi clase CustomAdapter para poder generar su vista en el ImageView mendiante la url.
Responder Con Cita


  #2  
Viejo 16/10/15, 18:18:46
Array

[xs_avatar]
nstrikecs nstrikecs no está en línea
Usuario poco activo
 
Fecha de registro: jul 2015
Localización: Santiago
Mensajes: 12
Tu operador: ENTEL

Prueba con esto

En la clase de donde envias los datos :

Intent i=new Intent(this,Actividad2.class);
i.putExtra("direccion", et1.getText().toString());
startActivity(i);
Responder Con Cita
  #3  
Viejo 16/10/15, 18:22:13
Array

[xs_avatar]
nstrikecs nstrikecs no está en línea
Usuario poco activo
 
Fecha de registro: jul 2015
Localización: Santiago
Mensajes: 12
Tu operador: ENTEL

En la clase donde envias el String

Intent i=new Intent(this,Actividad2.class);
String m = t.setImagen(jsonObject.getString("m"));
i.putExtra("direccion", m);
startActivity(i);

y en la clase donde debe recibir el String :

en el metodo onCreate

{
Bundle bundle = getIntent().getExtras();
String m=bundle.getString("direccion");

}
Responder Con Cita
  #4  
Viejo 17/10/15, 05:46:58
Array

[xs_avatar]
claudioestay.m91 claudioestay.m91 no está en línea
Usuario poco activo
 
Fecha de registro: nov 2014
Mensajes: 15
Modelo de smartphone: moto g 2013

 Cita: Originalmente Escrito por nstrikecs Ver Mensaje
En la clase donde envias el String

Intent i=new Intent(this,Actividad2.class);
String m = t.setImagen(jsonObject.getString("m"));
i.putExtra("direccion", m);
startActivity(i);

y en la clase donde debe recibir el String :

en el metodo onCreate

{
Bundle bundle = getIntent().getExtras();
String m=bundle.getString("direccion");

}
Gracias por responder, de hecho así mismo lo estoy haciendo, pero me da error en el getIntent() de la clase receptora. Me sale tachado y lo marca como error.
Responder Con Cita
  #5  
Viejo 17/10/15, 12:18:44
Array

[xs_avatar]
Dexafree Dexafree no está en línea
Mr. FAQMan
· Votos compra/venta: (1)
 
Fecha de registro: dic 2008
Mensajes: 8,021
Modelo de smartphone: Samsung Galaxy S i9000 + Galaxy Tab 10.1 WiFi
Tu operador: Movistar
 Cita: Originalmente Escrito por claudioestay.m91 Ver Mensaje
e da error en el getIntent() de la clase receptora. Me sale tachado y lo marca como error.
Esta clase hereda de Activity/AppCompatActivity?
Tienes bien importado el SDK de Android?
Te da errores con otros métodos?
Qué te pone en el mensaje de error?
Responder Con Cita
  #6  
Viejo 17/10/15, 12:41:12
Array

[xs_avatar]
Expectro Expectro no está en línea
Usuario muy activo
 
Fecha de registro: jul 2011
Mensajes: 751
Modelo de smartphone: Nexus 5 32 GB Black
Tu operador: Jazztel
Si por alguna casualidad no pudieras, siempre puedes guardarlo con el SharedPreferences.

Por ejemplo:

Código:
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
sp.edit().putString("clave", "valor").commit();
y para recuperarlo:

Código:
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(context);
return sp.getString("valor", "valor default");

Última edición por Expectro Día 17/10/15 a las 13:06:51.
Responder Con Cita
  #7  
Viejo 17/10/15, 12:43:55
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
¿Quieres enviar un String a otra clase?

Como siempre digo, primero Java, luego Android. Hacer cosas simplemente "porque lo pone en los tutoriales" sin saber lo que verdaderamente está ocurriendo lleva a fallos de base muy graves.

[PHP]
public class A {

private String cadena;

public void setCadena(String cadena) {
this.cadena = cadena;
}
}
[/PHP]
[PHP]
public class B {

.............
A a = new A();
..............
String cadena = ..............
..............
a.setCadena(cadena);
}
[/PHP]

Con eso ya has pasado cadena de B a A.

El tema de usar el getIntent() y los Extras, como te ha dicho DexaFree, es sólo para Activity y sus subclases. Y se hace así porque cuando lanzas una nueva Activity no tienes ninguna referencia sobre ella, así que tienes que tener alguna forma de poder pasarle parámetros. Pero en el resto de clases del mundo, incluso los Fragment, puedes hacerle todos los set que quieras al objeto,
Responder Con Cita
Gracias de parte de:
  #8  
Viejo 20/10/15, 05:43:59
Array

[xs_avatar]
claudioestay.m91 claudioestay.m91 no está en línea
Usuario poco activo
 
Fecha de registro: nov 2014
Mensajes: 15
Modelo de smartphone: moto g 2013

Gracias por sus respuestas, habia probado de todo.
al final no se cual seria el problema, pero hoy entre a probar y si me tomaba el getIntent -.-
para dar el tema como resuelto, lo que hice fue esto:
Intent i = new Intent(getContext(), WebViewImg.class);
Bundle b = new Bundle();
b.putString("urlI", f);
i.putExtras(b);
getContext().startActivity(i);

y donde recibi:
Bundle bundle1 = getIntent().getExtras();
bundle1.getString("urlI"));
Responder Con Cita
  #9  
Viejo 20/10/15, 23:51:16
Array

[xs_avatar]
Dexafree Dexafree no está en línea
Mr. FAQMan
· Votos compra/venta: (1)
 
Fecha de registro: dic 2008
Mensajes: 8,021
Modelo de smartphone: Samsung Galaxy S i9000 + Galaxy Tab 10.1 WiFi
Tu operador: Movistar
Marcamos como solucionado
Responder Con Cita
Respuesta

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



Hora actual: 01:23:56 (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 / 邮件联系 /