ConstraintLayout
androidx.constraintlayout.widget
Ta tabela zawiera listę wszystkich artefaktów w grupie androidx.constraintlayout.
| Artefakt | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja Alfa |
|---|---|---|---|---|
| constraintlayout | 2.2.1 | - | - | - |
| constraintlayout-compose | 1.1.1 | - | - | - |
| constraintlayout-core | 1.1.1 | - | - | - |
Deklarowanie zależności
Aby dodać zależność od ConstraintLayout, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w artykule Repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:
Odlotowe
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") }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Opinia
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz dodać swój głos do istniejącego problemu, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
ConstraintLayout-compose i ConstraintLayout-Core 1.1
Wersja 1.1.1
26 lutego 2025 r.
androidx.constraintlayout:constraintlayout-compose:1.1.1, androidx.constraintlayout:constraintlayout-compose-android:1.1.1 i androidx.constraintlayout:constraintlayout-core:1.1.1 są dostępne. Wersja 1.1.1 zawiera te zmiany.
Poprawki błędów
- Rozwiązuje niektóre problemy z układem, które w niektórych przypadkach powodują, że układy nie są umieszczane. np. przełączanie widoczności. (I34e68, b/299134793)
Wersja 1.1.0
30 października 2024 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0, androidx.constraintlayout:constraintlayout-compose-android:1.1.0 i androidx.constraintlayout:constraintlayout-core:1.1.0 są dostępne. Wersja 1.1.0 zawiera te zmiany.
Ważne zmiany od wersji 1.0.0
- Poprawia interakcję z SharedTransitionLayout (b/332898040).
- Rozwiązuje problemy z układem związane z pomiarami spowodowane ponownym komponowaniem (b/219091179, Ibfe8a).
Wersja 1.1.0-rc01
16 października 2024 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-rc01, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-rc01 i androidx.constraintlayout:constraintlayout-core:1.1.0-rc01 są dostępne. Wersja 1.1.0-rc01 zawiera te zmiany.
Wersja 1.1.0-beta01
4 września 2024 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-beta01 i androidx.constraintlayout:constraintlayout-core:1.1.0-beta01 są dostępne. Wersja 1.1.0-beta01 zawiera te zmiany.
Wersja 1.1.0-alpha14
7 sierpnia 2024 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha14, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha14 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha14 są dostępne. Wersja 1.1.0-alpha14 zawiera te zmiany.
Zmiany w interfejsie API
- Flagi są teraz udostępniane osobno za pomocą obiektu towarzyszącego i można je łączyć z operatorem
or. (I9df53) - Uproszczone narzędzia
createRowicreateColumn. Ulepszone nazwy parametrówcreateGridi dokumentacja dla większej przejrzystości. (Iebc92) - Uproszczony interfejs
animateChangesAPI wConstraintLayout, który wymaga tylko niepustego parametruAnimationSpec.onIncomingConstraintswInvalidationStrategyjest teraz zwykłą funkcją lambda.fixedWidthRatezmieniono nashouldInvalidateOnFixedWith, podobnie jak w przypadku wariantu Wysokość. (Ie59cd, b/332898040, b/336370035) - Źródła
NestedScrollDragUserInputiNestedScrollFlingUserInputzastępujemy źródłamiUserInputiSideEffect, aby uwzględnić rozszerzoną definicję tych źródeł, która obejmuje teraz animacje (Side Effect) oraz kółko myszy i klawiaturę (UserInput). (I40579)
Wersja 1.1.0-alpha13
4 października 2023 roku
Usługi androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha13, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha13 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha13 są udostępniane bez zmian. Wersja 1.1.0-alpha13 zawiera te zmiany.
- Ta wersja umożliwia bibliotekom
androidx.constraintlayoutzachowanie zgodności ABI z najnowszymi wersjami Compose.
Wersja 1.1.0-alpha12
9 sierpnia 2023 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha12, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha12 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha12 są dostępne. Wersja 1.1.0-alpha12 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano
LayoutScopeMarkerdo Transition DSL. (If54ce)
Wersja 1.1.0-alpha11
26 lipca 2023 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha11, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha11 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha11 są dostępne. Wersja 1.1.0-alpha11 zawiera te zmiany.
Nowe funkcje
- Możesz teraz podać
InvalidationStrategy, aby zoptymalizować unieważnianie wMotionLayout. To zwykle powoduje spadek skuteczności. (Iada0c) - Możesz teraz używać
animateChanges = truepodczas korzystania zConstraintLayoutz wbudowanym DSL modyfikatora (Modifier.constrainAs). Za każdym razem, gdy zmienisz DSL ograniczeń,ConstraintLayoutautomatycznie przejdzie do nowego stanu. (I9abf1) - Włączona funkcja dla
limitBoundsTow OnSwipe. (I56522)
Zmiany w interfejsie API
- Zmieniono nazwę
TransitionScope.staggerednaTransitionScope.maxStaggerDelay. (I0fd2d)
Poprawki błędów
- Usunęliśmy błąd, który powodował, że parametr
dragScalezOnSwipenie działał. (8bef26) - Rozwiązanie problemu polegającego na tym, że
customColorwMotionScenenie działało prawidłowo w przypadku przezroczystych kolorów. (81b2ac) - Naprawiliśmy błąd, który powodował, że
OnSwipenie był prawidłowo odczytywany po zatrzymaniu. Poprawiliśmy też obliczanie prędkości początkowej dlatouchUp. (Ia5f6f) - Zaktualizowano dokumentację KDoc dla funkcji
ConstraintLayoutiConstraintset. (3bfe63)
Wersja 1.1.0-alpha10
24 maja 2023 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha10, androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha10 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha10 są dostępne. Wersja 1.1.0-alpha10 zawiera te zmiany.
Zmiany w interfejsie API
MotionLayoutInterfejs API nie jest już eksperymentalny. Reprezentuje on początkowy zestaw stabilnych interfejsów API dlaMotionLayout. (I288f4)- Użytkownik
MotionLayoutStatezostał usunięty. (Id3ac1) - Możesz teraz używać
DebugFlagsdo debugowania wizualnego:DebugFlags(showBounds = true). (Ic714b) - Zmieniono zmienną rozszerzenia
Dp.asDimensionna metodę:Dp.asDimension(). (I2d6ef) - W
MotionLayoutDSL jest teraz obsługiwane rozłożenie w czasie. Maksymalne opóźnienie można zdefiniować za pomocąTransitionScope.staggered. Możesz też użyćConstrainScope.staggeredWeight(wMotionSceneScope), aby uzyskać niestandardową kolejność rozłożoną w czasie. (I70275) - W narzędziu pomocniczym Siatka wprowadzono 2 zmiany:
paddingLeftipaddingRightnapaddingStartipaddingEndoraz 2. zaktualizować formatgridSpansigridSkipna tablicę obiektów Span i Skip, aby nadać mu bardziej strukturalny charakter. (Idd1eb)
Wersja 1.1.0-alpha09
22 marca 2023 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha09 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha09 zostały opublikowane. Wersja 1.1.0-alpha09 zawiera te zmiany.
Zmiany w interfejsie API
Modifier.intermediateLayoutnie wymaga już wyraźnegoLookaheadScope. Blok miary wintermediateLayoutmaIntermediateMeasureScopejako odbiornik, który zapewnia wygodneCoroutineScope,LookaheadScopeiMeasureScope.LookaheadLayoutzostał zastąpiony przezLookaheadScope, który nie jest już układem. Dzięki temu treści dla dzieci naLookaheadScopemogą być bezpośrednio kontrolowane przezMeasurePolicyrodzica. (Ibe2e5)Easing.Cubic()może teraz przyjmować parametry przekroczenia. (I2d826)
Wersja 1.1.0-alpha08
8 marca 2023 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha08 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha08 zostały opublikowane. Wersja 1.1.0-alpha08 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano sprawdzanie kodu, aby sugerować użycie
Dimension.percent(1f)iLayoutReference.withChainParams()w przypadkach, w których typowe wzorce mogą prowadzić do nieprzewidywalnego zachowania. (I62eb0, I03060)
Zmiany w interfejsie API
- Włącz flagi
ReverseSpanDirectioniSpansOrderFirstdla funkcji Pomocnik siatki w kompozycji.ReverseSpanDirection: odwróć specyfikację szerokości i wysokości w przypadku zakresów lub pominięć.SpansOrderFirst: zakresy będą uwzględniać kolejność widżetów. (I6ad50)
- Użyj
Modifier.onStartEndBoundsChanged(...), aby uzyskać lokalne granice komponentów, których nie dotyczy animacja, wMotionLayout. Przydatne w przypadku każdej interakcji z interfejsem, która wymaga informacji o układzie i może też wywoływać animacje, np.DragAndDrop. (I6b5f9) - Włączanie pomijania i rozpiętości w narzędziu Grid Helper w Compose (I917b6)
Poprawki błędów
- Właściwości stałego tłumaczenia nie stosują oczekiwanych wartości. (I961cd)
Wersja 1.1.0-alpha07
8 lutego 2023 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha07 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha07 zostały opublikowane. Wersja 1.1.0-alpha07 zawiera te zatwierdzenia.
Nowe funkcje
- Dodanie nowych interfejsów API, aby włączyć narzędzie Grid Helper w Compose za pomocą DSL (I1143b)
Poprawki błędów
- Rozwiązanie problemu z nieprawidłowym układem elementu
Wrap.Chainw przypadku przepływu w odniesieniu do parametrumaxElement. (e1f2ed3) - Rozwiązaliśmy problem polegający na tym, że wartość
startConstraintSetnie była aktualizowana podczas zmiany przejścia za pomocąMotionLayout(motionScene: MotionScene, progress: Float, transitionName: String). (17ffff1) - Rozwiązaliśmy problem polegający na tym, że
ConstraintSetnie odzwierciedlał niektórych zmian podczas dziedziczenia ograniczeń przezConstraintSet(extendConstraintSet: ConstraintSet, description: ConstraintSetScope.() -> Unit).(740804b)
Wersja 1.1.0-alpha06
25 stycznia 2023 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha06 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha06 zostały opublikowane. Wersja 1.1.0-alpha06 zawiera te zmiany.
Nowe funkcje
- Dodano nowe interfejsy API, aby włączyć Asystenta siatki w Compose z reprezentacją JSON, która umożliwia umieszczanie komponentów w siatce 2D. (I968ad)
Zmiany w interfejsie API
- Dodanie do
MotionLayout(I184a9) obsługi trybów łuku w górę i w dółArc.Aboveoraz trybów łuku niezależnych od kierunkuArc.Below - Można teraz ograniczyć pozycję reklamy zakotwiczonej u góry lub u dołu strony do reklamy zakotwiczonej u góry lub u dołu strony i odwrotnie. (I54628)
- Zmieniono nazwę
MotionLayoutScope#motionProperties(w tym pochodnych) naMotionLayoutScope#customProperties. Jest to spójne z ustawianiem właściwości niestandardowych. (Ib34c9) - Możesz teraz tworzyć wiele plików referencyjnych w
ConstraintSetiMotionScene:val (box, text, button) = createRefsFor("box", "text","button"). Stosuj ograniczenia do wielu elementów za pomocą operatoraconstrain(box, button, text). WConstrainScopemożesz teraz intuicyjnie ustawić stały wymiar za pomocąDp.asDimension:width = 10.dp.asDimension. (I021ec, Ia0960) - Metody
MotionScene()iTransition()są teraz funkcjami niekomponowalnymi. Obiekty z tych funkcji (w tymConstraintSet) powinny być teraz prawidłowo porównywalne.animateChanges = truewConstraintLayoutmożna teraz używać tylko z jednym odwołaniemConstraintSet, o ile podczas ponownego komponowania zmieniła się dowolna z jego właściwości. (I7d22e)
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że
ConstraintLayoutzawsze powodował niepotrzebne dodatkowe ponowne komponowanie, gdy zmieniano elementy pomocnicze. (Id83ad, b/222093277) - Poprawiono działanie podczas korzystania z funkcji Intrinsics z
ConstraintLayoutiMotionLayout. (I487ae, b/220527863) - Naprawiono problem z niemożnością ponownego pomiaru po zmianie treści. (Ibfe8a, b/219091179)
Wersja 1.1.0-alpha05
7 grudnia 2022 r.
androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha05 i androidx.constraintlayout:constraintlayout-core:1.1.0-alpha05 zostały opublikowane. Wersja 1.1.0-alpha05 zawiera te zatwierdzenia.
Nowe funkcje
- Obsługa niestandardowych
KeyAttributesw DSL (b94e748) - Właściwości odchylenia powierzchni w
ConstrainScope(32625d0) - Obsługa parametrów niestandardowych w łańcuchach (72a2e9e)
- Dodawanie testów Macrobenchmark dla
MotionLayoutw Compose (36f43bc) - Więcej informacji o zmianach w poprzedniej wersji Compose znajdziesz na stronie wiki.
Zmiany w interfejsie API
- Parametry Odwróć
addConstraintSetiaddTransition(152facc)
Poprawki błędów
- Napraw łańcuchy poziome (ed5f56e)
Wersja 1.1.0-alpha01
20 maja 2022 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha01
Pamiętaj, że interfejs MotionLayout API jest eksperymentalny i wymaga wyrażenia zgody.
Więcej informacji znajdziesz w artykule Co nowego w Compose 1.1.0-alpha01 na GitHubie.
Wersja 2.2
Wersja 2.2.1
26 lutego 2025 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.1 Wersja 2.2.1 zawiera te zmiany.
Wkład zewnętrzny
- Rozwiązuje problem ze zgodnością binarną z biblioteki
constraintlayout-core. Dziękujemy Carlo Marinangeli! (I8952e, b/376718273)
Wersja 2.2.0
30 października 2024 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0 Wersja 2.2.0 zawiera te zmiany.
Ważne zmiany od wersji 2.1.0
- Wersja równoległa z podstawową biblioteką constraintlayout-core.
Wersja 2.2.0-rc01
16 października 2024 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-rc01 Wersja 2.2.0-rc01 zawiera te zmiany.
Wersja 2.2.0-beta01
4 września 2024 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-beta01 Wersja 2.2.0-beta01 zawiera te zmiany.
Wersja 2.2.0-alpha14
7 sierpnia 2024 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha14 Wersja 2.2.0-alpha14 zawiera te zmiany.
Wersja 2.2.0-alpha13
4 października 2023 roku
androidx.constraintlayout:constraintlayout:2.2.0-alpha13 zostaje opublikowany bez zmian. Wersja 2.2.0-alpha13 zawiera te zatwierdzenia.
Wersja 2.2.0-alpha12
9 sierpnia 2023 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha12 Wersja 2.2.0-alpha12 zawiera te zatwierdzenia.
Wersja 2.2.0-alpha11
26 lipca 2023 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha11 Wersja 2.2.0-alpha11 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaj metodę ustawiającą, aby umożliwić programistom programowe ustawianie wartości parametru
mInfiniteCarousel(I0a8ca).
Wersja 2.2.0-alpha10
24 maja 2023 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha10 Wersja 2.2.0-alpha10 zawiera te zatwierdzenia.
Poprawki błędów
- Napraw uszkodzony link do dokumentu
MotionLayout. (51cbe88)
Wersja 2.2.0-alpha09
22 marca 2023 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha09 Wersja 2.2.0-alpha09 zawiera te zatwierdzenia.
Wersja 2.2.0-alpha08
8 marca 2023 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha08 Wersja 2.2.0-alpha08 zawiera te zatwierdzenia.
Wersja 2.2.0-alpha07
8 lutego 2023 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha07 Wersja 2.2.0-alpha07 zawiera te zatwierdzenia.
Poprawki błędów
- Rozwiąż problem z
ConstraintLayoutbrakiem treści na stronie. (I82e25)
Wersja 2.2.0-alpha05
7 grudnia 2022 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha05 Wersja 2.2.0-alpha05 zawiera te zatwierdzenia.
- Więcej informacji o zmianach w poprzedniej wersji znajdziesz na stronie wiki na GitHubie.
Poprawki błędów
- Naprawiono wyciek pamięci w karuzeli widoków (eb67b82)
Wersja 2.2.0-alpha01
20 maja 2022 r.
Publikacja androidx.constraintlayout:constraintlayout:2.2.0-alpha01
Zawiera podgląd nowego Grid.
Więcej informacji znajdziesz w sekcji Nowości w wersji 2.2.0-alpha01 na GitHubie.
ConstraintLayout-compose 1.0
Biblioteka ConstraintLayout-compose 1.0 udostępnia funkcje ConstraintLayout w Jetpack Compose.
Wersja 1.0.1
20 maja 2022 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.1
Pamiętaj, że interfejs MotionLayout API jest eksperymentalny i wymaga wyrażenia zgody.
Więcej informacji znajdziesz w artykule Co nowego w Compose 1.0.1 na GitHubie.
Wersja 1.0.0
13 stycznia 2022 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0
Pamiętaj, że interfejs MotionLayout API jest obecnie eksperymentalny i wymaga wyrażenia zgody.
Więcej informacji znajdziesz w artykule na GitHubie What's New in 1.0 (Compose) (Co nowego w wersji 1.0 (Compose)).
Wersja 1.0.0-rc02
16 listopada 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-rc02
Więcej informacji znajdziesz w artykule na GitHubie What's New in 1.0 (Compose) (Co nowego w wersji 1.0 (Compose)).
Wersja 1.0.0-rc01
27 września 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-rc01
To druga wersja beta. Jest ona uznawana za kompletną i zapewnia ConstraintLayout i MotionLayout w przypadku Compose.
Więcej informacji znajdziesz w artykule na GitHubie What's New in 1.0 (Compose) (Co nowego w wersji 1.0 (Compose)).
Wersja 1.0.0-beta02
30 lipca 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02
To druga wersja beta. Jest ona uznawana za kompletną i zapewnia ConstraintLayout i MotionLayout w przypadku Compose.
Więcej informacji znajdziesz w artykule na GitHubie What's New in 1.0 (Compose) (Co nowego w wersji 1.0 (Compose)).
Wersja 1.0.0-beta01
22 lipca 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01
To pierwsza wersja beta. Jest ona uznawana za kompletną i zapewnia ConstraintLayout i MotionLayout w przypadku Compose.
Więcej informacji znajdziesz w artykule na GitHubie What's New in 1.0 (Compose) (Co nowego w wersji 1.0 (Compose)).
Wersja 1.0.0-alpha07
18 maja 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07
- Zaktualizowano, aby była zgodna z wersją Compose
1.0.0-beta07.
Wersja 1.0.0-alpha06
4 maja 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha06
- Optymalizacja Compose: funkcja kompozycyjna w ConstraintLayout (#193)
- Minimalizowanie ponownych pomiarów w Compose (#210)
Wersja 1.0.0-alpha05
15 marca 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05
- zawiera poprawkę mechanizmu optymalizacji (b/182657720);
- dodaj parametr optimizationLevel do funkcji kompozycyjnej ConstraintLayout.
Wersja 1.0.0-alpha04
11 marca 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04
Aktualizacja do najnowszego silnika constraintlayout-core
Wersja 1.0.0-alpha03
24 lutego 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha03
Aktualizacja wersji beta01 Jetpack Compose
Wersja 1.0.0-alpha02
10 lutego 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02
Aktualizacja wersji Jetpack Compose alpha12
Wersja 1.0.0-alpha01
2 lutego 2021 r.
Publikacja androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01
Pierwsza wersja biblioteki, która udostępnia wbudowane i zewnętrzne języki DSL do wyrażania ograniczeń.
Wersja 2.1
ConstraintLayout 2.1.0 udostępnia więcej funkcji w MotionLayout i nowe komponenty pomocnicze (np. Carousel).
Wersja 2.1.4
20 maja 2022 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.4
Więcej informacji znajdziesz w artykule Co nowego w wersji 2.1.4 na GitHubie.
Wersja 2.1.3
13 stycznia 2022 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.3
Więcej informacji znajdziesz w artykule na GitHubie Co nowego w wersji 2.1.
Wersja 2.1.2
16 listopada 2021 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.2
Więcej informacji znajdziesz w artykule na GitHubie Co nowego w wersji 2.1.
Wersja 2.1.1
27 września 2021 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.1
To ostatnia wersja 2.1.1.
Więcej informacji znajdziesz w artykule na GitHubie Co nowego w wersji 2.1.
Wersja 2.1.0
30 lipca 2021 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.0
To ostatnia wersja 2.1.0.
Więcej informacji znajdziesz w artykule na GitHubie Co nowego w wersji 2.1.
Wersja 2.1.0-rc01
22 lipca 2021 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.0-rc01
Jest to wersja kandydująca 2.1.0, która zawiera drobne ulepszenia i poprawki w porównaniu z ostatnią wersją beta. Więcej informacji znajdziesz w artykule na GitHubie Co nowego w wersji 2.1.
Wersja 2.1.0-beta02
4 maja 2021 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.0-beta02
Kilka nowych funkcji w MotionLayout:
- Ulepszenie OnSwipe, w tym sprężyna (sztywność, tłumienie, masa itp.) i nigdy nie kończy się
- Funkcja jumpToState
- Tryb ViewTransition downUp, w którym po dotknięciu ekranu odtwarzanie jest wznawiane do 100%, a po zwolnieniu palca odtwarzanie jest cofane do 0%.
Różne poprawki, w tym:
- Rozwiązanie problemu w MotionLayout z przewijaniem w pionie (#173)
- Poprawa wydajności zagnieżdżonego elementu MotionLayout (#189)
- Szybkie przejście z użyciem NestedScrollView w MotionLayout (#189)
- ConstraintSet gone in MotionLayout (#189)
- Obsługa przejść downUp w MotionLayout (#190)
- Poprawka w klasie ImageFilter podczas ponownego używania obiektów rysowalnych (#192)
- Dodanie obsługi sprężyn w MotionLayout (#199)
- Poprawa wydajności CircularFlow (#200)
- Poprawki w przypadku ograniczeń pochodnych i zastępowania ograniczeń (#212)
Wersja 2.1.0-beta01
11 marca 2021 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.0-beta01
ConstraintLayout
Atrybuty android:layout_width i android:layout_height ponownie stały się obowiązkowe ze względu na problemy ze zgodnością.
MotionLayout
- Programowe wstawianie i usuwanie funkcji onSwipe i onClick w przypadku przejść
- Eksperymentalna obsługa przejść przez obracanie ekranu
- argument duration w przypadku przejść
- Lepsza obsługa atrybutów customAttributes, które są wartościami logicznymi lub odwołaniami
Funkcje pomocnicze
- dodaliśmy możliwość animowania lub bezpośredniego przechodzenia do danego elementu karuzeli;
- nowy pomocnik CircularFlow,
Więcej informacji o tej wersji znajdziesz tutaj oraz w informacjach o naprawionych błędach.
Wersja 2.1.0-alpha2
17 grudnia 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.0-alpha2
Druga wersja alfa zawiera kilka nowych funkcji:
ConstraintLayout
- Parametry android:layout_width i android:layout_height są teraz opcjonalne, a domyślnym działaniem jest wrap_content.
- nowe atrybuty layout_constraintWidth i layout_constraintHeight do wyrażania ograniczeń wymiarów;
- obsługuje ujemne marginesy w przypadku ograniczeń,
- obsługuje ograniczenia od linii bazowej do góry i od linii bazowej do dołu;
- obsługuje ograniczenia dotyczące podstawowej marży,
- SharedValues umożliwiają wstrzykiwanie wartości zewnętrznych do ConstraintLayout
MotionLayout
- Obsługa interpolatorów przekroczenia (przewidywanie, przekroczenie)
- Rozszerzona obsługa MotionHelper
- Dodano animowaną aktualizację ConstraintSet do MotionLayout updateStateAnimate(id,cset,duration);
- Przejście widoku oparte na udostępnionej wartości
- scheduleTransitonTo umożliwia umieszczenie w kolejce przejścia, które ma się rozpocząć po zakończeniu bieżącego przejścia.
Funkcje pomocnicze
- Karuzela obsługuje teraz tryb nieskończony (zawijany)
- ReactiveGuide : linia pomocnicza, która automatycznie zmienia położenie, gdy zmieni się wartość SharedValue.
- MotionEffect : wstawia klatki kluczowe do widoków, do których się odwołuje, poruszających się w danym kierunku.
- MotionLabel – widok do animowania tekstu w jednym wierszu
Więcej informacji o tej wersji znajdziesz tutaj.
Wersja 2.1.0-alpha1
19 listopada 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.1.0-alpha1
Pierwsza wersja alfa wersji 2.1. Wprowadzono obsługę:
- Narzędzie do tworzenia karuzeli, które umożliwia tworzenie niestandardowych widoków karuzeli.
- Sceny MotionLayout obsługują elementy include i zastępowanie ograniczeń
- MotionLayout zapewnia lepszą obsługę obracania (dane wejściowe i wyjściowe).
- MotionLayout dodaje ViewTransitions, co umożliwia przejścia pojedynczego widoku w przypadku mutacji zestawów ograniczeń.
Dodatkowe informacje o tej wersji znajdziesz tutaj.
Wersja 2.0
ConstraintLayout 2.0 dodaje nowe funkcje układów (układy wirtualne itp.) i nową klasę upraszczającą animację widoków, MotionLayout.
Wersja 2.0.4
29 października 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.4
Poprawki błędów
Ta poprawka usuwa potencjalny błąd NullPointerException, który może wystąpić podczas usuwania widoku podrzędnego w czasie działania. Zalecamy zaktualizowanie do tej wersji.
Listę zamkniętych zgłoszeń znajdziesz tutaj.
Wersja 2.0.3
27 października 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.3
Poprawki błędów
W tej wersji rozwiązaliśmy kilka problemów. Zalecamy zaktualizowanie do tej wersji.
- Obsługa wcięć w systemie Windows
- Obsługa współczynnika wymiarów w niektórych sytuacjach
- Awaria w przypadku niektórych układów RTL
Listę zamkniętych zgłoszeń znajdziesz tutaj.
Wersja 2.0.2
6 października 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.2
Poprawki błędów
Ta wersja poprawia wydajność i rozwiązuje kilka problemów. Zalecamy zaktualizowanie do tej wersji.
- W niektórych sytuacjach obsługa widoczności GONE w klasie ConstraintLayout była nieprawidłowa
- W niektórych sytuacjach nieprawidłowo obsługiwano spakowane łańcuchy w ConstraintLayout
- Poprawiony wyjątek dotyczący inflacji w przypadku interfejsu API 15 dla pomocnika układu wirtualnego Flow
- Funkcja limitsBoundsTo w MotionLayout nie działała prawidłowo
- w niektórych sytuacjach (przejścia łańcuchowe) funkcja przejścia na koniec nie działała w MotionLayout;
Listę zamkniętych zgłoszeń znajdziesz tutaj.
Wersja 2.0.1
25 sierpnia 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.1
Jest to niewielka aktualizacja, która umożliwia korzystanie z MotionEditor w Android Studio.
Wersja 2.0.0
21 sierpnia 2020 roku
Publikacja androidx.constraintlayout:constraintlayout:2.0.0
Poprawki błędów
Listę zamkniętych zgłoszeń znajdziesz tutaj.
Najważniejsze poprawki:
- Opóźnienia przejść MotionLayout i poprawki dotyczące TransitionListener
- Poprawki dotyczące przepływu i bariery w ConstraintLayout
Wersja 2.0.0-rc1
29 lipca 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.0-rc1
Poprawki błędów
Listę zamkniętych zgłoszeń znajdziesz tutaj.
Najważniejsze poprawki:
- Poprawki przepływu
- Poprawki RecyclerView (zalecamy aktualizację do wersji 1.2.0 alpha 5 lub nowszej)
- Poprawki dotyczące MotionLayout TransitionListener
- Poprawka wycieku pamięci w MotionLayout
Wersja 2.0.0-beta8
7 lipca 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.0-beta8
Poprawki błędów
Listę zamkniętych zgłoszeń znajdziesz tutaj.
Najważniejsze poprawki:
- Działanie obiektu zastępczego
- Widoczność warstwy
- Poprawki dotyczące przepływu i barier
- Poprawki w przypadku TransitionListener
Wersja 2.0.0-beta7
12 czerwca 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.0-beta7
Poprawki błędów
Listę zamkniętych zgłoszeń znajdziesz tutaj.
Najważniejsze poprawki:
- Problemy z zagnieżdżonym widokiem przewijania w MotionLayout
- Problemy z elementami nasłuchującymi przejścia w MotionLayout
- Wyciek pamięci w MotionLayout
- Problemy z elementem RecyclerView
- Widoczność grupy
- Problemy z dopełnieniem
Wersja 2.0.0-beta6
13 maja 2020 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.0-beta6
Poprawki błędów
Listę zamkniętych zgłoszeń znajdziesz tutaj. Ważne poprawki dotyczą obsługi widoczności grup i problemów z ograniczeniami pochodnymi w MotionLayout.
Wersja 2.0.0-beta5
7 maja 2020 roku
Publikacja androidx.constraintlayout:constraintlayout:2.0.0-beta5
Poprawki błędów
Listę zamkniętych problemów znajdziesz tutaj
Wersja 2.0.0-beta4
16 grudnia 2019 r.
Publikacja androidx.constraintlayout:constraintlayout:2.0.0-beta4
Nowe funkcje
MotionLayout
Nowe atrybuty w programie przejścia:
- layoutDuringTransition : pozwala skonfigurować sposób, w jaki MotionLayout ma reagować na wywołania requestLayouts elementów podrzędnych podczas przejścia. Możliwe wartości to {ignoreRequest, honorRequest}
- pathMotionArc : elementy poruszające się po ścieżce będą używać łuku. Możliwe wartości to {startVertical | startHorizontal | flip | none}.
Możesz teraz zdefiniować domyślne przejście, pomijając po prostu początkowe i końcowe ConstraintSet. Ta domyślna zmiana zostanie użyta, jeśli nie będzie można znaleźć innej istniejącej zmiany, która pasuje do bieżących stanów początkowego i końcowego.
Poprawki błędów
Listę zamkniętych problemów znajdziesz tutaj