Мы рады сообщить, что Material 3 Adaptive 1.2.0 теперь стабилен!
В этом релизе продолжается развитие идей предыдущих версий, расширяется поддержка большего количества контрольных точек для классов размеров окон и вводятся новые стратегии автоматического размещения панелей отображения.
Что нового в Material 3 Adaptive 1.2.0?
Этот стабильный релиз основан на поддержке WindowManager 1.5.0 для больших и сверхбольших контрольных точек и представляет новые стратегии переформатирования и левитации для ListDetailPaneScaffold и SupportingPaneScaffold .
Новые категории размеров окон: Большие и Очень большие.

В WindowManager 1.5.0 были введены две новые контрольные точки для класса размера окна width, позволяющие поддерживать еще большие окна, чем класс размера окна Expanded. Контрольные точки Large (L) и Extra-large (XL) можно включить, добавив следующий параметр к вызову currentWindowAdaptiveInfo() в вашем коде:
currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)
Этот флаг позволяет библиотеке также возвращать точки останова L и XL, когда это необходимо.
Новые адаптивные стратегии: перетекание и левитация
Размещение контента и панелей отображения в окне — сложная задача, требующая учета множества факторов, начиная с размера окна. Новая библиотека Material 3 Adaptive предлагает две новые технологии, которые помогут вам создать адаптивную компоновку с минимальными усилиями.
При использовании функции переформатирования панели перестраиваются при изменении размера окна или соотношения сторон: вторая панель размещается сбоку от первой, когда окно достаточно широкое, или вторая панель переформатируется под первую, когда окно становится выше. Этот метод также применяется, когда окно становится меньше: содержимое переформатируется вниз.

Изменение расположения элементов в панели в зависимости от размера окна.
Хотя переформатирование — это невероятно полезная опция во многих случаях, могут возникнуть ситуации, когда контент необходимо либо закрепить сбоку окна, либо «левитировать» над ним. Стратегия «левитации» не только закрепляет контент, но и позволяет настраивать такие параметры, как перетаскивание, изменение размера и даже фоновую завесу.

Поднятие стеклянной панели сбоку к центру в зависимости от соотношения сторон
Стратегии flow и levitate можно объявить внутри конструктора Navigator с помощью параметра adaptStrategies, и обе стратегии могут применяться к scaffolds list-detail и поддерживающим панелям:
val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>( adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies( detailPaneAdaptStrategy = AdaptStrategy.Reflow( reflowUnder = ListDetailPaneScaffoldRole.List ), extraPaneAdaptStrategy = AdaptStrategy.Levitate( alignment = Alignment.Center ) ) )
Чтобы узнать больше о том, как использовать эти новые адаптивные стратегии, посетите веб-сайт Material и ознакомьтесь с полным примером кода на GitHub.
Продолжить чтение

Новости о продуктах
Android Studio Panda 4 теперь стабильна и готова к использованию в продакшене. В этом релизе появились режим планирования, прогнозирование следующего изменения и многое другое, что делает создание высококачественных Android-приложений проще, чем когда-либо.
Matt Dyor • 5 мин чтения

Новости о продуктах
Если вы — разработчик Android-приложений, стремящийся внедрить в них инновационные функции искусственного интеллекта, то недавно мы выпустили новые мощные обновления.
Thomas Ezan • 3 мин чтения

Новости о продуктах
Android 17 достиг четвертой бета-версии, последней запланированной бета-версии этого цикла релизов, что является критически важным этапом для обеспечения совместимости приложений и стабильности платформы.
Daniel Galpin • 4 мин чтения
Будьте в курсе событий
Получайте еженедельно самые свежие новости о разработке Android прямо на свою электронную почту.





