Компоновка ограничений
androidx.constraintlayout.widget
 В этой таблице перечислены все артефакты в группе androidx.constraintlayout .
| Артефакт | Стабильный выпуск | Кандидат на выпуск | Бета-версия | Альфа-релиз | 
|---|---|---|---|---|
| макет ограничения | 2.2.1 | - | - | - | 
| ограничениеlayout-compose | 1.1.1 | - | - | - | 
| ограничениеlayout-core | 1.1.1 | - | - | - | 
Объявление зависимостей
Чтобы добавить зависимость от ConstraintLayout, вам необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .
 Добавьте зависимости для нужных вам артефактов в файл build.gradle для вашего приложения или модуля:
классный
dependencies { implementation "androidx.constraintlayout:constraintlayout:2.2.1" // To use constraintlayout in compose implementation "androidx.constraintlayout:constraintlayout-compose:1.1.1" }
Котлин
dependencies { implementation("androidx.constraintlayout:constraintlayout:2.2.1") // To use constraintlayout in compose implementation("androidx.constraintlayout:constraintlayout-compose:1.1.1") }
Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.
Дополнительную информацию см. в документации по системе отслеживания проблем .
ConstraintLayout-compose и ConstraintLayout-Core 1.1
Версия 1.1.1
26 февраля 2025 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.1 , androidx.constraintlayout:constraintlayout-compose-android:1.1.1 и androidx.constraintlayout:constraintlayout-core:1.1.1 выпущены. Версия 1.1.1 содержит эти коммиты .
Исправления ошибок
- Устранены некоторые проблемы с макетом, из-за которых в некоторых случаях макеты не размещались. Например, переключение видимости. ( I34e68 , б / 299134793 )
 
Версия 1.1.0
30 октября 2024 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.0 , androidx.constraintlayout:constraintlayout-compose-android:1.1.0 и androidx.constraintlayout:constraintlayout-core:1.1.0 выпущены. Версия 1.1.0 содержит эти коммиты .
Важные изменения с версии 1.0.0
- Исправляет взаимодействие с SharedTransitionLayout ( b/332898040 ).
 - Исправлены проблемы с макетом, связанные с измерениями из-за рекомпозиции ( b/219091179 , Ibfe8a ).
 
Версия 1.1.0-rc01
16 октября 2024 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.0-rc01 , androidx.constraintlayout:constraintlayout-compose-android:1.1.0-rc01 и androidx.constraintlayout:constraintlayout-core:1.1.0-rc01 выпущены. Версия 1.1.0-rc01 содержит эти коммиты .
Версия 1.1.0-бета01
4 сентября 2024 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01 , androidx.constraintlayout:constraintlayout-compose-android:1.1.0-beta01 и androidx.constraintlayout:constraintlayout-core:1.1.0-beta01 выпущены. Версия 1.1.0-beta01 содержит эти коммиты .
Версия 1.1.0-альфа14
7 августа 2024 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha14 , androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha14 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha14 выпущены. Версия 1.1.0-alpha14 содержит эти коммиты .
Изменения API
-  Флаги теперь предоставляются индивидуально через сопутствующий объект и могут комбинироваться с оператором 
or. ( I9df53 ) -  Упрощенные помощники 
createRowиcreateColumn. Улучшены имена параметровcreateGridи документация для пояснения. ( Iebc92 ) -  Упрощен API 
animateChangesвConstraintLayout, теперь требуется только ненулевоеAnimationSpec.onIncomingConstraintsвInvalidationStrategyтеперь является обычной лямбдой.fixedWidthRateпереименован вshouldInvalidateOnFixedWith, то же самое для варианта Height. ( Ie59cd , б/332898040 , б/336370035 ) -  Источники 
NestedScrollDrag и Fling заменяютсяUserInputиSideEffect, чтобы обеспечить расширенное определение этих источников, которые теперь включают анимацию (Side Effect) и колесо мыши и клавиатуру (UserInput). ( I40579 ) 
Версия 1.1.0-альфа13
4 октября 2023 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha13 , androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha13 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha13 выпущены без изменений. Версия 1.1.0-alpha13 содержит эти коммиты.
-  Этот выпуск позволяет библиотекам 
androidx.constraintlayoutбыть ABI-совместимыми с последними выпусками Compose. 
Версия 1.1.0-альфа12
9 августа 2023 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha12 , androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha12 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha12 выпущены. Версия 1.1.0-alpha12 содержит эти коммиты.
Изменения API
-  Добавлен 
LayoutScopeMarkerв переходный DSL. ( Если54ce ) 
Версия 1.1.0-альфа11
26 июля 2023 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha11 , androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha11 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha11 выпущены. Версия 1.1.0-alpha11 содержит эти коммиты.
Новые возможности
-  Теперь вы можете предоставить 
InvalidationStrategyдля оптимизации недействительности вMotionLayout. Что обычно является источником снижения производительности. ( Iada0c ) -  Теперь вы можете использовать 
animateChanges = trueпри использованииConstraintLayoutсо встроенным модификатором DSL (Modifier.constrainAs) при каждом изменении DSL ограниченийConstraintLayoutбудет автоматически анимироваться в это новое состояние. ( I9abf1 ) -  Включена функциональность 
limitBoundsToв OnSwipe. ( I56522 ) 
Изменения API
-  
TransitionScope.staggeredпереименован вTransitionScope.maxStaggerDelay. ( I0fd2d ) 
Исправления ошибок
-  Исправлен параметр 
dragScaleизOnSwipe, который не работал. ( 8bef26 ) -  Исправлена ошибка, из-за которой 
customColorвMotionSceneне работал должным образом с прозрачными цветами. ( 81b2ac ) -  Исправлена ошибка, из-за которой 
OnSwipeне отображался должным образом при остановке, а также исправлен расчет начальной скорости дляtouchUp. ( Ia5f6f ) -  Обновлен KDoc для 
ConstraintLayoutComposable иConstraintset. ( 3bfe63 ) 
Версия 1.1.0-альфа10
24 мая 2023 г.
 androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha10 , androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha10 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha10 выпущены. Версия 1.1.0-alpha10 содержит эти коммиты.
Изменения API
-  
MotionLayoutApi больше не является экспериментальным, это начальный набор стабильных API дляMotionLayout. ( I288f4 ) -  Удален 
MotionLayoutState. ( Id3ac1 ) -  Теперь вы можете использовать 
DebugFlagsдля визуальной отладки:DebugFlags(showBounds = true). ( Ic714b ) -  Переменная расширения 
Dp.asDimensionизменена на метод:Dp.asDimension(). ( I2d6ef ) -  Ступенчатый режим теперь поддерживается в 
MotionLayoutDSL. Определите максимальную задержку с помощьюTransitionScope.staggered. Вы также можете использоватьConstrainScope.staggeredWeight(внутриMotionSceneScope), чтобы получить собственный шахматный порядок. ( I70275 ) -  В помощнике Grid внесены два изменения: 1. 
paddingLeftиpaddingRightвpaddingStartиpaddingEndсоответственно, и 2. обновление форматаgridSpansиgridSkipдо массива объектов Span и Skip, чтобы сделать его более структурированным. ( Idd1eb ) 
Версия 1.1.0-альфа09
22 марта 2023 г.
 Выпущены androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha09 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha09 . Версия 1.1.0-alpha09 содержит эти коммиты.
Изменения API
-  
Modifier.intermediateLayoutтеперь не требует явногоLookaheadScope. Блок меры вintermediateLayoutимеетIntermediateMeasureScopeв качестве приемника, что обеспечивает удобныеCoroutineScope,LookaheadScopeиMeasureScope. -  
LookaheadLayoutзаменен наLookaheadScope, который больше не является макетом. Это позволяет дочернему содержимому вLookaheadScopeнапрямую управляться родительскимMeasurePolicy. ( Ibe2e5 ) -  
Easing.Cubic()теперь может принимать параметры превышения. ( I2d826 ) 
Версия 1.1.0-альфа08
8 марта 2023 г.
 Выпущены androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha08 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha08 . Версия 1.1.0-alpha08 содержит эти коммиты.
Новые возможности
-  Добавлены проверки Lint, предлагающие использовать 
Dimension.percent(1f)иLayoutReference.withChainParams()в случаях, когда типичные шаблоны могут привести к непредсказуемому поведению. ( I62eb0 , I03060 ) 
Изменения API
-  Включите флаги 
ReverseSpanDirectionиSpansOrderFirstдля Grid Helper в Compose.-  
ReverseSpanDirection: инвертирует спецификацию ширины и высоты для промежутков/пропусков. -  
SpansOrderFirst: интервалы будут учитывать порядок виджетов. ( I6ad50 ) 
 -  
 -  Используйте 
Modifier.onStartEndBoundsChanged(...)для получения локальных границ Composables вMotionLayout, на которые не влияет анимация. Полезно для любого взаимодействия с пользовательским интерфейсом, требующего информации о макете, которая также может запускать анимацию, такую какDragAndDrop. ( I6b5f9 ) - Включить пропуски и интервалы Grid Helper в Compose ( I917b6 ).
 
Исправления ошибок
- Исправлены свойства перевода, не применявшие ожидаемые значения. ( I961cd )
 
Версия 1.1.0-альфа07
8 февраля 2023 г.
 Выпущены androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha07 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha07 . Версия 1.1.0-alpha07 содержит эти коммиты.
Новые возможности
- Добавьте новые API для включения Grid Helper в Compose с использованием DSL ( I1143b ).
 
Исправления ошибок
-  Исправлена ошибка, из-за которой 
Wrap.Chainдля Flow не отображался должным образом в соответствии с заданным параметромmaxElement. ( e1f2ed3 ) -  Исправлена ошибка, из-за которой 
startConstraintSetне обновлялся при изменении Transition черезMotionLayout(motionScene: MotionScene, progress: Float, transitionName: String). ( 17ffff1 ) -  Исправлен 
ConstraintSet, не отражающий некоторые изменения при наследовании ограничений черезConstraintSet(extendConstraintSet: ConstraintSet, description: ConstraintSetScope.() -> Unit).( 740804b ) 
Версия 1.1.0-альфа06
25 января 2023 г.
 Выпущены androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha06 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha06 . Версия 1.1.0-alpha06 содержит эти коммиты.
Новые возможности
- Добавьте новый Apis, чтобы включить помощник по сетке в Compose с представлением JSON, который позволяет размещать составные элементы в 2D-сетке. ( I968ad )
 
Изменения API
-  Добавлена поддержка режимов дуги вверх и дуги вниз 
Arc.AboveиArc.Below, независимых от направления режимов дуги вMotionLayout( I184a9 ). - Теперь можно ограничить привязку базовой линии верхними/нижними привязками и наоборот. ( I54628 )
 -  
MotionLayoutScope#motionProperties(включая производные) переименован вMotionLayoutScope#customProperties. Это должно быть единообразным, как и при настройке пользовательских свойств. ( Ib34c9 ) -  Теперь можно создавать несколько ссылок в 
ConstraintSetиMotionScene:val (box, text, button) = createRefsFor("box", "text","button"). Примените ограничения к нескольким элементам с помощьюconstrain(box, button, text). ВнутриConstrainScopeтеперь вы можете интуитивно установить фиксированный размер с помощьюDp.asDimension:width = 10.dp.asDimension. ( I021ec , Ia0960 ) -  Методы 
MotionScene()иTransition()теперь являются некомпонуемыми функциями. Объекты этих функций (включаяConstraintSet) теперь должны быть правильно сопоставимы друг с другом.animateChanges = trueвConstraintLayoutтеперь можно использовать только с одной ссылкойConstraintSet, если любое из ее свойств изменилось при рекомпозиции. ( I7d22e ) 
Исправления ошибок
-  Исправлена проблема, из-за которой 
ConstraintLayoutвсегда вызывал ненужную дополнительную рекомпозицию при изменении помощников. ( Id83ad , b/222093277 ) -  Исправлено поведение при использовании Intrinsics с 
ConstraintLayoutиMotionLayout. ( I487ae , б/220527863 ) - Исправлена невозможность повторного измерения при изменении содержимого. ( Ibfe8a , б/219091179 )
 
Версия 1.1.0-альфа05
7 декабря 2022 г.
 Выпущены androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha05 и androidx.constraintlayout:constraintlayout-core:1.1.0-alpha05 . Версия 1.1.0-alpha05 содержит эти коммиты.
Новые возможности
-  Поддержка пользовательских 
KeyAttributesв DSL ( b94e748 ). -  Свойства смещения поверхности в 
ConstrainScope( 32625d0 ) - Поддержка пользовательских параметров в цепочках ( 72a2e9e )
 -  Добавьте тесты Macrobenchmark для 
MotionLayoutв Compose ( 36f43bc ) - Дополнительную информацию об изменениях в предыдущей версии Compose см. на вики-странице.
 
Изменения API
-  Поменяйте местами параметры 
addConstraintSetиaddTransition( 152facc ) 
Исправления ошибок
- Исправить горизонтальные цепи ( ed5f56e )
 
Версия 1.1.0-альфа01
20 мая 2022 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha01 .
Обратите внимание: API MotionLayout является экспериментальным и требует согласия.
Дополнительные сведения см. в разделе «Что нового в Compose 1.1.0-alpha01» на GitHub.
Версия 2.2
Версия 2.2.1
26 февраля 2025 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.1 . Версия 2.2.1 содержит эти коммиты .
Внешний вклад
-  Устранена проблема с двоичной совместимостью из библиотеки 
constraintlayout-core. Спасибо Карло Маринангели! ( I8952e , б/376718273 ) 
Версия 2.2.0
30 октября 2024 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0 . Версия 2.2.0 содержит эти коммиты .
Важные изменения с версии 2.1.0
- Выпуск четности с базовой библиотекой ядра ограничения.
 
Версия 2.2.0-rc01
16 октября 2024 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-rc01 . Версия 2.2.0-rc01 содержит эти коммиты .
Версия 2.2.0-бета01
4 сентября 2024 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-beta01 . Версия 2.2.0-beta01 содержит эти коммиты .
Версия 2.2.0-альфа14
7 августа 2024 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha14 . Версия 2.2.0-alpha14 содержит эти коммиты .
Версия 2.2.0-альфа13
4 октября 2023 г.
 androidx.constraintlayout:constraintlayout:2.2.0-alpha13 выпущен без изменений. Версия 2.2.0-alpha13 содержит эти коммиты.
Версия 2.2.0-альфа12
9 августа 2023 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha12 . Версия 2.2.0-alpha12 содержит эти коммиты.
Версия 2.2.0-альфа11
26 июля 2023 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha11 . Версия 2.2.0-alpha11 содержит эти коммиты.
Изменения API
-  Добавьте метод установки, позволяющий разработчикам программно устанавливать значение для 
mInfiniteCarousel( I0a8ca ). 
Версия 2.2.0-альфа10
24 мая 2023 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha10 . Версия 2.2.0-alpha10 содержит эти коммиты.
Исправления ошибок
-  Исправьте неработающую ссылку на документ 
MotionLayout. ( 51cbe88 ) 
Версия 2.2.0-альфа09
22 марта 2023 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha09 . Версия 2.2.0-alpha09 содержит эти коммиты.
Версия 2.2.0-альфа08
8 марта 2023 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha08 . Версия 2.2.0-alpha08 содержит эти коммиты.
Версия 2.2.0-альфа07
8 февраля 2023 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha07 . Версия 2.2.0-alpha07 содержит эти коммиты.
Исправления ошибок
-  Устраните проблему с отсутствием содержимого страницы 
ConstraintLayout. ( I82e25 ) 
Версия 2.2.0-альфа05
7 декабря 2022 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha05 . Версия 2.2.0-alpha05 содержит эти коммиты.
- Дополнительную информацию об изменениях в предыдущем выпуске см. на вики-странице Github.
 
Исправления ошибок
- Исправление утечки в карусели просмотра ( eb67b82 )
 
Версия 2.2.0-альфа01
20 мая 2022 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.2.0-alpha01 .
 Включает предварительную версию нового помощника Grid .
Дополнительные сведения см. в разделе «Что нового в версии 2.2.0-alpha01» на GitHub.
ConstraintLayout-compose 1.0
ConstraintLayout-compose 1.0 предоставляет функциональные возможности ConstraintLayout в Jetpack Compose.
Версия 1.0.1
20 мая 2022 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.1 .
Обратите внимание: API MotionLayout является экспериментальным и требует согласия.
Дополнительные сведения см. в статье «Что нового в Compose 1.0.1» на GitHub.
Версия 1.0.0
13 января 2022 г.
 androidx.constraintlayout:constraintlayout-compose:1.0.0 выпущен.
Обратите внимание: API MotionLayout сейчас является экспериментальным и требует согласия.
Дополнительные сведения см. в статье GitHub «Что нового в версии 1.0 (Compose)» .
Версия 1.0.0-rc02
16 ноября 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-rc02 .
Дополнительные сведения см. в статье GitHub Что нового в версии 1.0 (Compose) .
Версия 1.0.0-rc01
27 сентября 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-rc01 .
 Этот выпуск является второй бета-версией. Он считается завершенным и предоставляет ConstraintLayout и MotionLayout для Compose.
Дополнительные сведения см. в статье GitHub Что нового в версии 1.0 (Compose) .
Версия 1.0.0-бета02
30 июля 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02 .
 Этот выпуск является второй бета-версией. Он считается завершенным и предоставляет ConstraintLayout и MotionLayout для Compose.
Дополнительные сведения см. в статье GitHub Что нового в версии 1.0 (Compose) .
Версия 1.0.0-бета01
22 июля 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01 .
 Этот выпуск является первой бета-версией. Он считается завершенным и предоставляет ConstraintLayout и MotionLayout для Compose.
Дополнительные сведения см. в статье GitHub «Что нового в версии 1.0 (Compose)» .
Версия 1.0.0-альфа07
18 мая 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07 .
-  Обновлен для совместимости с Compose версии 
1.0.0-beta07. 
Версия 1.0.0-альфа06
4 мая 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha06 .
- Оптимизация композиции: встроенная компоновка Constraintlayout (#193)
 - Минимизируйте повторные измерения в Compose (#210).
 
Версия 1.0.0-альфа05
15 марта 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05 .
- включает исправление для механизма оптимизации ( b/182657720 )
 - добавьте параметр оптимизацииLevel в составной объект ConstraintLayout
 
Версия 1.0.0-альфа04
11 марта 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04 .
Обновите, чтобы использовать новейший механизм ядра ограничения.
Версия 1.0.0-альфа03
24 февраля 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha03 .
Обновление выпуска для выпуска Jetpack Compose beta01
Версия 1.0.0-альфа02
10 февраля 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02 .
Обновление выпуска для выпуска Jetpack Compose альфа12
Версия 1.0.0-альфа01
2 февраля 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01 .
Первый выпуск библиотеки, предоставляющий встроенные и внешние DSL для выражения ограничений.
Версия 2.1
ConstraintLayout 2.1.0 предоставляет более широкие возможности MotionLayout и новые помощники (карусель и т. д.).
Версия 2.1.4
20 мая 2022 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.4 .
Дополнительные сведения см. в разделе «Что нового в версии 2.1.4» на GitHub.
Версия 2.1.3
13 января 2022 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.3 .
Дополнительные сведения см. в статье GitHub «Что нового в версии 2.1» .
Версия 2.1.2
16 ноября 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.2 .
Дополнительные сведения см. в статье GitHub «Что нового в версии 2.1» .
Версия 2.1.1
27 сентября 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.1 .
Это финальная версия 2.1.1.
Дополнительные сведения см. в статье GitHub «Что нового в версии 2.1» .
Версия 2.1.0
30 июля 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.0 .
Это финальная версия 2.1.0.
Дополнительные сведения см. в статье GitHub «Что нового в версии 2.1» .
Версия 2.1.0-rc01
22 июля 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.0-rc01 .
Это кандидат на выпуск версии 2.1.0, содержащий незначительные улучшения и исправления по сравнению с последней бета-версией. Дополнительные сведения см. в статье GitHub «Что нового в версии 2.1» .
Версия 2.1.0-бета02
4 мая 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.0-beta02 .
Несколько новых функций в MotionLayout:
- Улучшение OnSwipe, включая пружину (жесткость, демпфирование, масса и т. д.) и никогда не завершается.
 - функция jumpToState
 - Режим ViewTransition downUp, в котором при касании вниз воспроизводится значение 100, а при нажатии вверх — обратное значение 0.
 
Различные исправления, в частности:
- Исправление проблемы в MotionLayout с вертикальной прокруткой (#173).
 - Улучшения производительности во вложенном MotionLayout (#189).
 - Быстрый переход с помощью NestedScrollView в MotionLayout (#189).
 - ConstraintSet исчез в MotionLayout (#189).
 - Поддержка DownUp ViewTransitions в MotionLayout (#190)
 - Исправление в ImageFilter при повторном использовании объектов рисования (#192).
 - Добавьте поддержку пружины в MotionLayout (#199).
 - Улучшение производительности CircularFlow (#200)
 - Исправления в производных ограничениях/переопределении ограничений (#212).
 
Версия 2.1.0-бета01
11 марта 2021 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.0-beta01 .
ОграничениеLayout
android:layout_width и android:layout_height снова стали необязательными из-за проблем совместимости.
ДвижениеLayout
- Программная поддержка вставки и удаления переходов onSwipe и onClick.
 - Экспериментальная поддержка переходов посредством поворота экрана
 - поддержка аргумента длительности для переходов
 - Улучшенная поддержка пользовательских атрибутов, которые являются логическими или ссылками.
 
Помощники
- добавлен способ анимации или перехода непосредственно к заданному элементу карусели
 - новый помощник CircularFlow
 
Дополнительную информацию об этом выпуске см. здесь , а ошибки устранены .
Версия 2.1.0-альфа2
17 декабря 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.0-alpha2 .
Эта вторая альфа-версия добавляет несколько новых функций:
ОграничениеLayout
- android:layout_width и android:layout_height теперь являются необязательными, а в качестве поведения по умолчанию используетсябертка_контента.
 - новые атрибуты Layout_constraintWidth и Layout_constraintHeight для выражения ограничений размеров
 - поддерживает отрицательные поля для ограничений
 - поддерживает ограничения от базовой линии до верха и от базовой линии до низа
 - поддерживает базовые ограничения маржи
 - SharedValues позволяет вводить внешние значения в ConstraintLayout.
 
ДвижениеLayout
- Поддержка интерполяторов перерегулирования (ожидание, перерегулирование)
 - Расширенная поддержка MotionHelper
 - Добавьте анимированное обновление ConstraintSet в MotionLayout updateStateAnimate(id,cset,duration);
 - ViewTransition на основе общих ценностей
 - ScheduleTransitonЧтобы позволить вам поставить в очередь переход для запуска по завершении текущего перехода.
 
Помощники
- Карусель теперь поддерживает бесконечный (циклический) режим.
 - ReactiveGuide: направляющая, которая автоматически позиционируется при изменении SharedValue.
 - MotionEffect: вставка ключевых кадров в ссылочные виды, движущиеся в заданном направлении.
 - MotionLabel — представление для анимации однострочного текста.
 
Дополнительную информацию об этом выпуске смотрите здесь .
Версия 2.1.0-альфа1
19 ноября 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.1.0-alpha1 .
Первая альфа версии 2.1. Вводит поддержку:
- Помощник по перемещению карусели для создания пользовательских представлений карусели.
 - Сцены MotionLayout поддерживают включение и переопределение ограничений.
 - MotionLayout добавляет более широкую поддержку вращения (ввод и вывод).
 - MotionLayout добавляет ViewTransitions, позволяющий выполнять переходы одного представления для изменения наборов ограничений.
 
Дополнительную информацию об этом выпуске смотрите здесь .
Версия 2.0
В ConstraintLayout 2.0 добавлены новые возможности макетов (виртуальные макеты и т. д.) и новый класс для упрощения анимации представлений MotionLayout.
Версия 2.0.4
29 октября 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.4 .
Исправления ошибок
В этом выпуске исправлен потенциальный NPE, который может возникнуть при удалении дочернего представления во время выполнения. Рекомендуется обновиться до этой версии.
Список закрытых вопросов смотрите здесь .
Версия 2.0.3
27 октября 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.3 .
Исправления ошибок
В этом выпуске исправлено несколько проблем. Рекомендуется обновиться до этой версии.
- Обработка вставок Windows
 - Обработка соотношения размеров в некоторых ситуациях
 - Сбой при использовании некоторых макетов RTL.
 
Список закрытых вопросов смотрите здесь .
Версия 2.0.2
6 октября 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.2 .
Исправления ошибок
В этом выпуске улучшена производительность, а также исправлены некоторые проблемы. Рекомендуется обновиться до этой версии.
- Обработка видимости представления GONE в ConstraintLayout в некоторых ситуациях была некорректной.
 - Обработка упакованных цепочек в ConstraintLayout в некоторых ситуациях была некорректной.
 - Исправлено исключение инфляции в API 15 для помощника виртуального макета Flow.
 - LimitsBoundsTo был нарушен в MotionLayout
 - переход к концу в MotionLayout был нарушен в некоторых ситуациях (цепочные переходы)
 
Список закрытых вопросов смотрите здесь .
Версия 2.0.1
25 августа 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.1 .
Это небольшое обновление, позволяющее использовать MotionEditor в Android Studio.
Версия 2.0.0
21 августа 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.0 .
Исправления ошибок
Список закрытых вопросов смотрите здесь .
Заметные исправления:
- Задержки MotionLayout Transition и исправления TransitionListener
 - Исправления потока и барьеров ConstraintLayout
 
Версия 2.0.0-rc1
29 июля 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.0-rc1 .
Исправления ошибок
Список закрытых вопросов смотрите здесь .
Заметные исправления:
- Исправления потока
 - Исправления RecyclerView (рекомендуем обновиться до recyclerview 1.2.0 альфа 5 или новее)
 - Исправления MotionLayout TransitionListener
 - Исправление утечки памяти MotionLayout
 
Версия 2.0.0-бета8
7 июля 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.0-beta8 .
Исправления ошибок
Список закрытых вопросов смотрите здесь .
Заметные исправления:
- Поведение заполнителя
 - Видимость слоя
 - Поток, исправления барьеров
 - Исправления TransitionListener
 
Версия 2.0.0-бета7
12 июня 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.0-beta7 .
Исправления ошибок
Список закрытых вопросов смотрите здесь .
Заметные исправления:
- Проблемы с вложенным просмотром прокрутки в MotionLayout
 - Проблемы прослушивателя перехода с MotionLayout
 - Утечка памяти в MotionLayout
 - RecyclerПросмотр проблем
 - Видимость группы
 - Проблемы с заполнением
 
Версия 2.0.0-бета6
13 мая 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.0-beta6 .
Исправления ошибок
Список закрытых вопросов смотрите здесь . Заметными исправлениями являются проблемы с обработкой видимости групп и производными ограничениями в MotionLayout.
Версия 2.0.0-бета5
7 мая 2020 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.0-beta5 .
Исправления ошибок
Список закрытых вопросов смотрите здесь
Версия 2.0.0-бета4
16 декабря 2019 г.
 Выпущен androidx.constraintlayout:constraintlayout:2.0.0-beta4 .
Новые возможности
ДвижениеLayout
Новые атрибуты в переходе:
- LayoutDuringTransition: позволяет настроить, как MotionLayout должен реагировать на дочерние вызовы requestLayouts во время перехода. Возможные значения: {ignoreRequest, HonorRequest}.
 - pathMotionArc: путь, по которому перемещаются элементы, будет использовать дугу. Возможные значения: {startVertical | началоГоризонтальное | перевернуть | никто }
 
Теперь можно определить переход по умолчанию, просто опустив начальный и конечный наборы ограничений. Этот переход по умолчанию будет использоваться, если не удастся найти другой существующий переход, соответствующий текущему начальному/конечному состояниям.
Исправления ошибок
Список закрытых вопросов смотрите здесь