Hola.
Estoy intentando inflar dos Layouts al mismo tiempo en un ListView. En realidad lo he conseguido pero no exactamente de la manera que yo quería.
Este es el código del método getView de mi adaptador.
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View v = convertView;
//Create InstalacionEnLista object
Instalacion inst = items.get(position);
int id = inst.getIdCategoria();
if(id == 1){
if (convertView == null || convertView.findViewById(R.id.custom_todaslasinstalaciones_categoria_header_titulo)==null)
{
LayoutInflater inf = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = inf.inflate(R.layout.custom_todaslasinstalaciones_header_categoria, null);
TextView nombreCategoria = (TextView) v.findViewById(R.id.custom_todaslasinstalaciones_categoria_header_titulo);
nombreCategoria.setText("Esto es una categoria");
}
}else{
LayoutInflater inf = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = inf.inflate(R.layout.custom_todaslasinstalaciones_conflecha, null);
TextView nombre = (TextView) v.findViewById(R.id.custom_todaslasinstalaciones_conflecha_tvnombreinstalacion);
nombre.setText(inst.getNombre());
}
return v;
}
Como veis, si el id es igual a 1, entonces se infla un Llayout indicando el nombre de una categoría. De lo contrario se infla otro.
Lo que yo deseo es que si el id equivale a uno se inflen los dos. Porque necesito que se infle el Layout para la categoría pero también para el elemento que se esta tratando.
Es decir, tal y como esta ahora, el elemento con el ideCategoria igual a 1 no se infla. Solo se infla su categoria.
No sé si me he explicado correctamente.
Gracias y un saludo.