GridLayout no Android, Entendendo e Utilizando

Investir em Você é Barra de Ouro a R$ 2,00. Cadastre-se e receba grátis conteúdos Android sem precedentes! Você receberá um email de confirmação. Somente depois de confirma-lo é que eu poderei lhe enviar os conteúdos semanais exclusivos. Os artigos em PDF são entregues somente para os inscritos na lista.

Email inválido.
Blog /Android /GridLayout no Android, Entendendo e Utilizando

GridLayout no Android, Entendendo e Utilizando

Vinícius Thiengo
(13089) (6)
Go-ahead
"O método consciente de tentativa e erro é mais bem-sucedido que o planejamento de um gênio isolado."
Peter Skillman
Prototipagem Android
Capa do curso Prototipagem Profissional de Aplicativos
TítuloAndroid: Prototipagem Profissional de Aplicativos
CategoriasAndroid, Design, Protótipo
AutorVinícius Thiengo
Vídeo aulas186
Tempo15 horas
ExercíciosSim
CertificadoSim
Acessar Curso
Quer aprender a programar para Android? Acesse abaixo o curso gratuito no Blog.
Lendo
TítuloTest-Driven Development: Teste e Design no Mundo Real
CategoriaEngenharia de Software
Autor(es)Mauricio Aniche
EditoraCasa do Código
Edição1
Ano2012
Páginas194
Conteúdo Exclusivo
Investir em Você é Barra de Ouro a R$ 2,00. Cadastre-se e receba gratuitamente conteúdos Android sem precedentes!
Email inválido

Tudo bem?

Na vídeo aula acima nós vamos, passo a passo, destrinchar o componente GridLayout, um componente Android de layout.

Este que para mim é nada mais nada menos que uma maneira simples de conseguir trabalhar com grids em layouts Android sem precisar de algum framework de lista para isso (GridView ou RecyclerView, no caso).

Com o GridLayout nós desenvolvedores não temos um adapter em mãos, ou seja, todo o preenchimento do grid terá que ser na unha:

  • ou no XML do layout;
  • ou no código dinâmico (Java ou Kotlin, por exemplo);
  • ou parte no XML e parte no código dinâmico.

E como indiquei também no conteúdo sobre o GridView, indico aqui:

Somente não utilize o RecyclerView com algum dos LayoutManagers de grid (StaggeredGridLayoutManager e GridLayoutManager) se realmente não for possível.

Caso contrário opte por utilizar o RecyclerView, pois é mais moderno e melhora a performance de apresentação do layout.

De qualquer forma, não deixe de dominar também o GridLayout, assim como informei no artigo sobre o GridView.

Isso, pois é bem provável que você como desenvolvedor Android profissional ainda o encontre em projetos Android que estão em processo de refatoração, manutenção.

E, mesmo que seja algo próximo do "utópico", pode ser necessário ter o GridLayout (assim como o GridView) como uma de suas "cartas na manga" para layouts que estão com interfaces definidas de uma maneira onde uma Toolkit UI ou o RecyclerView não sejam melhores escolhas.

Um aviso importante em relação à vídeo aula:

Dê atenção especial ao trabalho com os atributos layout_row e layout_column.

Ambos são o "coração" do GridLayout.

Diagrama do componente visual GridLayout

E saiba que os componentes ScrollView e HorizontalScrollView serão utilizados para o projeto de exemplo, apenas como meros complementos.

E antes que você já prossiga com a aula...

... não deixe de também dominar o assunto Material Design Android, pois essa é a linguagem de design dos aplicativos desta plataforma.

Então é isso.

A seguir deixo alguns bons links de outros artigos aqui do Blog, acompanhados de seus respectivos vídeos, que lhe colocarão em dia com o que há de novo no desenvolvimento de apps Android:

E caso você tenha o desejo de aprender a desenvolver apps Android, ou apenas evoluir nesta área, também com o conteúdo gratuito do Blog, então não deixe de acessar a lista exclusiva de estudos em:

E também não esqueça de se inscrever 📫 na lista de e-mails do Blog para receber os conteúdos de desenvolvimento Android em primeira mão.

E receber também os conteúdos em suas versões em PDF (versões liberadas somente aos inscritos da lista de e-mails).

Se inscreva também no canal do Blog no YouTube para acompanhar as últimas novidades.

Surgindo dúvidas ou dicas, pode enviar abaixo na área de comentários que logo eu lhe retorno.

Obs. : o link para download do projeto apresentado na vídeo aula se encontra logo abaixo no artigo, na seção "Download".

