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

Suporte de layout a diferentes tamanhos de dispositivos

Pessoal, diferente do iOS, o Android tem N telas para os pobres desenvolvedores darem suporte...

Vou falar um pouco da forma que eu trabalho para dar suporte a tantas telas, mas gostaria muito de saber de vocês qual a técnica que utilizam e qual a melhor técnica que conhecem para isso.

  1. Primeiro eu sempre testo em três tamanhos de telas:

    • 2.7" (240 x 320)
    • 3.7" (480 x 800)
    • 4.7" (768 x 1280)
  2. Para evitar criar arquivos layout para diferentes telas (ex: um para hdpi outro para xxhdpi e assim por diante) e ter que dar manutenção em um monte de xml praticamente eu identico, eu sempre desenho orientado ao menor tamanho que é a 2.7", vou fazendo de uma forma que os elementos caibam nesse tamanho de tela e dai vou testando nos outros tamanhos que mencionei acima.

  3. No último caso, quando realmente não da para deixar o mesmo layout legal para os três tamanhos, eu crio a pasta "values" de cada tamanho (ex values-hdpi, values-xhdpi) e nelas eu crio o arquivo dimens.xml e nesse arquivo eu vou especificando o tamanho dos elementos que eu preciso de maior responsividade nas telas.

Eu faço dessa forma e vem dando certo, mas gostaria muito de saber de vocês o jeitão que fazem para adaptar as telas nessa loucura do Android.

Valeu!

7 respostas
solução!

Opa Bodão, blz?

Acredito que a técnica que você usa é boa sim. Eu abordo uma técnica similar a sua, ou seja, crio um layout para a menor tela que pretendo dar suporte e vou testando em aparelhos maiores.

Caso o layout mantenha o mesmo aspecto visual em outras telas mudando apenas os valores de tamanhos, como das views, fontes e etc, uso a abordagem de gerar o values e aplicar os valores desejados conforme a divisão de tamanho de delas sugerida pelo Android, conforme você mencionou.

Agora se a tela muda conforme vai aumentando, aí eu crio um layout novo implementando as mudanças.

[]s

É isso aí... bom saber que mais pessoas usam a técnica parecida.

Valeu!

Alex, por curiosidade, qual é esse menor tamanho de tela que você costuma implementar o layout?

Opa Bodão, sobre essa parte de tela eu tenho analisado bastante a API mínima que estou dando suporte, por exemplo, se eu der suporte para API acima do Android 5 eu tento pegar um tamanho mínimo da maioria dos devices que usam essa API. No geral, estou visando telas de no mínimo 3.5", porém, estou visando em começar a dar suporte para telas de 4", pois cada vez mais os celulares vem com telas maiores.

[]s

Legal!! E tem algum site que você costuma ver o tamanho mínimo da maioria dos devices da API?

Nesse caso eu não tenho um site específico, eu fico navegando no Google mesmo hehe

Claro, eu corro o risco de não pegar o menor possível... Nesse caso, é adaptar após um feedback de um usuário, dificilmente acertamos tudo de primeira.

Típico caso que a App funciona em tudo quanto é dispositivo mas não funciona no Galaxy Pocket Mini XPTO.

Valeu Alex! As dicas estão me ajudando... Por gentileza quanto tiver um tempinho dê uma olhada em outro post meu nesse mesmo fórum perguntando sobre Material Spinner... acho que você pode dar uma boa ajuda lá.