Kivy - Influência do PPI nas interfaces gráficas
Nesse vídeo vamos aprender o que é DPI e PPI e como eles influenciam a criação de interfaces gráficas. Veremos alguns problemas comuns que acontecem ao rodar aplicativos em diferentes dispositivos, a causa do problema, como prever como ficará a interface em determinado dispositivo e como ajustar os parâmetros para que ela fique do jeito que foi planejada. Vamos também falar sobre o módulo Screen do Kivy, que nos ajudará a simular as telas de diversos dispositivos.
Desenvolver aplicativos que funcionam em diversos dispositivos diferentes não é uma tarefa fácil. Existem muitas diferenças envolvidas, tantos entre os sistemas operacionais quanto entre as próprias características do hardware utilizado.
Ao desenvolver interfaces gráficas, tendo em mente à aplicação em dispositivos distintos, é necessário considerar o PPI da tela. PPI (em inglês Pixel Per Inch) é uma unidade de medida utilizada para descrever a densidade de pixels das telas.
Nas aulas passadas, utilizávamos a unidade 'pixel' para definir os tamanhos e distâncias dos elementos gráficos. Entretanto, essa é uma unidade que pode fazer com que os elementos apresentem tamanhos muito distintos entre dispositivos.
Para entender como o PPI influencia na interface gráfica, podemos utilizar o módulo Screen do Kivy para simular a tela de diversos dispositivos.
Para simular como o seu aplicativo irá ficar em um dispositivo específico, basta rodar o arquivo 'main.py' desta maneira:
$ python main.py -m screen:idDispositivo,orientacao
Na linha anterio, correspondente ao comando do terminal (ou Prompt de comando do Windows), executamos o script main.py com o módulo (-m) screen, passando os argumentos idDispositivo e orientacao. Estes argumentos são necessários para especificar qual o dispositivo a ser simulado e a orientacao do dispositivo, respectivamente.
Por exemplo, para simular a tela de um celular LG G3 na orientacao vertical, ou Portrait, utilizamos os seguintes argumentos:
$ python main.py -m screen:phone_lg_g3,portrait
O ID 'phone_lg_g3' pode ser identificado na tabela produzida pelo comando a seguir:
$ python main.py -m screen:
Ou seja, se não passarmos nenhum argumento ao módulo, ele retornará uma tabela com os diferentes dispositivos cadastrados, com os IDs correspondentes e suas características.
No vídeo eu mostro como isso funciona na prática e como utilizar essas informações para deixar a interface do jeito que haviamos projetado no computador. Confira :)
Faça o download dos arquivos desta aula aqui.