ConstraintLayout

Posiziona e dimensiona i widget in modo flessibile con il posizionamento relativo.

Questa tabella elenca tutti gli artefatti nel gruppo androidx.constraintlayout.

Elemento Release stabile Candidato per la release Release beta Release alpha
constraintlayout 2.2.1 - - -
constraintlayout-compose 1.1.1 - - -
constraintlayout-core 1.1.1 - - -

Dichiara le dipendenze

Per aggiungere una dipendenza da ConstraintLayout, devi aggiungere il repository Maven di Google al tuo progetto. Per saperne di più, consulta il repository Maven di Google.

Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle per la tua app o il tuo modulo:

Alla moda

dependencies {
    implementation "androidx.constraintlayout:constraintlayout:2.2.1"
    // To use constraintlayout in compose
    implementation "androidx.constraintlayout:constraintlayout-compose:1.1.1"
}

Kotlin

dependencies {
    implementation("androidx.constraintlayout:constraintlayout:2.2.1")
    // To use constraintlayout in compose
    implementation("androidx.constraintlayout:constraintlayout-compose:1.1.1")
}

Per saperne di più sulle dipendenze, consulta Aggiungere dipendenze di build.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa raccolta. Prima di segnalare un nuovo problema, dai un'occhiata ai problemi esistenti in questa raccolta. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.

Crea un nuovo problema

Per saperne di più, consulta la documentazione di Issue Tracker.

ConstraintLayout-compose e ConstraintLayout-Core 1.1

Versione 1.1.1

26 febbraio 2025

androidx.constraintlayout:constraintlayout-compose:1.1.1, androidx.constraintlayout:constraintlayout-compose-android:1.1.1 e androidx.constraintlayout:constraintlayout-core:1.1.1 sono stati rilasciati. La versione 1.1.1 contiene questi commit.

Correzioni di bug

  • Corregge alcuni problemi di layout che in alcuni casi impediscono il posizionamento dei layout. Ad esempio, attivare/disattivare la visibilità. (I34e68, b/299134793)

Versione 1.1.0

30 ottobre 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0, androidx.constraintlayout:constraintlayout-compose-android:1.1.0 e androidx.constraintlayout:constraintlayout-core:1.1.0 sono stati rilasciati. La versione 1.1.0 contiene questi commit.

Modifiche importanti dalla versione 1.0.0

  • È stata corretta l'interazione con SharedTransitionLayout (b/332898040).
  • Sono stati corretti i problemi di layout relativi alla misurazione dovuti alla ricomposizione (b/219091179, Ibfe8a).

Versione 1.1.0-rc01

16 ottobre 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0-rc01, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-rc01 e androidx.constraintlayout:constraintlayout-core:1.1.0-rc01 sono stati rilasciati. La versione 1.1.0-rc01 contiene questi commit.

Versione 1.1.0-beta01

4 settembre 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-beta01 e androidx.constraintlayout:constraintlayout-core:1.1.0-beta01 sono stati rilasciati. La versione 1.1.0-beta01 contiene questi commit.

Versione 1.1.0-alpha14

7 agosto 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha14, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha14 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha14 sono stati rilasciati. La versione 1.1.0-alpha14 contiene questi commit.

Modifiche alle API

  • I flag ora vengono forniti singolarmente tramite l'oggetto complementare e possono essere combinati con l'operatore or. (I9df53)
  • Helper createRow e createColumn semplificati. Miglioramento dei nomi dei parametri createGrid e della documentazione per maggiore chiarezza. (Iebc92)
  • API animateChanges semplificata in ConstraintLayout per richiedere solo un AnimationSpec non nullo. onIncomingConstraints in InvalidationStrategy è ora una normale lambda. fixedWidthRate rinominato in shouldInvalidateOnFixedWith, lo stesso vale per la variante Altezza. (Ie59cd, b/332898040, b/336370035)
  • Le origini NestedScroll Drag and Fling vengono sostituite da UserInput e SideEffect per tenere conto della definizione estesa di queste origini, che ora includono animazioni (Side Effect) e rotellina del mouse e tastiera (UserInput). (I40579)

