Como escrever ExpandableListAdapter personalizado

Eu estou olhando para escrever o meu próprioExpandableListAdapter que opera de maneira semelhante aArrayAdapter. Meu modelo de dados é este:

public class Group {

    private String name;   

    private List<Child> children;
}

public class Child {

     private String name;
}

Bem simples. Como posso mapear esse relacionamento em umExpandableListAdapter implementação? Eu tenho um trabalhoSimpleExpandableListAdapter funcionando agora, mas preciso de mais controle personalizado sobre os itens (exibindo ícones etc.). O que devo fazer para isso?

O principal é que eu preciso de umadd() método para poder adicionar grupos e invalidar a lista quando filhos são adicionados e removidos do adaptador. Estou realmente surpreso que não exista uma implementação no SDK (mesmo que abstrata) que ajude a conseguir isso.

questionAnswers(4)

yourAnswerToTheQuestion