Составьте Материал 3 Адаптивный
Последнее обновление | Стабильный релиз | Кандидат на релиз | Бета-релиз | Альфа-релиз |
---|---|---|---|---|
20 мая 2025 г. | 1.1.0 | - | - | 1.2.0-альфа06 |
Объявление зависимостей
Чтобы добавить зависимость от compose, необходимо добавить репозиторий Google Maven в свой проект. Прочтите репозиторий Google Maven для получения дополнительной информации.
Добавьте зависимости для необходимых артефактов в файл build.gradle
для вашего приложения или модуля:
классный
dependencies { implementation "androidx.compose.material3.adaptive:adaptive:1.2.0-alpha06" implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha06" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha06" }
Котлин
dependencies { implementation("androidx.compose.material3.adaptive:adaptive:1.2.0-alpha06") implementation "androidx.compose.material3.adaptive:adaptive-layout:1.2.0-alpha06" implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.2.0-alpha06" }
Дополнительную информацию о зависимостях см. в разделе Добавление зависимостей сборки .
Обратная связь
Ваши отзывы помогают сделать Jetpack лучше. Сообщите нам, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.
Более подробную информацию смотрите в документации Issue Tracker .
Составьте Material3 Адаптивная версия 1.2
Версия 1.2.0-альфа06
20 мая 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha06
. Версия 1.2.0-alpha06 содержит эти коммиты .
Новые возможности
- Функции расчета директивы каркаса панели по умолчанию теперь поддерживают классы размеров ширины окна L и XL.
Изменения API
- Сделайте так, чтобы
Modifier.paneExpansionDraggable
предоставлял семантику доступности по умолчанию и повысил стабильность соответствующих API. ( Idb818 ) - Поддержка перетаскивания для изменения размера с левитирующими панелями ( Idadd3 )
- Опорные сетки для левитирующих панелей ( I9b091 )
Версия 1.2.0-альфа05
7 мая 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha05
. Версия 1.2.0-alpha05 содержит эти коммиты .
Новые возможности
- Адаптивные макеты Material3 теперь поддерживают стратегии Levitated Adapt, которые могут превратить панель в плавающее всплывающее окно.
Изменения API
- Сделать текущие функции размера окна поддерживающими многоплатформенность ( Ie4172 )
- Ввести движения панелей для левитирующих панелей ( Ic9dc3 )
- Внедрить стратегию левитации для адаптации ( I1ba7c )
Исправление ошибок
- Исправлено использование области действия сопрограммы в адаптивных образцах ( 7631016 )
Версия 1.2.0-альфа04
23 апреля 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha04
. Версия 1.2.0-alpha04 содержит эти коммиты .
Новые возможности
- Стратегии переформатирования теперь доступны с
ListDetailPaneScaffold
иSupportingPaneScaffold
, которые переформатируют связанную панель в рамках однопанельной настройки макета.
Изменения API
- Добавить сохраняемый держатель состояния в
PaneScaffoldScope
( Id9299 ) - Внедрить стратегию переформатирования для адаптации ( I75c6a )
Исправление ошибок
- Исправлена ошибка, из-за которой панели не анимировались при первом переходе. ( Ib0415 )
- Исправлена ошибка, из-за которой не работали предпочтительные высоты. ( I1913b )
- Исправлена ошибка, из-за которой директива scaffold обновлялась некорректно. ( 0403ab )
Версия 1.2.0-альфа03
9 апреля 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha03
. Версия 1.2.0-alpha03 содержит эти коммиты .
Исправление ошибок
- Исправлена ошибка, из-за которой маркер перетаскивания отображался неправильно на макете с одной панелью. ( 806e443 )
Обновления зависимостей
- Эта библиотека теперь ориентирована на уровень языка Kotlin 2.0 и требует KGP 2.0.0 или более поздней версии. ( Idb6b5 )
Версия 1.2.0-альфа02
26 марта 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha02
. Версия 1.2.0-alpha02 содержит эти коммиты .
Версия 1.2.0-альфа01
12 марта 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.2.0-alpha01
. Версия 1.2.0-alpha01 содержит эти коммиты .
Изменения API
- Введен модификатор
PaneScaffoldScope.preferredHeight
для разработчиков, чтобы предоставить предпочтительную высоту панелей, которая будет применяться с новыми стратегиями адаптации, которые мы собираемся представить. ( I957dd , b/220960090 ) - Переименуйте типы
ComponentOverride
вOverride
, а типыComponentOverrideContext
вOverrideScope
. ( Id973c ) - Переименуйте некоторые методы переопределения компонентов. ( I222b3 )
Составьте Материал3 Адаптивная Версия 1.1
Версия 1.1.0
12 марта 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0
. Версия 1.1.0 содержит эти коммиты .
Важные изменения с версии 1.0.0
-
ListDetailPaneScaffold
иSupportingPaneScaffold
теперь поддерживают функцию расширения панелей — пользователи могут перетаскивать элементы, чтобы изменить разделение панелей по умолчанию в макете с двумя панелями; разработчики также могут изменять разделение панелей во время выполнения, изменяя недавно представленныйPaneExpansionState
. - Поддержка предиктивного бэка по умолчанию теперь доступна с
NavigableListDetailPaneScaffold
иNavigableSupportingPaneScaffold
. Вы также можете использоватьThreePaneScaffoldPredictiveBackHandler
для предоставления предиктивной бэка с вашими собственными реализациями трехпанельного скаффолда. - Теперь вы можете настраивать движения панелей во время переключения панелей, предоставляя различные
EnterTransition
иExitTransition
дляAnimatedPane
.
Версия 1.1.0-rc01
26 февраля 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-rc01
. Версия 1.1.0-rc01 содержит эти коммиты .
Исправление ошибок
- Отключить трехпанельный предиктивный обратный масштаб ( ab6fd0b )
Версия 1.1.0-beta02
12 февраля 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta02
. Версия 1.1.0-beta02 содержит эти коммиты .
Изменения API
- Изменен способ установки
isPredictiveBackInProgress
в функциях анимацииMutableThreePaneScaffoldState
для сохранения согласованности состояния. ( Idc97f )
Исправление ошибок
- Поведение по умолчанию для
NavigableListDetailPaneScaffold
иNavigableSupportingPaneScaffold
было изменено наPopUntilScaffoldValueChange
для обеспечения согласованности с остальной частью библиотеки. ( I873f0 ) - Установите правильный порядок обхода доступности каркасов панелей. ( 67d030 )
- Исправлена ошибка, из-за которой не сохранялись состояния содержимого панели. ( 88b0ff )
- Поддержка альтернативных действий по обеспечению доступности вместо перетаскивания. ( 28266d )
- Объявить текущее разделение панели после его изменения. ( 0c3a80 )
Версия 1.1.0-beta01
29 января 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-beta01
. Версия 1.1.0-beta01 содержит эти коммиты .
Изменения API
- Ввести фабричные функции для создания якорей расширения панели смещенного типа от начала и конца соответственно. ( I2eb21 )
- Закройте интерфейс
PaneMotion
и удалите его методы перехода по умолчанию. ( Ifc4c7 ) - Внедрить API для получения текущего якоря и анимации якоря. ( Icf95d )
- Ввести API-интерфейсы специальных возможностей для расширения панелей ( Icc669 )
- Измените тип
PaneScaffoldParentData.preferredWidth
на DP. ( Id98ee )
Версия 1.1.0-альфа09
15 января 2025 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha09
. Версия 1.1.0-alpha09 содержит эти коммиты .
Изменения API
- Добавить и использовать новую экспериментальную аннотацию
ExperimentalMaterial3AdaptiveComponentOverrideApi
. ( Id45aa ) - Скрыть
ThreePaneScaffoldHorizontalOrder.toLtrOrder
. ( I6f8d2 ) -
ThreePaneScaffoldPredictiveBackHandler
был опубликован. ( I1a995 , b/370543873 ) - Добавлено свойство
isPredictiveBackInProgress
вThreePaneScaffoldState
. ( I1a995 , b/370543873 ) - Создать переопределяющий механизм для
AnimatedPane
для поддержки реализаций боковой загрузки для различных форм-факторов. ( Id7622 )
Исправление ошибок
- Исправлена проблема, когда направление осадки не имеет якорей. ( df8257d )
Версия 1.1.0-альфа08
12 декабря 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha08
. Версия 1.1.0-alpha08 содержит эти коммиты .
Изменения API
- Ввести функцию
currentWindowDpSize
. ( I99125 , b/296300441 ) - Откройте
PaneScaffoldParentData
иThreePaneScaffoldHorizontalOrder.toLtrOrder()
( I2d6b7 ) - Удалите
PaneScaffoldMotionScope
и превратите его в поле подPaneScaffoldTransitionScope
. Также переименуйте его вPaneScaffoldMotionDataProvider
и удалите доступ к базовой структуре данных PaneMotionData — вместо этого предоставьте методы получения и циклирования для доступа к данным. ( Id8884 ) - Создать механизм переопределения для
ThreePaneScaffold
для поддержки реализаций боковой загрузки для различных форм-факторов. ( I5280f ) - Делает состояние расширения панели нулевым по умолчанию ( Ia65f8 , b/376394520 )
Версия 1.1.0-альфа07
13 ноября 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha07
. Версия 1.1.0-alpha07 содержит эти коммиты .
Изменения API
- Удалить реализацию ручки перетаскивания в адаптивной библиотеке и поощрять людей использовать ее версию M3. И в то же время ввести модификатор, чтобы предоставить возможность перетаскивания расширения панели для предоставленной компонуемой ручки перетаскивания. Также скрыть
DraggableState
как деталь реализации, чтобы мы могли изменить ее позже, если потребуется. ( Ib50cd ) - Перемещает точку входа настройки движения панели из функций scaffold в
AnimatedPane
в соответствии с отзывами UXR. ( I10f72 ) - Ввести поддержку Fling и пользовательскую спецификацию анимации для расширения панели. ( Ie207d , b/362584341 )
Исправление ошибок
- Исправление проблем с прогнозируемыми возвратами при отмене. ( 36a3e0a ), ( b/369899645 )
Версия 1.1.0-альфа06
30 октября 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha06
. Версия 1.1.0-alpha06 содержит эти коммиты .
Изменения API
- Добавьте
FloatRange
вPaneScaffoldTransitionScope.motionProgress
. ( Iac0dd ) - Измените тип параметров навигатора на универсальные типы в навигационных каркасах. ( I1da6e )
Версия 1.1.0-альфа05
16 октября 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha05
. Версия 1.1.0-alpha05 содержит эти коммиты .
Изменения API
- Ввести класс спецификаций анимации для обеспечения более последовательного поведения движения и возможности расширения в будущем. ( I2d3cc )
- Укажите тип движения и переименуйте currentXXXXX в
PaneMotionData
в originXXXX. ( I7c61a )
Версия 1.1.0-альфа04
2 октября 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha04
. Версия 1.1.0-alpha04 содержит эти коммиты .
Новые возможности
- Добавлена поддержка прогнозируемого возврата в
NavigableListDetailPaneScaffold
иNavigableSupportingPaneScaffold
. ( I4dc21 , b/359616816 )
Изменения API
- Добавлен
ThreePaneScaffoldState
вThreePaneScaffoldNavigator
. Методы навигации былиsuspend
для поддержки навигации с анимацией. ДобавленseekBack
для поддержки частичных состояний навигации (например, предиктивный возврат). ( I5a651 , b/359616816 ) - Добавлен
MutableThreePaneScaffoldState
для управления переходом между значениями scaffold. СуществующийThreePaneScaffoldState
был сделан доступным только для чтения. ( Idb3c6 ) - Раскрыть реализации движения панелей по умолчанию ( I95a7b )
- Включить установку начальной привязки состояния расширения панели ( Ie41b3 , b/362350560 )
Исправление ошибок
- Обеспечить минимальный размер сенсорной области 48x48dp для маркера перетаскивания ( 7ce6635 , b/366018217 )
- Восстановить закрепленное положение после изменения конфигурации ( 3c9fc6b , b/362353672 )
Версия 1.1.0-альфа03
18 сентября 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha03
. Версия 1.1.0-alpha03 содержит эти коммиты .
Версия 1.1.0-альфа02
4 сентября 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02
. Версия 1.1.0-alpha02 содержит эти коммиты .
Новые возможности
- Настройка движения ( I0bf9c ), ( I80e66 ) поддерживается для производителей, чтобы изменять движения по умолчанию во время изменений состояния адаптивных скаффолдов. Производители могут выбирать из набора переходов входа и выхода по умолчанию или реализовывать чисто пользовательские переходы с информацией, предоставленной через новые области движения.
- Реализовать анимацию затухания маркеров перетаскивания расширения панели ( 46e3c69 )
- Сделать запомненное состояние
PaneExpansionState
сохраняемым ( 61ff76f )
Изменения API
- Добавить отсутствующие APi расширения панели в каркасы ( Ic5bc0 )
-
ThreePaneScaffoldDestinationItem.content
переименован вcontentKey
. Аргумент типа по умолчаниюrememberListDetailPaneScaffoldNavigator
иrememberSupportingPaneScaffoldNavigator
изменен сNothing
наAny
. ( I58749 ) - Отметить
ThreePaneScaffoldState
как стабильный ( I64aec ) - Сделать параметры маркера перетаскивания ограниченными ( Ic0aa2 )
Версия 1.1.0-альфа01
21 августа 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha01
. Версия 1.1.0-alpha01 содержит эти коммиты .
Новые возможности
- Внедрить поддержку расширения панелей адаптивных каркасов.
Изменения API
- Представить API расширения панели для общественности ( I301d6 )
- Введен
ThreePaneScaffoldState
для управления переходами значений панели. Добавлены перегрузкиListDetailPaneScaffold
иSupportingPaneScaffold
, которые принимают это состояние. ( I5db3b ) - Ввести ключ расширения панели и интерфейс поставщика ключей ( Id621f )
Исправление ошибок
- Исправлен неправильный расчет раздела при наличии исключенного шарнира. ( 9dfd483 )
Составьте Материал3 Адаптивная Версия 1.0
Версия 1.0.0
4 сентября 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0
. Версия 1.0.0 содержит эти коммиты .
Основные особенности 1.0.0
- Однострочные компонуемые функции
currentWindowSize()
,collectFoldingFeaturesAsState()
иcurrentWindowAdaptiveInfo()
для получения необходимой информации об окне для адаптации приложений, например, размеров окон и функций сворачивания. -
ListDetailPaneScaffold
иSupportingPaneScaffold
для предоставления двух канонических макетов Material3, которые будут автоматически адаптироваться в соответствии с различными конфигурациями окон. Эти два каркаса также полностью настраиваемы для удовлетворения различных потребностей производителей. -
ThreePaneScaffoldNavigator
и соответствующие ему функции запоминанияrememberListDetailPaneScaffoldNavigator()
иrememberSupportingPaneScaffoldNavigator()
для предоставления навигационных решений в рамках адаптивного каркаса, который может отображать несколько пунктов назначения навигации одновременно, в отличие от обычной настройки «один пункт назначения за раз» в неадаптивном мире. - Стандартные встроенные анимации Material3 при изменении состояний адаптивных каркасов.
Версия 1.0.0-rc01
21 августа 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01
. Версия 1.0.0-rc01 содержит эти коммиты .
Исправление ошибок
- Исправлен неправильный расчет раздела при наличии исключенного шарнира. ( 9dfd483 )
Версия 1.0.0-beta04
26 июня 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04
. Версия 1.0.0-beta04 содержит эти коммиты .
Исправление ошибок
- Исправлена ошибка, из-за которой при обновлении границ петель макет не обновлялся соответствующим образом. ( 71e9cf1 )
Версия 1.0.0-beta03
12 июня 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03
. Версия 1.0.0-beta03 содержит эти коммиты .
Исправление ошибок
- Исправлены сбои, вызванные неправильным разрешением зависимостей в beta02.
Версия 1.0.0-beta02
29 мая 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta02
. Версия 1.0.0-beta02 содержит эти коммиты .
Версия 1.0.0-beta01
14 мая 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta01
. Версия 1.0.0-beta01 содержит эти коммиты .
Версия 1.0.0-альфа12
1 мая 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha12
. Версия 1.0.0-alpha12 содержит эти коммиты .
Изменения API
- Добавить информацию
isFlat
вHingeInfo
( Ie0516 , b/333784198 ) - Сделать адаптивные API неэкспериментальными ( I1d038 )
- Сделать API адаптивной компоновки неэкспериментальными ( Id23df )
- Изменено
BackNavigationBehavior
с перечисления на класс значений ( Id8757 )
Исправление ошибок
- Измените переходную дробь на лямбда ( I6f5a9 )
- Исправлена проблема начального состояния
SizeTracker
( 18326a9 ) - Включить список шарниров в проверку равенства
Posture
( 6687137 )
Версия 1.0.0-альфа11
17 апреля 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11
. Версия 1.0.0-alpha11 содержит эти коммиты .
Изменения API
- Сделайте интерфейсы области видимости герметичными. ( Iefa57 )
- Представляем
AnimatedPaneScope
. ( I62d73 , b/332750742 ) - Сделайте
AdaptStrategy
герметичным и стабильным. ( Ia28b2 ) - Представьте метод копирования
PaneScaffoldDirective
. ( I9291f ) - Отметить
ThreePaneScaffoldScope
как экспериментальный. ( I9d527 ) - Предоставлять простые в использовании API-интерфейсы scaffold, поддерживающие навигацию. ( I263f0 , b/321010778 )
Версия 1.0.0-альфа10
3 апреля 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha10
. Версия 1.0.0-alpha10 содержит эти коммиты .
Изменения API
- Сделать предпочтительную ширину по умолчанию адаптивной и настраиваемой. ( Ic3abc )
- Переименуйте функции расчета директивы scaffold. ( I10855 )
- Удалить прокладки и вставки из API-интерфейсов каркаса. ( I786f8 )
- Добавить методы запоминания навигатора без универсальных типов. ( I607c3 )
Версия 1.0.0-альфа09
20 марта 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha09
. Версия 1.0.0-alpha09 содержит эти коммиты .
Изменения API
- Добавить поля перехода состояний в
ThreePaneScaffoldScope
. ( I3d917 ) - Изменить порядок параметров скаффолда. ( I4dff5 )
- Укажите значение по умолчанию для параметра-модификатора
AnimatedPane
. ( I77dd7 )
Исправление ошибок
- Включить размер распорки в движение панелей. ( a3174ca )
Версия 1.0.0-альфа08
6 марта 2024 г.
Выпущен androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha08
. Версия 1.0.0-alpha08 содержит эти коммиты .
Новые возможности
- Реализовать отложенное скольжение при переключении панелей. ( I1a38e )
Изменения API
- Удален интерфейс
ThreePaneScaffoldState
. ( I63f23 )
Версия 1.0.0-альфа07
21 февраля 2024 г.