Versione 1.1.0-alpha13

4 ottobre 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha13, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha13 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha13 sono stati rilasciati senza modifiche. La versione 1.1.0-alpha13 contiene questi commit.

  • Questa release consente alle librerie androidx.constraintlayout di essere compatibili con l'ABI delle ultime release di Compose.

Versione 1.1.0-alpha12

9 agosto 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha12, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha12 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha12 sono stati rilasciati. La versione 1.1.0-alpha12 contiene questi commit.

Modifiche alle API

  • Aggiunta di LayoutScopeMarker a Transition DSL. (If54ce)

Versione 1.1.0-alpha11

26 luglio 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha11, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha11 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha11 sono stati rilasciati. La versione 1.1.0-alpha11 contiene questi commit.

Nuove funzionalità

  • Ora puoi fornire un InvalidationStrategy per ottimizzare gli annullamenti della convalida in MotionLayout. che in genere è la causa della riduzione del rendimento. (Iada0c)
  • Ora puoi utilizzare animateChanges = true quando utilizzi ConstraintLayout con il linguaggio specifico del dominio (DSL) del modificatore incorporato (Modifier.constrainAs). Ogni volta che viene apportata una modifica alla DSL dei vincoli, ConstraintLayout viene animato automaticamente al nuovo stato. (I9abf1)
  • Funzionalità abilitata per limitBoundsTo su OnSwipe. (I56522)

Modifiche alle API

  • TransitionScope.staggered rinominato in TransitionScope.maxStaggerDelay. (I0fd2d)

Correzioni di bug

  • È stato corretto il parametro dragScale di OnSwipe che non funzionava. (8bef26)
  • È stato risolto il problema relativo a customColor in MotionScene che non funzionava correttamente con i colori trasparenti. (81b2ac)
  • È stato corretto il problema di OnSwipe che non viene annunciato correttamente quando si ferma. È stato corretto anche il calcolo della velocità iniziale per touchUp. (Ia5f6f)
  • KDoc aggiornato per ConstraintLayout Composable e Constraintset. (3bfe63)

Versione 1.1.0-alpha10

24 maggio 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha10, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha10 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha10 sono stati rilasciati. La versione 1.1.0-alpha10 contiene questi commit.

