Bentornati.
In questo video impareremo a conoscere il Constraintlayout.
In Android Studio.
Abbiamo tre viste di testo all'interno di questo layout relativo.
Cambierò questo Relativelayout in un Constraintlayout di tipo Constraintlayout.
Questo è il tag del Constraintlayout android x dot Constraintlayout dot widget dot Constraintlayout.
Questo è per gli attributi di questo Constraintlayout e per il tag finale.
E il tag di chiusura per il Constraintlayout è qui!
Constraintlayout è un gestore di layout versatile e potente, introdotto in Android, che consente di creare con facilità
progetti di interfaccia utente complessi e flessibili.
È stato progettato per facilitare la creazione di layout reattivi e dinamici, per adattarsi a varie dimensioni e orientamenti
dello schermo e per ridurre la necessità di layout annidati.
Il concetto centrale di Constraintlayout è quello dei vincoli, che definiscono il posizionamento e il dimensionamento
delle viste figlio rispetto alle altre e al layout padre.
I vincoli vengono impostati specificando le connessioni tra i bordi di una vista e le altre viste o il
layout padre.
Per rimuovere i vincoli, si può fare clic su questo pulsante Cancella tutti i vincoli; rimuoverò tutti
i vincoli da questo layout e avremo tre viste di testo.
Posso trascinarli e rilasciarli.
Ogni widget e ogni visualizzazione in Android ha quattro cerchi.
Per i punti di ancoraggio è necessario ancorarne almeno uno orizzontale e uno verticale.
Sto ancorando questa vista di testo con il bordo genitore.
Lo si può vedere.
Questo è il layout di vincolo del genitore, al quale abbiamo specificato un margine di 20 dpi.
Qui sto vincolando questa vista di testo come 48 dal genitore dall'alto e 44 da sinistra.
Se faccio clic su questa vista di testo, possiamo vedere il testo e abbiamo questi attributi.
Inizio del vincolo di layout all'inizio del genitore.
Seguendo la formula generale degli attributi dei vincoli, specifichiamo l'ancoraggio di origine come
da inizio a inizio e l'id di destinazione, che io indico come inizio genitore, che è l'inizio dell'ancoraggio di origine, che è l'ancoraggio
di destinazione e l'ID di destinazione che è genitore.
È possibile specificare un altro ID, un altro ID di vista come la prima vista di testo.
E si può vedere che è vincolata all'inizio di questa prima vista di testo e poi a un'altra vista di testo
che è la seconda vista di testo di cui devo specificare il genitore.
E abbiamo anche un altro vincolo.
Questo è per il vincolo verticale e questo è per il vincolo orizzontale superiore.
Questa è l'ancora di partenza.
Questa è l'ancora di destinazione, che è la parte superiore, e questo è l'id, che è l'ID di destinazione.
In questo caso sto ancorando.
Sto vincolando questa vista di testo al genitore del constraintlayout genitore, che in questo caso
è questo rettangolo blu.
Abbiamo anche dei margini.
I margini partono da 44.
Qui definisco un margine di 44 da sinistra e di 48 dall'alto.
È quindi possibile vedere il margine iniziale e il margine superiore.
In questo caso si definiscono i vincoli per la prima vista di testo o per questa vista di testo.
Passiamo ora a un'altra visualizzazione di testo.
In questo caso voglio che questa vista di testo sia ancorata a questa vista di testo e non al genitore.
Quindi devo specificare un vincolo orizzontale e uno verticale.
Trascinerò l'ancora e la sostituirò.
Qui si può vedere che la vista di testo è ancorata.
Passiamo ora a un'altra visualizzazione del testo.
Inoltre ho bisogno di specificare un'ancora verticale da trascinare e rilasciare.
E si può vedere che questa vista di testo è ancorata a questa vista di testo.
Se sposto questa vista di testo, la seconda vista di testo verrà sostituita e spostata automaticamente.
Ogni volta che sposto questa vista di testo, la seconda vista di testo viene trascinata e spostata di nuovo.
Se mi sposto in questa vista di testo hello world, posso centrarla in questa vista di testo.
Ad esempio, se si specificano questi due vincoli orizzontali e lo si specifica in questo modo.
Benvenuti al nostro corso.
Sarà centrato sotto questo.
Benvenuti al nostro corso TextView.
Trascinare e rilasciare il terzo vincolo.
Ed eccoci qui.
Se sposto questo testo, si può notare che Hello World sarà di nuovo centrato perché è vincolato sia a sinistra
che a destra.
A questo punto, benvenuti nella nostra visualizzazione del testo del corso.
Specificando i vincoli sinistro e destro, si aggiungono due vincoli orizzontali.
Se si specificano i vincoli in alto e in basso o in alto e in basso, si specificano entrambi i vincoli verticali.
È necessario almeno uno orizzontale e uno verticale.
Se si esegue l'applicazione, si può vedere che l'applicazione reale corrisponde al nostro layout.
Perché sto aggiungendo il vincolo verticale e orizzontale per ogni vista che creo.
Questo è il potere del layout a vincoli.
È possibile eliminare i layout annidati dal layout lineare e relativo, trascinare e rilasciare,
aggiungere i vincoli orizzontali e verticali e proseguire.
È possibile aggiungere molti elementi al layout dei vincoli, come le linee guida, le catene, le barriere e i rapporti
di polarizzazione.
Ma nei prossimi video li conosceremo in profondità.
Quando si lavora con applicazioni UI complesse utilizzando il Constraint Layout, è possibile creare un'ampia gamma di
progetti UI complessi e flessibili senza bisogno di layout annidati.
È uno strumento potente per lo sviluppo di applicazioni Android moderne, che offre sia un editor di progettazione visiva che il supporto
Xaml per adattarsi a diversi flussi di lavoro di progettazione.