PDA

Ver la Versión Completa : recoger datos de un listView


tostring
23/11/14, 01:36:37
Buenas, para pasar los datos desde un listview generado por una base de datos lo hago mediante Intent y capturando el valor con

intent.putExtra("curso", listView.getItemAtPosition(position).toString());

Para recogerlos lo hago con Bundle:

Bundle bundle = getIntent().getExtras();
String miDato = bundle.getString("curso");
nombre.setText(miDato);

El problema es que lo que recibo es en forma de array

{valor=primer curso}

He intentado de varias forma y no consigo capturar sólo el string "primer curso" ya que es lo que se muestra en el listview, alguna sugerencia? Gracias!

rafaxplayer
23/11/14, 08:57:15
por lo que veo usas un listener onItemclick o alertdialog , has probado mejor acceder al textview en concreto del adapter? , algo asi;

String s =(String) ((TextView) view.findViewById(R.id.myNr)).getText();

tostring
23/11/14, 13:52:17
Pues sí uso un public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

Tu sugerencia está genial, quiero decir que lo suyo sería conseguir el texto que hay en ese textview en concreto, pero no termino de hacerlo, al final lo he solucionado haciendo un:

int inicio = miDato.indexOf("-");
int fin = miDato.indexOf("}", inicio + 1);
nombre.setText(miDato.substring(inicio + 1, fin));

Y así he eliminado todo lo que no me interesaba y me he quedado sólo con el nombre. Pero si me das algunas indicaciones más concretas de como acceder mejor al textview del adaptador sería genial!, gracias.

rafaxplayer
24/11/14, 08:36:49
lo suyo seria ver como tienes el adapter