In Android Studio la prima cosa che dobbiamo fare per creare l'app è definire il layout che deve assumere.
In questo Android ha la possibilità di creare diversi layout, cioè come vengono disposti gli oggetti all'interno dell'app:
Gli oggetti tra cui i Layout che chiameremo View o GroupView, hanno degli attributi che specificano le caratteristiche della View. Alcuni di questi attributi sono fondamentali come layout_width e layout_height tutti gli altri sono facoltativi se vogliamo personalizzare al massimo la grafica della nostra app.
Ecco alcuni esempi:
layout_marginTop - Specifica lo spazio ulteriore a disposizione nella parte superiore della View o della ViewGroup
layout_marginBottom - Specifica lo spazio ulteriore a disposizione nella parte inferiore della View o della ViewGroup
layout_marginLeft - Specifica lo spazio ulteriore a disposizione nella parte sinistra della View o della ViewGroup
layout_marginRight - Specifica lo spazio ulteriore a disposizione nella parte destra della View o della ViewGroup
layout_gravity - Specifica come le viste figlie (le View contenute all'interno del Layout) devono essere posizionate
layout_weight - Specifica quanto spazio ulteriore deve essere riservato alla vista
layout_x - Specifica la coordinata x della View o della ViewGroup
layout_y - Specifica la coordinata y della View o della ViewGroup
Chiaramente alcuni di questi attributi possono essere utilizzati soltanto in determinati Layout e non in altri.
ESEMPIO 1: In questo caso si ha un Layout verticale perché alla riga 7 viene definito il tipo di orientamento "vertical" utilizzando l'attributo orientation
Con queste righe di codice (obbligatorie per ogni View) si definisce che la View deve occupare tutta la larghezza (width) dello schermo e tutta l'altezza (height) dello schermo: match_parent.
Oppure
con queste righe di codice si definisce che la View deve avere la dimensioni in larghezza e in altezza rispetto al suo contenuto: wrap_content
Si può notare che all'interno del Layout sono stati inseriti delle TextView e un Button i quali hanno tutti come attributo layout_width="match_parent" e layout_height="wrap_content"
In questo modo le View occupano tutto lo spazio disponibile in larghezza, mentre per l' altezza variano in base alle dimensioni del contenuto.
ESEMPIO 2:
In questo caso, come si vede dall'immagine, modificano l'orientamento del Layout da verticale ad orizzontale (riga 7) le View vengono disposte una dopo l'altra in modo orizzontale ma si vede solo la prima View.
Perchè?
Il motivo di questa visualizzazione è dato dall'impostazione dell'attributo layout_width="match_parent" delle singole View contenute all'interno del Layout, modificando da match_parent a wrap_content verranno visualizzate tutte le View.
ESEMPIO 3:
E' possibile inserire Layout all'interno di altri Layout stando sempre attenti all'impostazione degli attributi layout_width e layout_height delle singole View.
ESEMPIO 4:
In questo caso notare l'utilizzo dell'attributo layout_gravity che determina il posizionamento dei tre pulsanti.
ESEMPIO 5:
Quindi layout_weight serve a specificare in proporzione la porzione di schermo assegnata ad ogni view.
In questo Android ha la possibilità di creare diversi layout, cioè come vengono disposti gli oggetti all'interno dell'app:
- Linear Layout
- Table Layout
- Relative Layout
Gli oggetti tra cui i Layout che chiameremo View o GroupView, hanno degli attributi che specificano le caratteristiche della View. Alcuni di questi attributi sono fondamentali come layout_width e layout_height tutti gli altri sono facoltativi se vogliamo personalizzare al massimo la grafica della nostra app.
Ecco alcuni esempi:
layout_marginTop - Specifica lo spazio ulteriore a disposizione nella parte superiore della View o della ViewGroup
layout_marginBottom - Specifica lo spazio ulteriore a disposizione nella parte inferiore della View o della ViewGroup
layout_marginLeft - Specifica lo spazio ulteriore a disposizione nella parte sinistra della View o della ViewGroup
layout_marginRight - Specifica lo spazio ulteriore a disposizione nella parte destra della View o della ViewGroup
layout_gravity - Specifica come le viste figlie (le View contenute all'interno del Layout) devono essere posizionate
layout_weight - Specifica quanto spazio ulteriore deve essere riservato alla vista
layout_x - Specifica la coordinata x della View o della ViewGroup
layout_y - Specifica la coordinata y della View o della ViewGroup
Chiaramente alcuni di questi attributi possono essere utilizzati soltanto in determinati Layout e non in altri.
ESEMPIO 1: In questo caso si ha un Layout verticale perché alla riga 7 viene definito il tipo di orientamento "vertical" utilizzando l'attributo orientation
Con queste righe di codice (obbligatorie per ogni View) si definisce che la View deve occupare tutta la larghezza (width) dello schermo e tutta l'altezza (height) dello schermo: match_parent.
Oppure
con queste righe di codice si definisce che la View deve avere la dimensioni in larghezza e in altezza rispetto al suo contenuto: wrap_content
Si può notare che all'interno del Layout sono stati inseriti delle TextView e un Button i quali hanno tutti come attributo layout_width="match_parent" e layout_height="wrap_content"
In questo modo le View occupano tutto lo spazio disponibile in larghezza, mentre per l' altezza variano in base alle dimensioni del contenuto.
ESEMPIO 2:
In questo caso, come si vede dall'immagine, modificano l'orientamento del Layout da verticale ad orizzontale (riga 7) le View vengono disposte una dopo l'altra in modo orizzontale ma si vede solo la prima View.
Perchè?
Il motivo di questa visualizzazione è dato dall'impostazione dell'attributo layout_width="match_parent" delle singole View contenute all'interno del Layout, modificando da match_parent a wrap_content verranno visualizzate tutte le View.
ESEMPIO 3:
E' possibile inserire Layout all'interno di altri Layout stando sempre attenti all'impostazione degli attributi layout_width e layout_height delle singole View.
Download Project | |
Download file APK |
ESEMPIO 4:
In questo caso notare l'utilizzo dell'attributo layout_gravity che determina il posizionamento dei tre pulsanti.
ESEMPIO 5:
Quindi layout_weight serve a specificare in proporzione la porzione di schermo assegnata ad ogni view.
Commenti
Posta un commento