Modifiche alle API

  • MotionLayout L'API non è più sperimentale. Questo rappresenta il set iniziale di API stabili per MotionLayout. (I288f4)
  • MotionLayoutState rimosso. (Id3ac1)
  • Ora puoi utilizzare DebugFlags per il debug visivo: DebugFlags(showBounds = true). (Ic714b)
  • La variabile di estensione Dp.asDimension è stata modificata in un metodo: Dp.asDimension(). (I2d6ef)
  • Ora lo scaglionamento è supportato nel linguaggio specifico del dominio MotionLayout, definisci il ritardo massimo con TransitionScope.staggered, puoi anche utilizzare ConstrainScope.staggeredWeight (all'interno di MotionSceneScope) per ottenere un ordine scaglionato personalizzato. (I70275)
  • Due modifiche apportate all'aiuto per la griglia: 1. paddingLeft e paddingRight rispettivamente a paddingStart e paddingEnd e 2. aggiorna il formato di gridSpans e gridSkip a un array degli oggetti Span e Skip per renderlo più strutturale. (Idd1eb)

Versione 1.1.0-alpha09

22 marzo 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha09 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha09 sono state rilasciate. La versione 1.1.0-alpha09 contiene questi commit.

Modifiche alle API

  • Modifier.intermediateLayout ora non richiede un LookaheadScope esplicito. Il blocco della misura in intermediateLayout ha IntermediateMeasureScope come ricevitore, che fornisce comode CoroutineScope, LookaheadScope e MeasureScope.
  • LookaheadLayout è stato sostituito da LookaheadScope, che non è più un layout. In questo modo, i contenuti per bambini in un LookaheadScope possono essere controllati direttamente dal MeasurePolicy del genitore. (Ibe2e5)
  • Easing.Cubic() ora può accettare parametri di superamento. (I2d826)

Versione 1.1.0-alpha08

8 marzo 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha08 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha08 sono state rilasciate. La versione 1.1.0-alpha08 contiene questi commit.

Nuove funzionalità

  • Sono stati aggiunti controlli lint per suggerire l'utilizzo di Dimension.percent(1f) e LayoutReference.withChainParams() nei casi in cui i pattern tipici potrebbero portare a un comportamento imprevedibile. (I62eb0, I03060)

Modifiche alle API

  • Attiva i flag ReverseSpanDirection e SpansOrderFirst per lo strumento Griglia in Composizione.
    1. ReverseSpanDirection: inverte la specifica di larghezza e altezza per gli intervalli/salti.
    2. SpansOrderFirst: gli intervalli rispetteranno l'ordine dei widget. (I6ad50)
  • Utilizza Modifier.onStartEndBoundsChanged(...) per ottenere i limiti locali dei composable in un MotionLayout che non sono interessati dall'animazione. Utile per qualsiasi interazione con la UI che richieda informazioni sul layout che potrebbero anche attivare animazioni come DragAndDrop. (I6b5f9)
  • Attiva i salti e gli intervalli dell'assistente per la griglia in Compose (I917b6)

Correzioni di bug

  • Le proprietà di traduzione fisse non applicano i valori previsti. (I961cd)

Versione 1.1.0-alpha07

8 febbraio 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha07 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha07 sono state rilasciate. La versione 1.1.0-alpha07 contiene questi commit.

Nuove funzionalità

  • Aggiungi nuove API per abilitare la griglia di assistenza in Compose utilizzando DSL (I1143b)

Correzioni di bug

  • È stato corretto Wrap.Chain per il flusso che non viene disposto correttamente in base al parametro maxElement specificato. (e1f2ed3)
  • È stato corretto il problema relativo all'aggiornamento di start ConstraintSet quando si cambia la transizione tramite MotionLayout(motionScene: MotionScene, progress: Float, transitionName: String). (17ffff1)
  • È stato corretto il problema per cui ConstraintSet non rifletteva alcune modifiche durante l'ereditarietà dei vincoli tramite ConstraintSet(extendConstraintSet: ConstraintSet, description: ConstraintSetScope.() -> Unit).(740804b)

Versione 1.1.0-alpha06

25 gennaio 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha06 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha06 sono state rilasciate. La versione 1.1.0-alpha06 contiene questi commit.

Nuove funzionalità

  • Aggiungi nuove API per attivare Grid Helper in Compose con la rappresentazione JSON, che consente di posizionare i composable in una griglia 2D. (I968ad)

Modifiche alle API

  • Aggiungi il supporto per le modalità di arco su e arco giù Arc.Above e per le modalità di arco indipendenti dalla direzione Arc.Below a MotionLayout (I184a9)
  • Ora è possibile vincolare un ancoraggio di base agli ancoraggi superiore/inferiore e viceversa. (I54628)
  • MotionLayoutScope#motionProperties (incluse le opere derivate) è stato rinominato in MotionLayoutScope#customProperties. Questo per garantire la coerenza con l'impostazione delle proprietà personalizzate. (Ib34c9)
  • Ora è possibile creare più riferimenti in ConstraintSet e MotionScene: val (box, text, button) = createRefsFor("box", "text","button"). Applica vincoli a più elementi con constrain(box, button, text). All'interno di un ConstrainScope, ora puoi impostare in modo intuitivo una dimensione fissa con Dp.asDimension: width = 10.dp.asDimension. (I021ec, Ia0960)
  • I metodi MotionScene() e Transition() ora sono funzioni non componibili. Gli oggetti di queste funzioni (incluso ConstraintSet) ora dovrebbero essere confrontabili correttamente tra loro. animateChanges = true in ConstraintLayout ora può essere utilizzato con un solo riferimento ConstraintSet, a condizione che una delle sue proprietà sia stata modificata durante la ricomposizione. (I7d22e)

Correzioni di bug

  • Risolto il problema per cui ConstraintLayout attivava sempre una ricomposizione aggiuntiva non necessaria quando venivano modificati gli helper. (Id83ad, b/222093277)
  • È stato corretto il comportamento quando si utilizzano gli intrinseci con ConstraintLayout e MotionLayout. (I487ae, b/220527863)
  • Correzione dell'impossibilità di eseguire una nuova misurazione quando i contenuti cambiano. (Ibfe8a, b/219091179)

Versione 1.1.0-alpha05

7 dicembre 2022

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha05 e androidx.constraintlayout:constraintlayout-core:1.1.0-alpha05 sono state rilasciate. La versione 1.1.0-alpha05 contiene questi commit.

Nuove funzionalità

  • Supporta KeyAttributes personalizzati in DSL (b94e748)
  • Proprietà di distorsione della superficie in ConstrainScope (32625d0)
  • Supporto dei parametri personalizzati nelle catene (72a2e9e)
  • Aggiungi test Macrobenchmark per MotionLayout in Compose (36f43bc)
  • Per ulteriori informazioni sulle modifiche nella release precedente di Compose, consulta la pagina wiki.

Modifiche alle API

  • Parametri Capovolgi addConstraintSet e addTransition (152facc)

Correzioni di bug

  • Correggi catene orizzontali (ed5f56e)

Versione 1.1.0-alpha01

20 maggio 2022

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha01 è stato rilasciato.

Tieni presente che l'API MotionLayout è sperimentale e richiede l'attivazione.

Per maggiori informazioni, consulta la pagina Novità di Compose 1.1.0-alpha01 su GitHub.

Versione 2.2

Versione 2.2.1

26 febbraio 2025

androidx.constraintlayout:constraintlayout:2.2.1 è stato rilasciato. La versione 2.2.1 contiene questi commit.

Contributo esterno

  • È stato risolto un problema di compatibilità binaria della libreria constraintlayout-core. Grazie Carlo Marinangeli. (I8952e, b/376718273)

Versione 2.2.0

30 ottobre 2024

androidx.constraintlayout:constraintlayout:2.2.0 è stato rilasciato. La versione 2.2.0 contiene questi commit.

Modifiche importanti dalla versione 2.1.0

  • Rilascio di parità con la libreria sottostante constraintlayout-core.

Versione 2.2.0-rc01

16 ottobre 2024

androidx.constraintlayout:constraintlayout:2.2.0-rc01 è stato rilasciato. La versione 2.2.0-rc01 contiene questi commit.

Versione 2.2.0-beta01

4 settembre 2024

androidx.constraintlayout:constraintlayout:2.2.0-beta01 è stato rilasciato. La versione 2.2.0-beta01 contiene questi commit.

Versione 2.2.0-alpha14

7 agosto 2024

androidx.constraintlayout:constraintlayout:2.2.0-alpha14 è stato rilasciato. La versione 2.2.0-alpha14 contiene questi commit.

Versione 2.2.0-alpha13

4 ottobre 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha13 viene rilasciato senza modifiche. La versione 2.2.0-alpha13 contiene questi commit.

Versione 2.2.0-alpha12

9 agosto 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha12 è stato rilasciato. La versione 2.2.0-alpha12 contiene questi commit.

Versione 2.2.0-alpha11

26 luglio 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha11 è stato rilasciato. La versione 2.2.0-alpha11 contiene questi commit.

Modifiche alle API

  • Aggiungi un metodo setter per consentire agli sviluppatori di impostare programmaticamente il valore di mInfiniteCarousel (I0a8ca)

Versione 2.2.0-alpha10

24 maggio 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha10 è stato rilasciato. La versione 2.2.0-alpha10 contiene questi commit.

Correzioni di bug

  • Correggi un link non funzionante del documento MotionLayout. (51cbe88)

Versione 2.2.0-alpha09

22 marzo 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha09 è stato rilasciato. La versione 2.2.0-alpha09 contiene questi commit.

Versione 2.2.0-alpha08

8 marzo 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha08 è stato rilasciato. La versione 2.2.0-alpha08 contiene questi commit.

Versione 2.2.0-alpha07

8 febbraio 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha07 è stato rilasciato. La versione 2.2.0-alpha07 contiene questi commit.

Correzioni di bug

  • Risolvi il problema relativo alla mancanza di contenuti nella pagina ConstraintLayout. (I82e25)

Versione 2.2.0-alpha05

7 dicembre 2022

androidx.constraintlayout:constraintlayout:2.2.0-alpha05 è stato rilasciato. La versione 2.2.0-alpha05 contiene questi commit.

Correzioni di bug

  • Correzione della perdita nel carosello di visualizzazione (eb67b82)

Versione 2.2.0-alpha01

20 maggio 2022

androidx.constraintlayout:constraintlayout:2.2.0-alpha01 è stato rilasciato.

Include un'anteprima del nuovo helper Grid.

Per maggiori informazioni, consulta la pagina Novità della versione 2.2.0-alpha01 su GitHub.

ConstraintLayout-compose 1.0

ConstraintLayout-compose 1.0 fornisce le funzionalità di ConstraintLayout in Jetpack Compose.

Versione 1.0.1

20 maggio 2022

androidx.constraintlayout:constraintlayout-compose:1.0.1 è stato rilasciato.

Tieni presente che l'API MotionLayout è sperimentale e richiede l'attivazione.

Per maggiori informazioni, consulta la pagina Novità di Compose 1.0.1 su GitHub.

Versione 1.0.0

13 gennaio 2022

androidx.constraintlayout:constraintlayout-compose:1.0.0 è stato rilasciato.

Tieni presente che l'API MotionLayout è ora sperimentale e richiede l'attivazione.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 1.0 (Compose).

Versione 1.0.0-rc02

16 novembre 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-rc02 è stato rilasciato.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 1.0 (Compose).

Versione 1.0.0-rc01

27 settembre 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-rc01 è stato rilasciato.

Questa release è la seconda beta. È considerata una funzionalità completa, che fornisce ConstraintLayout e MotionLayout per la composizione.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 1.0 (Compose).

Versione 1.0.0-beta02

30 luglio 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02 è stato rilasciato.

Questa release è la seconda beta. È considerata una funzionalità completa, che fornisce ConstraintLayout e MotionLayout per la composizione.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 1.0 (Compose).

Versione 1.0.0-beta01

22 luglio 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01 è stato rilasciato.

Questa release è la prima beta. È considerata una funzionalità completa, che fornisce ConstraintLayout e MotionLayout per la composizione.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 1.0 (Compose).

Versione 1.0.0-alpha07

18 maggio 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07 è stato rilasciato.

  • È stato effettuato un aggiornamento per garantire la compatibilità con Compose versione 1.0.0-beta07.

Versione 1.0.0-alpha06

4 maggio 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha06 è stato rilasciato.

  • Ottimizzazione di Compose: componente componibile incorporato ConstraintLayout (#193)
  • Ridurre al minimo le misurazioni in Compose (#210)

Versione 1.0.0-alpha05

15 marzo 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05 è stato rilasciato.

  • include una correzione per il motore di ottimizzazione (b/182657720)
  • aggiungi un parametro optimizationLevel al composable ConstraintLayout

Versione 1.0.0-alpha04

11 marzo 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04 è stato rilasciato.

Aggiornamento per utilizzare il motore constraintlayout-core più recente

Versione 1.0.0-alpha03

24 febbraio 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha03 è stato rilasciato.

Aggiornamento della release per la release beta01 di Jetpack Compose

Versione 1.0.0-alpha02

10 febbraio 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02 è stato rilasciato.

Aggiornamento della release per la release alpha12 di Jetpack Compose

Versione 1.0.0-alpha01

2 febbraio 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01 è stato rilasciato.

Prima release della libreria, che fornisce DSL inline ed esterne per esprimere i vincoli.

Versione 2.1

ConstraintLayout 2.1.0 offre funzionalità più avanzate in MotionLayout e nuovi helper (Carosello e così via)

Versione 2.1.4

20 maggio 2022

androidx.constraintlayout:constraintlayout:2.1.4 è stato rilasciato.

Per maggiori informazioni, consulta la sezione Novità della versione 2.1.4 su GitHub.

Versione 2.1.3

13 gennaio 2022

androidx.constraintlayout:constraintlayout:2.1.3 è stato rilasciato.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 2.1.

Versione 2.1.2

16 novembre 2021

androidx.constraintlayout:constraintlayout:2.1.2 è stato rilasciato.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 2.1.

Versione 2.1.1

27 settembre 2021

androidx.constraintlayout:constraintlayout:2.1.1 è stato rilasciato.

Questa è la release finale per 2.1.1.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 2.1.

Versione 2.1.0

30 luglio 2021

androidx.constraintlayout:constraintlayout:2.1.0 è stato rilasciato.

Questa è la release finale per la versione 2.1.0.

Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 2.1.

Versione 2.1.0-rc01

22 luglio 2021

androidx.constraintlayout:constraintlayout:2.1.0-rc01 è stato rilasciato.

Si tratta della release candidata per la versione 2.1.0, che fornisce miglioramenti e correzioni minori rispetto all'ultima versione beta. Per maggiori informazioni, consulta l'articolo di GitHub Novità della versione 2.1.

Versione 2.1.0-beta02

4 maggio 2021

androidx.constraintlayout:constraintlayout:2.1.0-beta02 è stato rilasciato.

Alcune nuove funzionalità di MotionLayout:

  • Miglioramento di OnSwipe, inclusi molla (rigidità, smorzamento, massa ecc.) e mai completato
  • funzione jumpToState
  • Modalità ViewTransition downUp in cui, quando si tocca verso il basso, la riproduzione arriva al 100% e, quando si tocca verso l'alto, torna allo 0%

Varie correzioni, in particolare:

  • Risolvi il problema in MotionLayout con lo scorrimento verticale (#173)
  • Miglioramenti delle prestazioni su MotionLayout nidificato (#189)
  • Transizione rapida con NestedScrollView in MotionLayout (#189)
  • ConstraintSet rimosso in MotionLayout (#189)
  • Supporto di ViewTransitions downUp in MotionLayout (#190)
  • Correzione in ImageFilter durante il riutilizzo di risorse disegnabili (#192)
  • Aggiungi il supporto della molla in MotionLayout (#199)
  • Miglioramento delle prestazioni di CircularFlow (#200)
  • Correzioni nei vincoli derivati / override dei vincoli (#212)

Versione 2.1.0-beta01

11 marzo 2021

androidx.constraintlayout:constraintlayout:2.1.0-beta01 è stato rilasciato.

ConstraintLayout

android:layout_width e android:layout_height sono tornati a essere non facoltativi a causa di problemi di compatibilità.

MotionLayout

  • Supporto programmatico per l'inserimento e la rimozione di onSwipe e onClick nelle transizioni
  • Supporto sperimentale per le transizioni tramite la rotazione dello schermo
  • supporta l'argomento duration per le transizioni
  • Supporto migliore per customAttributes booleani o riferimenti

Aiutanti

  • è stato aggiunto un modo per animare o passare direttamente a un determinato elemento di un carosello
  • nuovo helper CircularFlow

Consulta ulteriori informazioni su questa release qui e sui bug risolti.

Versione 2.1.0-alpha2

17 dicembre 2020

androidx.constraintlayout:constraintlayout:2.1.0-alpha2 è stato rilasciato.

Questa seconda versione alpha aggiunge diverse nuove funzionalità:

ConstraintLayout

  • android:layout_width e android:layout_height ora sono facoltativi, con wrap_content come comportamento predefinito
  • nuovi attributi layout_constraintWidth e layout_constraintHeight per esprimere i vincoli di dimensione
  • supporta i margini negativi per i vincoli
  • supporta i vincoli dalla base alla parte superiore e dalla base alla parte inferiore
  • supporta i vincoli di margine di base
  • SharedValues consente di inserire valori esterni in ConstraintLayout

MotionLayout

  • Supporto per interpolatori di overshoot (anticipa, overshoot)
  • Supporto avanzato di MotionHelper
  • Aggiungi l'aggiornamento animato di ConstraintSet a MotionLayout updateStateAnimate(id,cset,duration);
  • ViewTransition basata sul valore condiviso
  • scheduleTransiton per consentirti di mettere in coda una transizione da eseguire al termine di quella attuale.

Aiutanti

  • Il carosello ora supporta una modalità infinita (a ciclo continuo)
  • ReactiveGuide : una linea guida che si posiziona automaticamente quando cambia un valore condiviso
  • MotionEffect : inserisce i fotogrammi chiave nelle visualizzazioni a cui viene fatto riferimento che si muovono in una determinata direzione
  • MotionLabel: una visualizzazione per animare il testo su una sola riga

Scopri di più su questa release qui.

Versione 2.1.0-alpha1

19 novembre 2020

androidx.constraintlayout:constraintlayout:2.1.0-alpha1 è stato rilasciato.

Prima alpha della release 2.1. È stato aggiunto il supporto per:

  • Assistente per il movimento del carosello, per creare visualizzazioni personalizzate del carosello
  • Le scene MotionLayout supportano l'inclusione e l'override dei vincoli
  • MotionLayout aggiunge un supporto più completo per la rotazione (input e output)
  • MotionLayout aggiunge ViewTransitions, consentendo transizioni di singole visualizzazioni per la mutazione di ConstraintSet

Per ulteriori informazioni su questa release, visita questa pagina.

Versione 2.0

ConstraintLayout 2.0 aggiunge nuove funzionalità per i layout (layout virtuali e così via) e una nuova classe per semplificare l'animazione delle visualizzazioni, MotionLayout.

Versione 2.0.4

29 ottobre 2020

androidx.constraintlayout:constraintlayout:2.0.4 è stato rilasciato.

Correzioni di bug

Questa release corregge un potenziale NPE che potrebbe verificarsi durante la rimozione di una visualizzazione secondaria in fase di runtime. Ti consigliamo di eseguire l'aggiornamento a questa versione.

Consulta l'elenco dei problemi chiusi qui.

Versione 2.0.3

27 ottobre 2020

androidx.constraintlayout:constraintlayout:2.0.3 è stato rilasciato.

Correzioni di bug

In questa release sono stati corretti alcuni problemi. Ti consigliamo di eseguire l'aggiornamento a questa versione.

  • Gestione degli inset di Windows
  • Gestione del rapporto tra le dimensioni in alcune situazioni
  • Arresto anomalo con alcuni layout RTL

Consulta l'elenco dei problemi chiusi qui.

Versione 2.0.2

6 ottobre 2020

androidx.constraintlayout:constraintlayout:2.0.2 è stato rilasciato.

Correzioni di bug

Questa release migliora le prestazioni e corregge alcuni problemi. Ti consigliamo di eseguire l'aggiornamento a questa versione.

  • La gestione della visibilità GONE in ConstraintLayout non era corretta in alcune situazioni
  • La gestione delle catene compresse in ConstraintLayout non era corretta in alcune situazioni
  • Correzione dell'eccezione di inflazione nell'API 15 per l'helper di layout virtuale Flow
  • limitsBoundsTo è stato interrotto in MotionLayout
  • Il salto alla fine non funzionava in MotionLayout in alcune situazioni (transizioni a catena)

Consulta l'elenco dei problemi chiusi qui.

Versione 2.0.1

25 agosto 2020

androidx.constraintlayout:constraintlayout:2.0.1 è stato rilasciato.

Si tratta di un aggiornamento minore che consente l'utilizzo di MotionEditor in Android Studio.

Versione 2.0.0

21 agosto 2020

androidx.constraintlayout:constraintlayout:2.0.0 è stato rilasciato.

Correzioni di bug

Consulta l'elenco dei problemi chiusi qui.

Le correzioni importanti sono:

  • Ritardi nelle transizioni di MotionLayout e correzioni di TransitionListener
  • Correzioni del flusso e della barriera di ConstraintLayout

Versione 2.0.0-rc1

29 luglio 2020

androidx.constraintlayout:constraintlayout:2.0.0-rc1 è stato rilasciato.

Correzioni di bug

Consulta l'elenco dei problemi chiusi qui.

Le correzioni importanti sono:

  • Correzioni dei flussi
  • Correzioni di RecyclerView (consigliamo di eseguire l'aggiornamento a RecyclerView 1.2.0 alpha 5 o versioni successive)
  • Correzioni di MotionLayout TransitionListener
  • Correzione della perdita di memoria di MotionLayout

Versione 2.0.0-beta8

7 luglio 2020

androidx.constraintlayout:constraintlayout:2.0.0-beta8 è stato rilasciato.

Correzioni di bug

Consulta l'elenco dei problemi chiusi qui.

Le correzioni importanti sono:

  • Comportamento dei segnaposto
  • Visibilità del livello
  • Correzioni di flusso e barriere
  • Correzioni di TransitionListener

Versione 2.0.0-beta7

12 giugno 2020

androidx.constraintlayout:constraintlayout:2.0.0-beta7 è stato rilasciato.

Correzioni di bug

Consulta l'elenco dei problemi chiusi qui.

Le correzioni importanti sono:

  • Problemi con la visualizzazione a scorrimento nidificata in MotionLayout
  • Problemi relativi al listener di transizione con MotionLayout
  • Perdita di memoria in MotionLayout
  • Problemi di RecyclerView
  • Visibilità del gruppo
  • Problemi di spaziatura interna

Versione 2.0.0-beta6

13 maggio 2020

androidx.constraintlayout:constraintlayout:2.0.0-beta6 è stato rilasciato.

Correzioni di bug

Consulta l'elenco dei problemi chiusi qui. Le correzioni più importanti riguardano la gestione della visibilità dei gruppi e i problemi relativi ai vincoli derivati in MotionLayout.

Versione 2.0.0-beta5

7 maggio 2020

androidx.constraintlayout:constraintlayout:2.0.0-beta5 è stato rilasciato.

Correzioni di bug

Consulta l'elenco dei problemi chiusi qui.

Versione 2.0.0-beta4

16 dicembre 2019

androidx.constraintlayout:constraintlayout:2.0.0-beta4 è stato rilasciato.

Nuove funzionalità

MotionLayout

Nuovi attributi nella transizione:

  • layoutDuringTransition : consente di configurare il modo in cui MotionLayout deve reagire alle chiamate requestLayouts dei figli durante una transizione. I valori possibili sono {ignoreRequest, honorRequest}
  • pathMotionArc : il percorso seguito dagli elementi in movimento utilizzerà un arco. I valori possibili sono {startVertical | startHorizontal | flip | none }

Ora è possibile definire una transizione predefinita semplicemente omettendo i ConstraintSet di inizio e fine. Questa transizione predefinita verrà utilizzata se non è possibile trovare un'altra transizione esistente che corrisponda agli stati di inizio/fine correnti.

Correzioni di bug

Consulta l'elenco dei problemi chiusi qui.