Unità di misura in Android

Alcune semplici osservazioni su quali unità di misura si usano in Android per definire la larghezza di pulsanti, la dimensione del testo etc.

Una delle domande che spesso i corsisti ci fanno è se in Android è necessario usare i pixel, per impostare la larghezza dei diversi elementi View presenti in un layout.

Ebbene il mondo Androd è diverso dal mondo web, quindi la regola generale che devi applicare è di NON usare mai i pixel per definire l'unità di misura degli elementi di un layout.

Cosa devi usare allora al posto dei pixel? Ecco le due unità da imparare sono dp e sp: 

  • dp (Density-Independent pixels) -  Come dice lo stesso nome, è un'unità indipendente dalla densità di pixel e dalla dimensione dello schermo e garantisce uniformità tra dispositivi. Questa unità la dovrai usare sempre per ogni componente, tranne che per il testo.

Ad esempio potresti scrivere:

android:layout_height="60dp" - Imposto l'altezza a 60 "pixels". Il numero effettivo di pixel usati, dipenderà dalla dimensione dello schermo del dispositivo dell'utente e dalla densità, ma in questo modo ho la garanzia che sia sempre impostato correttamente qualsiasi sia lo schermo che lo visualizzerà.

  • sp (Scale-Independent pixels) - Unità usata per il testo. Prende in considerazione la dimensione dello schermo e la densità, così come le impostazioni di testo scelte dall'utente.

Esempio: 

android:textSize="21sp" - Imposta il testo ad una dimensione di 21 "pixels". Il numero reale di pixel anche qui dipenderà dalla dimensione dello schermo, dalla densità, così come dalle impostazioni fatte dall'utente per il testo.

Ricorda pertanto di usare sempre queste due unità durante la progettazione dei tuoi layout.

Ti è servito un pò, l'articolo? Condividilo ADESSO sui social! Grazie :-)

Tipo/Autore: Pubblicato da: CorsoAndroid.it

Voto 4.7/5 basato su 51 Recensioni
© 2011-2017 CorsoAndroid.it - Tutti i diritti riservati. Corso Base Android per rompere il ghiaccio Creare app per android
NB: Tutti i marchi citati sono di proprietà dei rispettivi proprietari. Android is a trademark of Google Inc.