Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida sobre o LayoutInflater

No decorrer da última aula do tópico 3, é mencionado a utilização do parâmetro "false" no inflate do LayoutInflater, pois causaria uma exception. Há algum exemplo em que haja o uso do "true" para este caso.

inflater.inflate(R.layout.list_item, parent, false);
2 respostas
solução!

Quando fazemos...

inflater.inflate(R.layout.list_item, parent, false);

... estamos dizendo:

"Transforme o XML list_item numa View e use o parent como referência para propriedades como layout_width="match_parent" que estiverem na primeira tag daquele XML. Porém, não quero que essa View criada seja adicionada como filha de parent."

Quando estamos num adapter e fazemos esse inflate para cada linha não queremos que a linha seja adicionada direto ao parent pois quem faz esse trabalho é o próprio adapter, quando retornamos no getView essa View inflada.

Se no momento do inflate passarmos true, a View criada já será adicionada como filha do parent e, quando o adapter pegar essa View e tentar adicionar novamente ao mesmo parent termos um erro do tipo: "A View já tem um pai".

Passar true no momento do inflate faz sentido quando estamos construindo um layout de forma programática, mas combinando (ou reaproveitando) layouts já escritos em XML.

Obrigado pela resposta Felipe Torres.