Posizionare i componenti di un LinearLayout

Lo scopo dei layout è quello di disporre i vari componenti al proprio interno secondo un certo schema e il più semplice dei layout è il LinearLayout che è proposto di default alla creazione di un progetto Android.

  1. Crea un nuovo progetto Android
  2. Modifica il file res/layout/main.xml:
  3. Modifica il file res/values/strings.xml:
  4. Crea il file res/values/colors.xml:
  5. Verifica che la classe principale abbia il metodo:

Il risultato finale visto dall’emulatore è il seguente:

I Linear Layout dispongono i componenti seguendo o un orientamento verticale o un orientamento orizzontale, per verificare questo aspetto sostituisci android:orientation=”vertical” con android:orientation=”vertical” nel file main.xml.
Le dimensioni dei componenti sono principalmente determinate da android:layout_width e android:layout_height i cui valori possono essere impostati a:

  • fill_parent: il componente occupa tutto lo spazio disponibile (deprecato)
  • match_parent: il componente occupa tutto lo spazio disponibile
  • wrap_content: il componente occupa lo spazio sufficiente a mostrare il proprio contenuto
  • [un numero]: specifica un numero esatto in px (pixel), dp (pixel indipendenti dalla densità), sp (pixel scalati in base alla dimensione del font preferito), in (pollici), mm (millimetri)

Le dimensioni dei componenti possono essere aumentate o diminuite valorizzando android:layout_weight, e i componenti per i quali è specificato un valore per android:layout_weight hanno dimensioni relative proporzionate a quel valore.
android:layout_gravity e android:gravity impostano caratteristiche simili ma su oggetti differenti:

  • android:layout_gravity: imposta il posizionamento relativo del componente rispetto al layout
  • android:gravity: imposta il posizionamento del corpo del componente rispetto al componente stesso.

E’ possibile specificare più valori separandoli con il carattere “|”, ad esempio: android:gravity=”bottom|center”.
android:padding imposta la distanza fra il corpo del componente e il bordo del componente.
android:layout_margin imposta la distanza fra il componente dal bordo del layout o da altri elementi.
android:padding e android:layout_margin possono essere impostati anche per il layout.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.