Foros del Web » Programando para Internet » Android »

[SOLUCIONADO] Enviar item ListView

Estas en el tema de Enviar item ListView en el foro de Android en Foros del Web. Buenas noches chicos, me he encontrado un problema que aparentemente parece sencillo, pero no logro sacar los conceptos en claro. Vamos a ver la cuestion ...
  #1 (permalink)  
Antiguo 07/04/2013, 15:46
Usuario no validado
 
Fecha de Ingreso: abril-2012
Mensajes: 134
Antigüedad: 8 años, 9 meses
Puntos: 0
Enviar item ListView

Buenas noches chicos, me he encontrado un problema que aparentemente parece sencillo, pero no logro sacar los conceptos en claro.

Vamos a ver la cuestion es la siguiente, tengo un listview y quiero que al pulsar un item se pase el texto de ese item a un textview de otra actividad.

Este es la actividad 1:
Código:
OnItemClickListener onItemClickListener = new OnItemClickListener() {

		@Override
		public void onItemClick(AdapterView<?> parent, View v, int pos,
				long id) {
			Intent intent = new Intent(CampeonatosDisponibles.this, DatosCampeonato.class);
			intent.putExtra("campeonato", datos.get(pos).toString());
			startActivity(intent);
			
		}
	};
Y quier recibirlo en otra actividad en este caso la 2:
Código:
protected void onCreate(Bundle savedInstanceState) {
		
		super.onCreate(savedInstanceState);
		setContentView(R.layout.datos_campeonato);

		TextView nombre = (TextView) findViewById(R.id.tv_campeonato);
		Bundle bundle = getIntent().getExtras();
		nombre.setText(bundle.toString());
	}
:

Pero lo que me muestra es un mensaje raro en vez del texto del item.
  #2 (permalink)  
Antiguo 08/04/2013, 14:26
 
Fecha de Ingreso: abril-2011
Ubicación: Alicante
Mensajes: 52
Antigüedad: 9 años, 8 meses
Puntos: 3
Respuesta: Enviar item ListView

Solo te falta una linea de código en la parte donde recoges el intent.

Código:
String miDato = bundle.getString("campeonato");
nombre.setText(miDato);
o también

Código:
nombre.setText(bundle.getString("campeonato");
Recuerda que para poder recoger los datos de un intent necesitas usar el string que le asignaste para enviar el dato, a ese string lo llamaste campeonato en esta línea.

Código:
intent.putExtra("campeonato", datos.get(pos).toString());
Ya me cuentas que tal...Saludos.
  #3 (permalink)  
Antiguo 08/04/2013, 17:16
Usuario no validado
 
Fecha de Ingreso: abril-2012
Mensajes: 134
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Enviar item ListView

Gracias por la info, asi lo intente y me daba error, el problema era string, lo he hecho con:

Código:
Bundle extras = getIntent().getExtras();
		if(extras!=null){
			// cojo la cadena recibida
			CharSequence cadenaRecibida = extras.getString("campeonato");
			//La pongo en el texview
			tv_campeonato.setText("CAMPEONATO: " + cadenaRecibida);
		}
  #4 (permalink)  
Antiguo 08/04/2013, 17:35
 
Fecha de Ingreso: abril-2011
Ubicación: Alicante
Mensajes: 52
Antigüedad: 9 años, 8 meses
Puntos: 3
Respuesta: Enviar item ListView

Amm vale. Me alegro! Lo tendré en cuenta aunque yo si que lo he hecho con Strings... A lo mejor es debido al API en el que estás trabajando no te peremite hacer eso. ¿Cuál es?
  #5 (permalink)  
Antiguo 08/04/2013, 17:39
Usuario no validado
 
Fecha de Ingreso: abril-2012
Mensajes: 134
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Enviar item ListView

Te edito he probado con otra actividad y funciona tu forma....jajajaja
la habria cagado en algo seguro y el estres no me dejaba verlo.
  #6 (permalink)  
Antiguo 12/04/2013, 04:15
 
Fecha de Ingreso: abril-2011
Ubicación: Alicante
Mensajes: 52
Antigüedad: 9 años, 8 meses
Puntos: 3
Respuesta: Enviar item ListView

jajajaja suele pasar....

Etiquetas: activity, item, layout, listview
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:27.