Abraço.

Eclipse IDE vs Android Studio IDE

Apesar do conteúdo da vídeo aula acima estar utilizando o Eclipse IDE 😱, tudo que é apresentado, tanto a parte teórica quanto a parte prática, é ainda válido nos dias de hoje com o desenvolvimento Android utilizando o Android Studio 😁.

Ou seja, independente da linguagem oficial (Java, Kotlin, C ou C++), IDE ou framework que você esteja utilizando, o conteúdo acima é ainda muito útil.

AndroidX

Apesar do conteúdo sobre o componente GridLayout ainda estar atual e ser importante para qualquer nível de desenvolvedor Android.

Apesar disso eu também recomendo, assim que finalizado o projeto em sua própria instalação de IDE, que você o migre para o AndroidX.

Algo que pode ser feito com poucos cliques, como apresentado no tutorial a seguir: Migrar para o AndroidX.

Fonte

Documentação oficial GridLayout Android

Investir em Você é Barra de Ouro a R$ 2,00. Cadastre-se e receba grátis conteúdos Android sem precedentes!
Email inválido

Relacionado

TableLayout no Android, Entendendo e UtilizandoTableLayout no Android, Entendendo e UtilizandoAndroid
RelativeLayout no Android, Entendendo e UtilizandoRelativeLayout no Android, Entendendo e UtilizandoAndroid
AbsoluteLayout no Android, Entendendo e UtilizandoAbsoluteLayout no Android, Entendendo e UtilizandoAndroid
ScrollView e HorizontalScrollView no Android, Entendendo e UtilizandoScrollView e HorizontalScrollView no Android, Entendendo e UtilizandoAndroid

Compartilhar

Comentários Facebook

Comentários Blog (6)

Para código / script, coloque entre [code] e [/code] para receber marcação especifica.
Forneça seu nome válido.
Forneça seu email válido.
Forneça o comentário.
Enviando, aguarde...
Geferson (1) (0)
29/01/2019
Thiengo blz? mano como consigo criar um grid estilo instagram com fotos e videos? existe alguma lib pra isso? obrigado.
Responder
Vinícius Thiengo (0) (0)
04/02/2019
Geferson, tudo bem?

Você consegue sim criar um grid como o do Instagram, até mesmo utilizando o GridLayout / GridView.

Mas a responsabilidade de apresentar vídeo ou imagem fica com a lógica de negócio empregada no adapter do framework de lista que está sendo utilizado.

Por exemplo:

-> É possível ter um layout de item que contenha um ImageView para fotos e um VideoView para vídeos;

-> No método getView() de um GridLayout terá a lógica de negócio que identificará que no objeto tem uma imagem (ou um vídeo) e então esconderá o VideoView e apresentará o ImageView, e vice-versa.

Geferson, mesmo sabendo da simplicidade de uso do GridLayout ou GridView, recomendo que você utilize grid por meio do RecyclerView, isso com o LayoutManager GridLayoutManager.

Falo um pouco mais sobre o RecyclerView nos links a seguir:

-> RecyclerView, Material Design Android - Parte 2: https://www.thiengo.com.br/recyclerview-material-design-android-parte-2

-> Animação, onLongPress e GridLayoutManager em RecyclerView, Material Design Android - Parte 3: https://www.thiengo.com.br/animacao-onlongpress-e-gridlayoutmanager-em-recyclerview-material-design-android-parte-3

No link abaixo tem algumas APIs que podem lhe ajudar na construção de um app similar ao Instagram:

-> Android-Arsenal: https://android-arsenal.com/search?q=instagram

Abraço.
Responder
05/11/2018
Curso de programador
Responder
Vinícius Thiengo (0) (0)
05/11/2018
Domingos, tudo bem?

A seguir um link com meus três livros e um curso em vídeo (186 vídeo aulas) sobre desenvolvimento Android:

https://www.thiengo.com.br/livro-desenvolvedor-kotlin-android

Qualquer dúvida, pode perguntar.

Abraço.
Responder
Henrique (2) (0)
12/11/2015
Ola Thiengo vc poderia fazer um material sobre GridView com evento multiplos de itens selecionados.
Responder
Vinícius Thiengo (0) (0)
14/11/2015
Fala Henrique, blz?
Veja se esse vídeo (http://www.thiengo.com.br/animacao-onlongpress-e-gridlayoutmanager-em-recyclerview-material-design-android-parte-3 ) que tem o GridLayoutManager no RecyclerView não lhe ajuda em algo. Abraço
Responder