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


 
Herramientas
  #1  
Viejo 16/04/13, 18:57:51
Avatar de jekeyeke
jekeyeke jekeyeke no está en línea
Usuario muy activo
Mensajes: 1,286
 
Fecha de registro: ago 2011
Localización: Islas Canarias
Mensajes: 1,286
Modelo de smartphone: Motorola Moto G3
Tu operador: Simyo
Mencionado: 0 comentarios
Tagged: 0 hilos
ExpandableListView

Buenas a todos nuevamente,


Sigo en la pelea con el ExpandableListView y parece que solo me falta una cosilla, pero no consigo hacerla, por lo que acudo nuevamente aquí.

Creo que lo tengo todo bien, salvo que no consigo como obtener el dato que tengo relleno en un:

datosPuntos datoPto = new datosPuntos(c.getInt(0),c.getString(1));
Puntos.add(new ArrayList<ArrayList<datosPuntos>>());
Puntos.get(j).add(new ArrayList<datosPuntos>());
Puntos.get(j).get(k).add(datoPto);

donde datosPuntos es una clase con los siguientes datos:
public datosPuntos(int id, String nombre){
this.nombre = nombre;
this.id = id;
}

Y Puntos es Puntos = new ArrayList<ArrayList<ArrayList<datosPuntos>>>();

En el public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent), tengo que asignarle a la variable hijo el contenido del primer hijo del grupo 1, mediante la siguiente sentencia:
String hijo = getChild(groupPosition,ChildPosition);

Donde la función es

public ArrayList<datosPuntos> getChild(int groupPosition, int childPosition) {
return Puntos.get(groupPosition).get(childPosition);
}

Pero claro, el problema está en que no sé como acceder al método getNombre que tiene la clase datosPuntos para podérselo asignar a la variable hijo.

Espero haberme explicado y que me puedan ayudar.

Muchas gracias.



Saludos!

Última edición por jekeyeke Día 22/04/13 a las 18:04:20
Responder Con Cita


  #2  
Viejo 17/04/13, 16:19:51
Avatar de rinxe
rinxe rinxe no está en línea
Miembro del foro
Mensajes: 260
 
Fecha de registro: mar 2009
Localización: Teruel
Mensajes: 260
Modelo de smartphone: Xiaomi Mi5S
Versión de ROM: LineageOS 14.1
Versión de Radio: Los 40
Tu operador: Yoigo
Mencionado: 0 comentarios
Tagged: 0 hilos
Si he entendido bien, Puntos es un objeto donde almacenas una posicion Int y un nombre String. Y quieres recuperar el String de una posicion determinada..

La cosa seria algo asi como;
Puntos.get("posicion").getNombre();

Con esto solo consigues que te devuelva la posicion:
return Puntos.get(groupPosition).get(childPosition);
Responder Con Cita
Gracias de parte de:
  #3  
Viejo 18/04/13, 19:06:24
Avatar de jekeyeke
jekeyeke jekeyeke no está en línea
Usuario muy activo
Mensajes: 1,286
 
Fecha de registro: ago 2011
Localización: Islas Canarias
Mensajes: 1,286
Modelo de smartphone: Motorola Moto G3
Tu operador: Simyo
Mencionado: 0 comentarios
Tagged: 0 hilos
Gracias por la respuesta rinxe,

Al final lo conseguí más o menos como tu me dices.
Pongo el código:

Cambié el tipo de dato devuelto por getChild

public String getChild(int groupPosition, int childPosition) {
return datosUsuarios.Puntos.get(groupPosition).get(childP osition).getNombre();
}

Y en la llamada simplemente String hijo = (String) getChild(groupPosition,childPosition);

Así de sencillo


Un saludo!
Responder Con Cita
Respuesta

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


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: 10:27:02 (GMT +1)

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