|
||
|
|
|
|||||||
| 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
|
||||
|
||||
|
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. |
|
|
|
#2
|
||||
|
||||
|
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);
__________________
Visita mi blog: EL BAUL DE ANDROID
|
| Gracias de parte de: | ||
|
#3
|
||||
|
||||
|
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! |
![]() |
Estás aquí
|
||||||
|
||||||