Eu sou novo no desenvolvimento Android e continuo encontrando referências a Inflating views a partir de um arquivo xml de layout. Pesquisei no Google e procurei no guia de desenvolvimento, mas ainda não consegui entender o que significa. Se alguém pudesse fornecer um exemplo muito simples, seria muito apreciado.
android
android-inflate
Brendan Weinstein
fonte
fonte
findViewById
os objetos de exibição já estão na memória, e a única razão para fazê-lo é obter uma referência a esse objeto em particular (para alterá-lo ou extrair dados dele)."Aumentar" uma visualização significa pegar o XML do layout e analisá-lo para criar os objetos de visualização e grupo de visualizações a partir dos elementos e seus atributos especificados e, em seguida, adicionar a hierarquia dessas visualizações e grupos de visualização ao ViewGroup pai. Quando você chama setContentView (), ele anexa as visualizações criadas pela leitura do XML à atividade. Você também pode usar o LayoutInflater para adicionar visualizações a outro ViewGroup, o que pode ser uma ferramenta útil em várias circunstâncias.
fonte
Inflar é o processo de adicionar uma visualização (.xml) à atividade no tempo de execução. Quando criamos um listView, inflamos cada um de seus itens dinamicamente. Se queremos criar um ViewGroup com várias visualizações, como botões e visualização de texto, podemos criar da seguinte maneira:
Em seguida, precisamos criar um layout no qual possamos adicionar as visualizações acima:
E agora, se queremos adicionar um botão no canto direito e uma exibição de texto na parte inferior, temos que fazer muito trabalho. Primeiro instanciando as propriedades da visualização e aplicando várias restrições. Isso consome tempo.
O Android facilita a criação de um .xml simples e o design de seu estilo e atributos em xml e, em seguida, basta inflá-lo onde for necessário, sem a necessidade de definir restrições programaticamente.
fonte
Acho que aqui "inflar uma vista" significa buscar o arquivo layout.xml, desenhando uma vista especificada nesse arquivo xml e POPULATING (= inflar) o viewGroup pai com a View criada.
fonte
Uma definição leiga para inflação pode ser converter o código XML em código Java. Apenas uma maneira de entender, por exemplo, se tivermos uma tag em XML, o SO precisará criar um objeto Java correspondente na memória, para que o inflatter leia as XMLtags e crie os objetos correspondentes em Java.
fonte
Como transformamos a interface do usuário em XML, mas visualizamos objetos, é o que exibimos. Por isso, de alguma forma, precisamos converter xml em objetos de exibição para inflar significa que estamos convertendo xml em objetos de exibição para que possam ser exibidos. Para isso, precisamos de um serviço chamado layout inflator service e dê a ele um xml e ele será convertido para você.
fonte