Составление материала 3

Создавайте пользовательские интерфейсы Jetpack Compose с помощью компонентов Material Design 3 — следующего этапа развития Material Design. Material 3 включает в себя обновленные темы и компоненты, а также функции персонализации Material You, такие как динамический цвет, и разработан с учетом нового визуального стиля Android 12 и системного пользовательского интерфейса.
Последнее обновление Стабильный выпуск Кандидат на выпуск Бета-версия Альфа-релиз
18 сентября 2024 г. 1.3.0 - - 1.4.0-альфа01

Структура

Compose — это комбинация семи идентификаторов групп Maven в androidx . Каждая группа содержит целевой подмножество функций, каждая из которых имеет свой собственный набор примечаний к выпуску.

В этой таблице описаны группы и ссылки на каждый набор примечаний к выпуску.

Группа Описание
сочинить.анимацию Создавайте анимацию в своих приложениях Jetpack Compose, чтобы улучшить взаимодействие с пользователем.
compose.compiler Преобразуйте функции @Composable и включите оптимизацию с помощью плагина компилятора Kotlin.
compose.foundation Создавайте приложения Jetpack Compose с готовыми к использованию стандартными блоками и расширяйте основу для создания собственных частей системы проектирования.
составить.материал Создавайте пользовательские интерфейсы Jetpack Compose с готовыми к использованию компонентами Material Design. Это точка входа более высокого уровня в Compose, предназначенная для предоставления компонентов, соответствующих описанным на сайте www.material.io.
Compose.material3 Создавайте пользовательские интерфейсы Jetpack Compose с помощью компонентов Material Design 3 — следующего этапа развития Material Design. Material 3 включает в себя обновленные темы и компоненты, а также функции персонализации Material You, такие как динамический цвет, и разработан с учетом нового визуального стиля Android 12 и системного пользовательского интерфейса.
Compose.runtime Фундаментальные строительные блоки модели программирования Compose и управления состоянием, а также основная среда выполнения для целевого подключаемого модуля Compose Compiler.
Compose.ui Фундаментальные компоненты пользовательского интерфейса, необходимые для взаимодействия с устройством, включая макет, рисование и ввод.

Объявление зависимостей

Чтобы добавить зависимость от Compose, вам необходимо добавить в свой проект репозиторий Google Maven. Для получения дополнительной информации прочтите репозиторий Google Maven .

Добавьте зависимости для нужных вам артефактов в файл build.gradle для вашего приложения или модуля:

классный

dependencies {
    implementation "androidx.compose.material3:material3:1.3.0"
    implementation "androidx.compose.material3:material3-window-size-class:1.3.0"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha01"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Котлин

dependencies {
    implementation("androidx.compose.material3:material3:1.3.0")
    implementation("androidx.compose.material3:material3-window-size-class:1.3.0")
    implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha01")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Дополнительные сведения о зависимостях см. в разделе Добавление зависимостей сборки .

Обратная связь

Ваши отзывы помогают сделать Jetpack лучше. Дайте нам знать, если вы обнаружите новые проблемы или у вас есть идеи по улучшению этой библиотеки. Пожалуйста, ознакомьтесь с существующими проблемами в этой библиотеке, прежде чем создавать новую. Вы можете добавить свой голос к существующей проблеме, нажав кнопку со звездочкой.

Создать новую задачу

Дополнительную информацию см . в документации по системе отслеживания проблем .

Compose Material3 Общая версия 1.0

Версия 1.0.0-альфа01

17 апреля 2024 г.

androidx.compose.material3:material3-common:1.0.0-alpha01 , androidx.compose.material3:material3-common-android:1.0.0-alpha01 и androidx.compose.material3:material3-common-desktop:1.0.0-alpha01 выпущены. Версия 1.0.0-alpha01 содержит эти коммиты .

Новые возможности

Бестемные компоненты, которые можно использовать для создания компонентов Material Design:

Пакет адаптивной навигации Compose Material3, версия 1.0

Версия 1.0.0-альфа07

1 мая 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07 выпущены. Версия 1.0.0-alpha07 содержит эти коммиты .

Изменения API

  • Сделать API-интерфейсы навигационного пакета неэкспериментальными ( If62af ).

Исправления ошибок

  • Использовать вставки для контента по умолчанию ( 50266df )

Версия 1.0.0-альфа06

17 апреля 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06 выпущены. Версия 1.0.0-alpha06 содержит эти коммиты .

Изменения API

  • containerColor и contentColor в NavigationSuiteScaffoldDefaults . ( I64e3a , б/331993720 )
  • Добавление функции itemColors в NavigationSuiteDefaults . ( Idf719 , б/328480012 )
  • Сделайте NavigationSuiteScope запечатанным. ( Иефа57 )

Версия 1.0.0-альфа05

6 марта 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05 выпущены. Версия 1.0.0-alpha05 содержит эти коммиты .

Изменения API

  • Сделайте конструктор NavigationSuiteItemColors общедоступным. ( Ica83a , b/324886877 )

Версия 1.0.0-альфа04

21 февраля 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04 выпущены. Версия 1.0.0-alpha04 содержит эти коммиты.

Обновления зависимостей

  • Обновите адаптивные зависимости Material3 для новых путей к модулям. ( Ibc421 )
  • Перейдите на использование версии классов размеров окон в диспетчере окон. ( I3794d )

Версия 1.0.0-альфа03

7 февраля 2024 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03 выпущены. Версия 1.0.0-alpha03 содержит эти коммиты.

Изменения API

  • Обновить имя пакета до NavigationSuite из навигационного пакета ( I7eff7 )
  • Компоненты Material3, предоставляющие MutableInteractionSource в своем API, были обновлены и теперь предоставляют MutableInteractionSource с нулевым значением, значение которого по умолчанию равно нулю. Здесь нет никаких семантических изменений: передача null означает, что вы не хотите поднимать MutableInteractionSource , и при необходимости он будет создан внутри компонента. Изменение значения на null позволяет некоторым компонентам никогда не выделять MutableInteractionSource , а другим компонентам — только лениво создавать экземпляр, когда это необходимо, что повышает производительность этих компонентов. Если вы не используете MutableInteractionSource который передаете этим компонентам, рекомендуется вместо этого передать значение null. Также рекомендуется внести аналогичные изменения в ваши собственные компоненты. ( I41abb , б / 298048146 )

Версия 1.0.0-альфа02

13 декабря 2023 г.

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02 , androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02 и androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02 выпущены. Версия 1.0.0-alpha02 содержит эти коммиты.

Новые возможности

Исправления ошибок

  • Исправлен компонент навигации, заполняющий весь экран, когда корневая поверхность имеет modifier.fillMaxSize . ( c9cf250 , б/312664933 )

Версия 1.0.0-альфа01

15 ноября 2023 г.

Выпущен androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

Compose Material3 Адаптивная версия 1.0

Версия 1.0.0-альфа06

7 февраля 2024 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha06 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06 выпущены. Версия 1.0.0-alpha06 содержит эти коммиты.

Новые возможности

  • Добавлены дополнительные параметры поведения для обратной навигации ThreePaneScaffoldNavigator . ( I858aa )
  • В историю навигации добавлен дополнительный контент пункта назначения. ( Ibd7e6 )

Версия 1.0.0-альфа05

24 января 2024 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha05 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05 выпущены. Версия 1.0.0-alpha05 содержит эти коммиты.

Новые возможности

  • Поддержка учета истории в навигации по лесам и расчете значений ( I71d46 ).

Версия 1.0.0-альфа04

10 января 2024 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha04 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04 выпущены. Версия 1.0.0-alpha04 содержит эти коммиты.

Новые возможности

  • Добавлена ​​поддержка от края до края в каркасах панелей ( I1b462 ).

Изменения API

  • Свойства границ шарниров в Posture перенесены в список информации о шарнирах ( I24f90 ).

Исправления ошибок

  • Исправление AnimatedPane не перекомпоновывается ( c3f573d )

Версия 1.0.0-альфа03

13 декабря 2023 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha03 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03 выпущены. Версия 1.0.0-alpha03 содержит эти коммиты.

Изменения API

  • Измените роли скаффолда на псевдонимы ThreePaneScaffoldRole . ( I65bd1 )
  • Создайте базовый класс для ролей scaffold ( I4784d ).
  • Удалите ненужный параметр из содержимого AnimatedPane ( Ibc73b ).
  • Переименовывает collectWindowSizeAsState и вместо этого возвращает необработанные значения ( I480f4 )

Версия 1.0.0-альфа02

29 ноября 2023 г.

androidx.compose.material3:material3-adaptive:1.0.0-alpha02 , androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02 и androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02 выпущены. Версия 1.0.0-alpha02 содержит эти коммиты.

Изменения API

  • Отделите API навигации от API адаптивных шаблонов. ( Ic4045 )
  • Удалите класс GutterSize . ( I785b3 )

Исправления ошибок

  • Панели исправлений не переключаются, когда AnimatedPane не используется ( d88f181 ).

Версия 1.0.0-альфа01

15 ноября 2023 г.

Выпущен androidx.compose.material3:material3-adaptive:1.0.0-alpha01 . Версия 1.0.0-alpha01 содержит эти коммиты.

Новые возможности

API адаптивных условий Material3:

API-интерфейсы директивы адаптивной панели Material3:

API-интерфейсы адаптивной панели Material3:

Compose Material3 Версия 1.3

Версия 1.3.0

4 сентября 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0 . Версия 1.3.0 содержит эти коммиты .

Важные изменения с версии 1.2.0

Основные особенности версии 1.3.0

Новый Material Design 3 компонента

  • Карусель
  • [ ModalBottomSheet ] теперь поддерживает функцию Predictive Back on U+ ( Iccf32 , b/281967264 , b/304850357 )
  • [ SearchBar ] теперь поддерживает функцию Predictive Back on U+ ( I657f8 ).
  • Nav Drawer ( ModalDrawerSheet и DismissibleDrawerSheet ) теперь поддерживает функцию Predictive Back on U+ в качестве опции ( Ie5b0b ).
  • DropdownMenu теперь поддерживает настраиваемый цвет, форму, высоту и границу. ( I8e981 , б/289554448 , б/301887035 , б/283654243 )
  • Обновлен слайдер для улучшения доступности за счет добавления индикатора пробела и остановки. ( I3058e )
  • Обновлен ProgressIndicator для улучшения доступности за счет добавления индикатора разрыва и остановки. ( I21451 )
  • Добавлена ​​каретка по умолчанию для расширенной всплывающей подсказки, поддерживается рисование пользовательской каретки с учетом привязки LayoutCoordinates . ( Ifd42c ) Критические изменения
  • Новые API обновления по запросу:
    • Упрощен PullToRefreshState для использования дробных значений вместо единиц Dp.
    • Состояние isRefreshing контролируется пользователем вместо PullToRefreshState .
    • Отделено вложенное соединение прокрутки от PullToRefreshState . Он обрабатывается новым PullToRefreshBox или Modifier.pullToRefresh .
    • Это обновление представляет собой радикальное изменение предыдущих экспериментальных API. ( I0adeb , b/314496282 , b/317177684 , b/323787138 , b/324573502 , b/317177683 ) Визуальные важные изменения
  • Обновите наложение состояния фокуса до значения 0,1f, чтобы обеспечить достаточный цветовой контраст. ( I7ea77 )
  • Небольшие изменения в цветах поверхности и фона по умолчанию в lightColorScheme и darkColorScheme . ( I9db52 )
  • Обновлены цвета слайдера и ProgressIndicator в соответствии с новыми спецификациями нетекстовой контрастности. ( I26807 )
  • Варианты SurfaceContainer теперь используются компонентами. Компоненты, которые формально рассчитывали цвет с помощью Surface и TonalElevation теперь по умолчанию используют роли SurfaceContainer , на которые не влияет повышение тона. ( б/304584161 )
  • Роли базовой линии поверхности и контейнера поверхности были немного скорректированы, что обеспечивает больше оттенков в светлых и темных темах. ( I677a5 )
  • Экспериментальные API переведены в стабильную версию!
  • Улучшения производительности

Версия 1.3.0-rc01

21 августа 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-rc01 . Версия 1.3.0-rc01 содержит эти коммиты .

Исправления ошибок

  • ModalBottomSheet теперь находится первым в порядке семантического обхода, за ним следует холст. ( I436f9 , б/358594665 )

Версия 1.3.0-бета05

24 июля 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta05 . Версия 1.3.0-beta05 содержит эти коммиты .

  • Исправлена ​​проблема, из-за которой содержимое BottomSheet отсутствует или обрезается на Android N и O ( a10a2d ).
  • Увеличены семантические границы слайдера, чтобы TalkBack правильно отображал индикаторы фокуса вокруг больших пальцев. ( 0b5a1d )

Версия 1.3.0-beta04

26 июня 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta04 . Версия 1.3.0-beta04 содержит эти коммиты .

Версия 1.3.0-beta03

12 июня 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta03 . Версия 1.3.0-beta03 содержит эти коммиты .

Внешний вклад

  • Сделайте androidx.compose.material3.DropdownMenu доступным из общего набора исходных кодов. ( Если62c0 )

Версия 1.3.0-бета02

29 мая 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta02 . Версия 1.3.0-beta02 содержит эти коммиты .

Изменения API

  • Modifier.pullToRefreshIndicator поддерживает повышение прав, обновление API-интерфейсов Pull To Refresh, чтобы включить логическое значение, а не лямбда-выражение. Поддержка выравнивания содержимого в PullToRefreshBox ( I75679 )
  • Создание TooltipScope запечатанного интерфейса и создание внутренней реализации для использования в TooltipBox и Label. ( I3833e )
  • В CarouselItemScope добавлены два новых модификатора — maskClip и maskBorder — для легкого добавления формы и границы к любому элементу карусели ( Id67a1 ).
  • TimePickerState теперь является интерфейсом и позволяет устанавливать время ( I88546 ).
  • Обновлен API для стилизации ссылок: TextLinkStyles перемещены в TextStyle и удалены TextDefaults из материала. ( I5477b )

Исправления ошибок

  • Значки статуса ModalBottomSheet и панели навигации теперь реагируют на статус темной темы. ( Ie1fe7 , б/338342149 )
  • Добавлена ​​семантика закрытия листа в скрим ModalBottomSheet . ( 0e61cb , б/328801864 )

Внешний вклад

  • Сделать androidx.compose.material3.AlertDialog доступным из общего исходного набора ( Ia33f5 ).
  • Сделать ModalBottomSheet доступным из общего набора исходных кодов ( Id7cc7 ).

Версия 1.3.0-бета01

14 мая 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-beta01 . Версия 1.3.0-beta01 содержит эти коммиты .

Изменения API

  • Использование DpSize вместо CaretProperties . Удаление CaretProperties . Переименуйте CaretScope в TooltipScope . ( Id9a76 )
  • Обновлен API для получения тематических ссылок Material в тексте. В частности, из TextDefaults удалены методы для создания тематических LinkAnnotations и анализа HTML с тематическими ссылками. Вместо этого добавлен класс TextLinkStyles , который позволяет стилизовать ссылки в качестве параметра составного текста. ( I31b93 )

Версия 1.3.0-альфа06

1 мая 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-alpha06 . Версия 1.3.0-alpha06 содержит эти коммиты .

Критические изменения

  • Новые API обновления по запросу:

    • Упрощен PullToRefreshState для использования дробных значений вместо единиц Dp.
    • Состояние isRefreshing контролируется пользователем вместо PullToRefreshState .
    • Отделено вложенное соединение прокрутки от PullToRefreshState . Он обрабатывается новым PullToRefreshBox или Modifier.pullToRefresh .
    • Это обновление представляет собой радикальное изменение предыдущих экспериментальных API. ( I0adeb , b/314496282 , b/317177684 , b/323787138 , b/324573502 , b/317177683 )

Изменения API

  • RippleConfiguration#isEnabled был удален, а LocalRippleConfiguration стал нулевым. Чтобы отключить пульсацию, вместо предоставления RippleConfiguration с isEnabled = false укажите значение null для LocalRippleConfiguration . ( I22725 )
  • ModalBottomSheet более точно рисует сетку поверх строки состояния, когда включен параметр «От края до края». Содержимое модального нижнего листа теперь может использовать вставки окон, что позволяет отображать содержимое над панелью навигации. Параметр ModalBottomSheet windowInsets переименован в contentWindowInsets , чтобы указать, где будут применяться вставки. Они больше не привязаны к логике окна. Тип contentWindowInsets был изменен на функцию, которая возвращает WindowInsets , чтобы разрешить его в новом окне. ( I39630 , б / 274872542 , б / 300280229 , б / 290893168 )
  • PrimaryScrollableTabRow и SecondaryScrollableTabRow теперь используют собственный макет вместо подкомпозиции, что должно повысить производительность. ( I991e0 )
  • Текстовые ссылки получили возможность стилизации нажатого состояния в дополнение к обычному стилю, наведению курсора и фокусу. Каждый из методов TextDefaults имеет аргумент pressedStyle для поддержки этого. ( Ic473f , б/139312671 )

Исправления ошибок

  • Якоря перетаскивания панели навигации теперь соответствуют ширине drawerContent . ( Ibc72f , б/245355396 )
  • Отступы OutlinedTextField для метки теперь учитывают размер системного шрифта. ( Idc781 )
  • Исправлено расположение пакета CalendarLocale . ( Ифа235 )
  • [Прогнозирующий обратный эффект] Обновление прогнозирующей обратной анимации для использования кривой интерполяции (0,1, 0,1, 0, 1) ( I2591a )

Версия 1.3.0-альфа05

17 апреля 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-alpha05 . Версия 1.3.0-alpha05 содержит эти коммиты .

Новые возможности

  • SearchBar и DockedSearchBar имеют новые перегрузки, которые принимают параметр текстового поля. Это позволяет стилизовать текстовое поле отдельно от остальной части панели поиска, а также передавать настраиваемые текстовые поля. Текстовое поле текущей реализации стало доступным как SearchBarDefaults.InputField . ( I50c73 , б/275074248 , б/278773336 , б/326627700 )
  • лямбда drawTick была добавлена ​​в общедоступный API, чтобы при необходимости настроить тики ( I0c048 ).

Изменения API

  • Текстовые ссылки получили опцию стиля нажатого состояния в дополнение к обычному стилю, наведению курсора и фокусу ( I5f864 , b/139312671 ).
  • Обновлен CarouselItemInfo для отображения маски Rect, по которой обрезается элемент ( I785d8 ).
  • Удален BasicTooltipState из общедоступного API Материала 3. Его функциональность сочетается с TooltipState до тех пор, пока BasicTooltip Foundation не стабилизируется. ( Icda29 )
  • Добавлен объект TextDefaults , содержащий методы для создания LinkAnnotation и анализа строки с HTML-тегом, которая применяет MaterialTheme к ссылкам ( I98532 , b/139312671 ).
  • ExposedDropdownMenuBoxScope больше не допускает подклассы. Открытые раскрывающиеся меню теперь имеют MenuAnchorType , который следует передать в menuAnchor для лучшей поддержки a11y. Это следует использовать вместо передачи focusable в ExposedDropdownMenu , который сейчас устарел. menuAnchor имеет новый параметр для управления enabled состоянием. ( I55ee6 , б / 257209915 , б / 308840226 )
  • Исправлен цвет границы OutlinedButton при отключении. Добавлена ​​перегрузка ButtonDefaults.outlinedButtonBorder("enabled") которая принимает включенное состояние. ( Ie650b , б/318461363 )
  • Добавлен новый класс CarouselItemInfo , который помогает клиентам получать информацию о размерах предметов. ( I9070c )
  • Конструктор ColorScheme без поверхностных контейнеров больше не поддерживается. Перейдите на конструктор, включающий наземные контейнеры. ( I35c11 )
  • [Обведено] TextFieldDefaults ContainerBox переименован в Container . ( Ie8d3b )

Исправления ошибок

  • BottomSheetScaffold больше не будет выполнять прокрутку из вложенной прокрутки, если sheetSwipeEnabled равно false. ( I5e1c1 , б/306464779 )
  • Удалены некоторые аннотации ExperimentalMaterial3Api OptIn в IconButtonSamples.kt . ( I111d1 )

Версия 1.3.0-альфа04

3 апреля 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-alpha04 . Версия 1.3.0-alpha04 содержит эти коммиты .

Новые возможности

  • Добавлены две экспериментальные версии карусели Material3HorizontalMultiBrowseCarousel и HorizontalUncontainedCarousel ( I88d64 ).
  • Обновлен Compose M3 Nav Drawer ( ModalDrawerSheet и DismissibleDrawerSheet ) для поддержки Predictive Back on U+ в качестве опции ( Ie5b0b ).
  • Добавлен новый API в Icon, позволяющий передавать цветовой оттенок как лямбда-выражение во избежание перекомпоновки. ( I5b5a2 )
  • API-интерфейсы верхней панели приложений теперь поддерживают настраиваемую высоту как для фиксированных, так и для сворачиваемых разделов. ( Ib8b0c , b/323403446 )

Изменения API

  • API-интерфейсы верхней панели приложений теперь поддерживают настраиваемую высоту как для фиксированных, так и для сворачиваемых разделов. Исправлена ​​проблема, из-за которой однострочные верхние панели приложений перестраивались слишком много раз при прокрутке контента. Решена проблема, из-за которой MediumTopAppBar обрезал заголовки на устройствах с большими настройками шрифта/отображения. ( Ib8b0c , b/323403446 , b/300953236 , b/286296147 , b/330410290 , b/308540676 )
  • SegmentedButton и связанные API теперь стабильны ( I8a158 ).
  • SwipeToDismissBox , SwipeToDismissBoxDefaults , SwipeToDismissBoxState и SwipeToDismissBoxValue теперь помечены как стабильные. ( I5f000 )
  • Удалены устаревшие DismissDirection и API DismissDirection и DismissValue . ( I89ccd )
  • В сопутствующий объект CarouselState объекта Carousel добавлен экспериментальный тег. ( I94154 )
  • LocalMinimumInteractiveComponentEnforcement устарел и вместо него введен LocalMinimumInteractiveComponentSize . ( I7a7ac )
  • Конструктор SearchBarColors теперь общедоступен. ( I769ca )
  • В SwipeToDismissBox добавлен gesturesEnabled . ( Idc59f , б/324170119 )
  • Удалены API текстовых полей, помеченные как устаревшие и экспериментальные. ( I1305f )

Версия 1.3.0-альфа03

20 марта 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-alpha03 . Версия 1.3.0-alpha03 содержит эти коммиты .

Визуальные кардинальные изменения

  • Обновите наложение состояния фокуса на значение 0,1f, чтобы обеспечить достаточный цветовой контраст. ( I7ea77 )
  • Небольшие изменения в цветах поверхности и фона по умолчанию в lightColorScheme и darkColorScheme . ( I9db52 )

Новые возможности

  • Добавлены параметры для настройки ExposedDropdownMenu . В частности, в меню теперь есть focusable параметр (по умолчанию true ), для которого при работе с редактируемыми текстовыми полями должно быть установлено значение false . ( I4184c , б / 323694447 , б / 278609042 )

Изменения API

  • Флаг ScaffoldSubcomposeInMeasureFix был удален. ( Ie2a4b )
  • NavigationRailItemColors теперь помечен как @Immutable . ( Если6112 , б/327660613 )
  • NavigationBarItemColors теперь помечен как @Immutable . ( I42a30 , б/298064514 )
  • Измените порядок параметров в компонуемом слайдере. ( I9f315 )
  • ExposedDropdownMenu теперь реализован с помощью Popup . Поведение должно быть таким же, за исключением того, что фокусируемые меню с редактируемыми текстовыми полями могут закрываться при вводе текста на клавиатуре.

Исправления ошибок

  • Роли базовой линии поверхности и контейнера поверхности были немного скорректированы, что обеспечивает больше оттенков в светлых и темных темах. ( I677a5 )
  • Обновлены цвета слайдера и ProgressIndicator в соответствии с новыми спецификациями нетекстовой контрастности. ( I26807 )
  • Обновите наложение состояния фокуса на значение 0,1f, чтобы обеспечить достаточный цветовой контраст. ( I7ea77 )
  • Небольшие изменения в цветах поверхности и фона по умолчанию в lightColorScheme и darkColorScheme . ( I9db52 )

Версия 1.3.0-альфа02

6 марта 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-alpha02 . Версия 1.3.0-alpha02 содержит эти коммиты .

Изменения API

  • Снова сделать состояние слайдера стабильным. Создание State.onValueChangeFinished завершил val. Обертывание onValueChangeFinished в rememberUpdatedState . ( I82ab2 , б/322269951 )
  • Компоненты навигации теперь используют новые роли SurfaceContainer . DrawerDefaults теперь предоставляет отдельные атрибуты standardContainerColor и modalContainerColor . DrawerDefaults.ModalDrawerElevation теперь имеет 0.dp ( I7fbac )
  • Удаление @Stable из состояний Slider , поскольку мы меняем state.onValueChangeFinished на var . ( Ied34a , b/322269951 )
  • Спецификация анимации ModalBottomSheet и StandardBottomSheet теперь является TweenSpec , обновленной на основе анимации Spring. Это решает проблему с видимым перерегулированием. Устаревшие конструкторы SheetState без плотности теперь удалены. ( I7babc , б/285847707 )

Исправления ошибок

  • Варианты SurfaceContainer теперь используются компонентами. Компоненты, которые формально рассчитывали цвет с помощью Surface и TonalElevation теперь по умолчанию используют роли SurfaceContainer , на которые не влияет повышение тона. ( б/304584161 )
  • Исправлена ​​ошибка, из-за которой невыбранный отключенный цвет контейнера ElevatedFilterChip был черным. ( I400e6 , б/322407043 )
  • Исправлен неопределенный индикатор прогресса, когда прогресс равен 0 ( Id6582 ).
  • Исправлена ​​проблема с Slider и RangeSlider в макете RTL ( Iab0e1 ).
  • Добавление SliderRangeTolerance для расчета диапазона ползунка, поскольку округление с плавающей запятой может быть неточным. ( Ic918a , б/324934900 )
  • Убедитесь, что DatePickerDialog отображает свои кнопки при вложении DateRangePicker или при отображении любого типа средства выбора даты на маленьких экранах с более крупными шрифтами. ( Ie4758 , б/325107799 , б/277768544 )
  • Menu теперь использует роль SurfaceContainer для цвета контейнера. MenuDefaults.TonalElevation теперь имеет значение 0.dp ( I135b7 )
  • TextField теперь использует роль SurfaceContainerHighest для цвета контейнера. ( I4dced )
  • Чипы с повышенными правами теперь используют роль SurfaceContainerLow ( I7cd2f ).
  • Цвет контейнера DatePicker теперь SurfaceContainerHigh . DatePickerDefaults.TonalElevation теперь имеет значение 0.dp ( Ида753 )
  • Обновляет цвет контейнера нижних листов и цвет маркера перетаскивания. ( I72a0a )
  • Цвет контейнера RichTooltip теперь SurfaceContainer . ( Ia8b45 )
  • Цвет контейнера SearchBar теперь SurfaceContainerHighest . SearchBarDefaults.TonalElevation теперь имеет 0.dp ( I88604 )
  • Обновления отключают и не выбирают дорожки/значки, чтобы использовать цветовую роль SurfaceContainerHighest . ( I7687a )
  • Цвет контейнера AlertDialog теперь SurfaceContainerHigh . ( Ie0433 )
  • Цвет контейнера BottomAppBar теперь SurfaceContainer . Цвет TopAppBar onScroll теперь SurfaceContainer . ( I41630 )
  • Цвет контейнера ElevatedCard теперь SurfaceContainerLow . Цвет контейнера FilledCard SurfaceContainerHighest . ( I35141 )
  • Цвет контейнера ElevatedButton теперь SurfaceContainerLow . Когда FilledIconButton не выбран, теперь он имеет цвет контейнера SurfaceContainerHighest . ( I792c9 )
  • Обновляет цвет контейнера TimePicker и роль цвета циферблата часов на SurfaceContainerHighest . ( I43b93 )

Версия 1.3.0-альфа01

21 февраля 2024 г.

Выпущен androidx.compose.material3:material3-*:1.3.0-alpha01 . Версия 1.3.0-alpha01 содержит эти коммиты.

Новые возможности

  • Обновите Compose M3 ModalBottomSheet для поддержки функции Predictive Back on U+ ( Iccf32 , b/281967264 , b/304850357 )
  • Обновлена SearchBar Compose M3 для поддержки функции Predictive Back on U+ ( I657f8 ).
  • Обновлен слайдер для улучшения доступности за счет добавления индикатора пробела и остановки. ( I3058e )
  • Обновлен ProgressIndicator для улучшения доступности за счет добавления индикатора разрыва и остановки. ( I21451 )
  • Добавление курсора по умолчанию для расширенной всплывающей подсказки, новый API расширенной всплывающей подсказки теперь позволяет рисовать пользовательскую курсорную метку с учетом привязки LayoutCoordinates . ( Ifd42c )

Изменения поведения

  • Компоненты материалов были перенесены для использования новых API-интерфейсов Ripple и больше не запрашивают RippleTheme .

Изменения API

  • Забавный drawStopIndicator теперь общедоступен. ( I3f59f )
  • Отметьте функцию formatWithSkeleton DatePicker как внутреннюю ( Ic65dc ).
  • DropdownMenu теперь поддерживает настраиваемый цвет, форму, высоту и границу. ( I8e981 , б/289554448 , б/301887035 , б/283654243 )
  • Компоненты Material3, предоставляющие MutableInteractionSource в своем API, были обновлены и теперь предоставляют MutableInteractionSource с нулевым значением, который по умолчанию имеет значение null . Здесь нет никаких семантических изменений: передача null означает, что вы не хотите поднимать MutableInteractionSource , и при необходимости он будет создан внутри компонента. Изменение значения null позволяет некоторым компонентам никогда не выделять MutableInteractionSource , а другим компонентам — только лениво создавать экземпляр, когда это необходимо, что повышает производительность этих компонентов. Если вы не используете MutableInteractionSource который передаете этим компонентам, рекомендуется вместо этого передать значение null. Также рекомендуется внести аналогичные изменения в ваши собственные компоненты. ( I41abb , б / 298048146 )
  • Добавляет RippleConfiguration и LocalRippleConfiguration позволяющие настраивать пульсацию для каждого компонента или поддерева с использованием фиксированных значений. Например, чтобы изменить цвет компонента, которым вы не управляете, или отключить пульсацию для компонента. В большинстве случаев следует использовать значения по умолчанию: эти API являются запасным выходом для настройки отдельных компонентов/ограниченных поддеревьев. Для более широких изменений и пользовательских систем проектирования вам следует вместо этого создать свою собственную Ripple, используя createRippleModifierNode . ( I7b5d6 , б/298048146 )
  • Добавляет новый API-интерфейс Ripple в материале3, который заменяет устаревший rememberRipple . Также добавляется временный CompositionLocal , LocalUseFallbackRippleImplementation , чтобы вернуть компоненты Material3 к использованию устаревших API rememberRipple / RippleTheme . Это будет удалено в следующем стабильном выпуске и предназначено только для временного облегчения миграции в тех случаях, когда вы предоставляете собственный RippleTheme . ( I34cbc , б/298048146 )

Исправления ошибок

  • Удалена подкомпозиция внутри ModalBottomSheet для повышения производительности. Исправлена ​​проблема, из-за которой ModalBottomSheet мог аварийно завершить работу в определенных сценариях в сочетании с LookaheadScope . ( I2a198 )
  • Удалена подкомпозиция внутри BottomSheetScaffold для повышения производительности. Исправлена ​​проблема, из-за которой BottomSheetScaffold аварийно завершал работу в определенных сценариях в сочетании с LookaheadScope . ( Ie6401 )
  • Выравнивание значка настраивается так, чтобы быть ближе к центру содержимого привязки относительно правого верхнего угла. ( я18а28 )
  • Устранена проблема с DateRangePicker , из-за которой текстовый заголовок «Месяц-Год» передавался как доступный для действий пользователям средств чтения с экрана, переключения доступа и голосового доступа. ( I2ac55 )
  • Исправлена ​​ошибка порядка параметров mediumTopAppBarColors . ( Ibe64a )

Версия 1.2

Версия 1.2.1

6 марта 2024 г.

Выпущен androidx.compose.material3:material3-*:1.2.1 . Версия 1.2.1 содержит эти коммиты .

Исправления ошибок

  • Снова сделайте состояния слайдера стабильными. Создание State.onValueChangeFinished завершил val. Обертывание onValueChangeFinished в rememberUpdatedState . ( Ie8fd0 , б/322269951 )
  • Удаление @Stable из состояний Slider , поскольку мы меняем state.onValueChangeFinished на var . ( I82ba1 , б/322269951 )
  • Исправлены пользовательские цвета NavigationBar для копирования из значений по умолчанию. ( 80а779 , б/326894020 )
  • Исправьте регрессию в ExposedDropdownMenu чтобы снова сделать его доступным для фокусировки ( 3fcec1 , b/323694447 ).
  • Исправить проблему с кэшированием цвета кнопки ( 3e5bbc b/327371655 )

Версия 1.2.0

7 февраля 2024 г.

Выпущен androidx.compose.material3:material3-*:1.2.0 . Версия 1.2.0 содержит эти коммиты.

Известная проблема

  • Ошибка рендеринга взаимодействия View-Compose была введена в PrimaryTabRow как часть изменения, направленного на повышение производительности. Обходной путь — использовать TabRow с TabRowDefaults.PrimaryIndicator

Важные изменения с версии 1.1.0

Новый дизайн материалов: 3 компонента

Улучшения существующих компонентов Material Design 3.

Экспериментальные API переведены в стабильную версию!

Улучшения производительности

Версия 1.2.0-rc01

24 января 2024 г.

Выпущен androidx.compose.material3:material3-*:1.2.0-rc01 . Версия 1.2.0-rc01 содержит эти коммиты.

Исправления ошибок

  • Исправлена ​​ошибка порядка параметров mediumTopAppBarColors . ( Ibe64a )
  • Исправлена ​​ошибка, представленная в 1.2.0-beta02 в CardDefaults.cardColors , которая не обновляла contentColor на основе значения параметра containerColor . ( IEE041 , B/319671246 )
  • Исправлена ​​ошибка в disabledContentColor представленную в 1.2.0-beta02 и добавлена ​​небольшая оптимизация. ( I6dda1 , b/318428829 )

Версия 1.2.0-бета02

10 января 2024 г.

androidx.compose.material3:material3-*:1.2.0-beta02 выпускается. Версия 1.2.0-бета02 содержит эти коммиты.

Известная ошибка

  • Ошибка в IconButtonColors по умолчанию назначит disabledContentColor в альфа (0,38F) LocalContentColor вместо указанного пользователя contentColor . Обходной путь состоит в том, чтобы явно установить disabledContentColor . Это будет исправлено в следующем выпуске.

API меняется

  • Добавление возможностей для включения подсказки для подсказок для простых API Tooltip . ( IBF767 )
  • SwipeToDismissState , rememberSwipeToDismiss и SwipeToDismissValue все переименованы в то, чтобы иметь _SwipeToDismissBox_ . ( I68d6d )

Исправления ошибок

  • Фиксированное значение окончательного значения ListItem для соответствия спецификации. ( IBD68B , B/305342674 )
  • Цвет сброса для изложенной карты теперь правильно отображается с OutlineVariant . ( I75480 , b/310979715 )
  • Динамический цвет теперь вытягивает из системы, определенных цветовыми ролями. Это улучшает контраст для доступного контента и более тесно выравнивает динамический цвет с спецификацией материала. ( I1de96 )
  • Исправлена ModalBottomSheet Back обработка на Android T/13+, когда android:enableOnBackInvokedCallback="true" . ( I728dc , b/306196110 )

Версия 1.2.0-бета01

13 декабря 2023 г.

androidx.compose.material3:material3-*:1.2.0-beta01 выпускается. Версия 1.2.0-бета01 содержит эти коммиты.

API меняется

  • Mark TabIndicatorScope как экспериментальный. ( I45c88 )
  • Удаление устаревших экспериментальных API для подъема инструментов. ( I438cb )
  • Измените новые перегрузки TabRow чтобы не использовать подкомпозиции. Это приводит к другому способу создания индикаторов TabRow с предоставленными пользовательскими модификаторами. ( IFE741 )
  • Установите DismissDirection и DismissValue API. Они были объединены с SwipeToDismissValue , чьи значения указывают как положение, так и направление SwipeToDismissBox . DismissState.progress теперь отмечается как FloatRange от 0.0 до 1.0 . DismissState устарела и конструктор теперь удалены. Компонент SwipeToDismiss , государство и дефолт объект были отмечены как экспериментальные. ( IB54F2 )

Исправления ошибок

  • Индикатор по умолчанию для PullToRefresh теперь является открытой стрелкой вместо твердого треугольника. ( I67be3 )

Версия 1.2.0-Альфа12

29 ноября 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha12 выпускается. Версия 1.2.0-Alpha12 содержит эти коммиты.

API меняется

  • RangeSlider теперь принимает диапазон Kotlin (например, 0f..1f ) вместо пользовательского класса значений FloatRange . SnapFlingBehavior.kt теперь также использует диапазон Kotlin. ( I025CB )
  • Марк модификатор Factory функционирует как @Stable . ( IB109F )

Версия 1.2.0-Альфа11

15 ноября 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha11 выпускается. Версия 1.2.0-альфа11 содержит эти коммиты.

Новые функции

  • Реализует PullToRefreshContainer и PullToRefreshState , которые вместе обеспечивают притяжение, чтобы обновить реализацию в Material3. ( I16456 , B/261760718 )

API меняется

  • Отметьте SwipeToDismissBox DismissDirection и DismissValue как экспериментальное. ( I517b0 )
  • Переименовать SwipeToDismiss в SwipeToDismissBox . Переименовать background до backgroundContent и dismissContent в следующий content Lambda. ( I7f4d3 )
  • Сделайте конструктор для ChipElevation и SelectableChipElevation Public. ( IE0C48 , B/308432421 )
  • Добавление ModalBottomSheetProperties . Перемещение securePolicy в ModalBottomSheetProperties . Добавление isFocusable и shouldDismissOnBackPress в ModalBottomSheetProperties . Эти новые логины помогают определить, как модальный нижний лист должен обрабатывать события IME. ( IEA56F , B/278216859 )
  • Обновленные состояния RangeSlider и Slider для удаления initialOnValueChange , начальных префиксов и соответствующих KDOC. ( I57d30 )
  • Умолете класс ChipBorder и связанные с ним функциональные вызовы, вместо этого рекомендуйте использовать BorderStroke . ( I89cc2 )
  • Фонд подсказки инструментов теперь @ExperimentalFoundationApi . ( I30b0b )
  • TabRow и ScrollableTabRow больше не устаревают. Новые первичные и вторичные варианты отмечены как экспериментальные. ( I0def6 )
  • Фильтр и входные чипы теперь используют BorderStroke напрямую. ( I07a8d )
  • SegmentedButton теперь использует BorderStroke напрямую. ( I89b9b )
  • Переименован в общей функции AlertDialog в BasicAlertDialog и выпустите предыдущую функцию. ( Idbe52 )
  • Переименовать APIS SwipeToDismiss в SwipeDismiss и содействовать новым APIS SwipeDismiss до стабильного. ( I14cbe )
  • Добавление tonalElevation и shadowElevation к API -интерфейсам для выявления инструментов. Кроме того, перемещение API -интерфейсов TooltipBox , PlainTooltip и RichTooltip обратно в экспериментальные, так как они были случайно выпущены как стабильные. ( If0f66 , b/293939035 )
  • Содействовать экспериментальным API -интерфейсам к стабильному. ( IEA2C3 )
  • Удалил аннотацию @ExperimentalMaterial3Api из Material3 Clickable Cards. ( I88dbf )

Исправления ошибок

  • Исправлена ​​проблема, в которой SwipeToDismiss потерпел крушение в определенных сценариях с вложенными лайкейками и ленивыми макетами. ( ICA8D1 , B/297226562 )

Версия 1.2.0-Альфа10

18 октября 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha10 . Версия 1.2.0-Alpha10 содержит эти коммиты.

API меняется

  • Продвигание Badge и BadgedBox до стабильной. ( I67F16 , B/261565132 )
  • Добавление securePolicy в качестве параметра в ModalBottomSheet , поэтому пользователи могут определить поведение для WindowManager.LayoutParams.FLAG_SECURE . ( ICDAC8 , B/296250262 )
  • Добавлены новые перегрузки LinearProgressIndicator и CircularProgressIndicator которые занимаются progress как лямбда. Они должны быть более эффективными, чем предыдущие версии. ( I824E6 , B/295616656 )
  • Переименование StandardSizeClasses в AllSizeClasses . ( I8cb07 )
  • Объедините функции расчета классов размера окна. ( IAD935 )

Исправления ошибок

  • Исправьте сбой DatePicker , когда быстро нажимает на кнопки стрелка навигации, когда отображаемый месяц находится на краю допустимого диапазона лет. ( I46f36 , b/290954897 , b/297002119 )
  • [NAV RAIL/BAR] Поддержка прозрачного цвета для индикатора. ( IE0A9B , B/267289987 )

Версия 1.2.0-Alpha09

4 октября 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha09 выпускается. Версия 1.2.0-Alpha09 содержит эти коммиты.

API меняется

  • Мигрировал ModalNavigationDrawer и DismissibleNavigationDrawer для использования новых AnchoredDraggable API. Animateto's animateTo DrawerState была заменена на открытые и близкие методы, а смещение теперь выставлено как плавание вместо объекта состояния. Вы можете получить доступ к смещению непосредственно через currentOffset . ( I0a72c )
  • Неособочные функции были добавлены для создания DatePickerState и DateRangePickerState напрямую. Эти функции могут использоваться в качестве альтернативы композиционным функциям rememberDatePickerState и rememberDateRangePickerState , когда это необходимо. ( I70326 , b/291524052 )
  • Исправленные и прокручиваемые TabRows теперь имеют первичные и вторичные варианты. Они правильно сопоставляются с поведением цвета и индикатора, как определено в материале3.
  • PrimaryScrollableTabRow и SecondaryScrollableTabRow теперь обнажают состояние прокрутки. ( IEC8F5 , B/260572337 )
  • Добавление нового параметра sheetMaxWidth , который разработчики могут установить, чтобы указать максимальную ширину, которую будет охватывать лист. DP.UNPACIFIFITED может быть передан для параметра, если желателен лист, который охватывает всю ширину экрана. ( IFB7C9 , B/266697696 )
  • Добавление API -интерфейсов PlainTooltipBox и RichTooltipBox в качестве устаревших методов. ( I246fa )

Исправления ошибок

  • Исправьте сбой, когда инициализируется DatePicker с помощью DatePickerFormatter , у которого есть определенные скелеты даты, которые остаются прежними при преобразовании на сегодняшний день (например, YY). ( I01F29 )

Версия 1.2.0-Alpha08

20 сентября 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha08 выпускается. Версия 1.2.0-Alpha08 содержит эти коммиты.

Поведение нарушение изменения

  • ColorScheme в настоящее время неизменен, что делает индивидуальные обновления цвета менее эффективными, но делает более распространенное использование цветов более эффективными. Причина этого изменения заключается в том, что большинство приложений не будут обновлять отдельные цвета в качестве основного варианта использования. Это все еще возможно, но оно будет перекомплектовать больше, чем раньше, в свою очередь, мы значительно уменьшаем количество подписок состояния по всему коду материала и повлияем на инициализацию и стоимость времени выполнения более стандартных вариантов использования. ( IC447D , B/297212873 )
  • Тональная высота больше не анимирует в разных состояниях взаимодействия в соответствии с спецификацией. ( ICDD12 )

API меняется

  • Добавлен новый BottomAppBar , который принимает в качестве параметра BottomAppBarScrollBehavior , чтобы автоматически скрыть его при прокрутке контента. Также добавлен FabPosition.EndOverlay позволяя FAB накладываться на нижнюю панель приложений в каркасе вместо того, чтобы быть закрепленным над ним. ( IECB47 )
  • Добавлен простой компонент метки, который строится на вершине BasicTooltipBox , который не будет отклоняться при постукивании за пределы границ метки. ( I821f9 )

Исправления ошибок

  • Удалили использование rememberSaveable для всплесков инструментов. ( ICC131 , B/299500338 )
  • Ввел временный флаг, чтобы контролировать, следует ли измерять каркасы во время измерения или во время размещения. По умолчанию это будет измерять в измерении. Если вы сталкиваетесь с проблемами с новым поведением, пожалуйста, подайте проблему. ( I0b354 )
  • Фиксированный горизонтальный край до края в BottomSheet используя правильное измерение для ширины экрана устройства. ( I1df0c , b/299058752 )
  • Исправлена ​​ошибка, в которой ModalBottomSheet не призывал onDismissedRequest при увольнении, сбиваясь на лист. ( IDFDD8 )

Версия 1.2.0-Alpha07

6 сентября 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha07 выпускается. Версия 1.2.0-Alpha07 содержит эти коммиты.

Новые функции

  • Поддержка иконки Auto-Mirror была добавлена ​​в compose material 1.6.0-alpha05 , пожалуйста, см. Примечания по выпуску для получения подробной информации о значках автоматического зеркала.

API меняется

  • SliderState реализует DraggableState ( i9b116 )
  • Изменить форму, чтобы быть обязательным парамом. Переименовать position , чтобы index функцию вспомогательной. ( I34941 )
  • Обновляет формат DatePicker formatWithSkeleton , чтобы включить карту, которая используется в качестве кэша для улучшения производительности. ( I3195f )
  • Добавлен BasicTooltipBox для compose.foundation и обновленного PlainTooltipBox и RichTooltipBox для использования TooltipBox с новыми композициями PlainTooltip и RichTooltip . ( I79e1d )

Исправления ошибок

  • dynamicLightColorScheme и dynamicDarkColorScheme теперь возвращают более высокие цвета хромы для ролей поверхности и surfaceContainer . ( I5e901 )
  • Исправлена ​​проблема, в которой некоторые компоненты с использованием подкомпозиции (например, BottomSheetScaffold ) внутри каркаса внутри LookaheadScope пытались прочитать их размер слишком рано. ( I297b4 , i871f1 , b/295536718 )

Версия 1.2.0-Alpha06

23 августа 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha06 выпускается. Версия 1.2.0-Alpha06 содержит эти коммиты.

Исправления ошибок

  • Фиксированное offset расчет DropdownMenu поэтому x смещения зависят исключительно от локального направления макета, и y -смещения больше не будут изменены, когда меню находится рядом с нижней частью экрана. ( ICCC74 , B/294103942 )
  • Фиксированное offset расчет DropdownMenu поэтому x смещения зависят исключительно от локального направления макета, и y -смещения больше не будут изменены, когда меню находится рядом с нижней частью экрана. ( IB87A2 , B/294103942 )

Версия 1.2.0-Alpha05

9 августа 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha05 выпускается. Версия 1.2.0-Alpha05 содержит эти коммиты.

API меняется

  • Обновления в флажок и цветах TriStateCheckbox . CheckboxDefaults.colors() disabledUncheckedColor теперь только влияет на границу флажона. Специальные случаи, которые требуют от вас установить цвет внутреннего коробки при отключении и неконтролировании, требуется созданный настраиваемый экземпляр CheckboxColors с желаемыми значениями цвета. ( I77d17 , b/291943198 )

Версия 1.2.0-Alpha04

26 июля 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha04 выпускается. Версия 1.2.0-Alpha04 содержит эти коммиты.

Новые функции

  • Экспериментальная сегментированная кнопка API ( IFC8FB )
  • Разделители теперь имеют параметр для управления ориентацией для поддержки вертикальных разделителей. ( I4c899 , b/288438593 )

API меняется

  • Мы перемещаем зависимость плотности на уровень компонентов. Это относится к следующим компонентам: SwipeToDismiss и листовые компоненты. Пожалуйста, используйте новую перегрузку, предоставленную там, где плотность является параметром. ( I1846E )
  • Дополнительные аннотации для указания разрешенных входов в композиции ( IEF234 )
  • Добавьте параметр значка в сегментированную кнопку, разделенную семантику, чтобы сегментированные кнопки можно было выбрать для реализации однопользования и под необходимыми для реализации многопользователя, с SelectableSegmentedButtonRow и ToggelableSegmentedButtonRow соответственно. ( I38740 )
  • Разделитель был переименован в HorizontalDivider . Добавлена ​​функциональность VerticalDivider . ( I5975c )
  • Измените использование ClosedFloatingPointRange для более легкого FloatRange веса в экспериментальном материале3 API, чтобы минимизировать автобоксинг. ( I4aab5 )
  • Добавлен новый стартовый выравнивание для FabPosition ( IB7AEA , B/170592777 )

Исправления ошибок

  • ModalBottomSheet уважает направление локальной планировки. ( IB4F44 , B/285628622 )

Версия 1.2.0-Alpha03

21 июня 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha03 выпускается. Версия 1.2.0-Alpha03 содержит эти коммиты.

Поведение изменяется

  • includeFontPadding теперь является false по умолчанию в типографии Материала 3. Стиль Typography lineHeight по умолчанию также был изменен на Trim.None и Alignment.Center TextStyle Проконсультируйтесь с документами API, если вы хотите настроить эти значения, и посмотрите пост в блоге для углубленного объяснения этих изменений. ( I6266f , icabc3 )

Новые функции

  • Добавлена ​​перегрузка для RangeSlider , которая является современной версией компонента. Созданный RangeSliderState , который содержит всю информацию для текущей активной дорожки, измерения компонентов RangeSlider и логики перетаскивания и жеста. ( I8c270 )
  • Поисковой панель теперь поддерживает тени через недавно добавленный параметр shadowElevation . ( IA5369 , B/271040353 )
  • ColorScheme теперь поддерживает новые роли SurfaceContainer .
  • Поверхностное тональное наложение теперь может быть отключено с помощью локальной композиции LocalTonalElevationEnabled . ( IC203C , B/277774590 )

API меняется

  • Откройте конструкторы цветов компонентов. ( I8c4a6 )
  • Добавление фокусируемого параметра в обоих API -интерфейсов инструментов, чтобы разработчики могли иметь подсказку, потребляя сенсорные события или нет. Будьте осторожны, что это может сломать автоматическое обход. ( IE32D8 )
  • Оптимизированная доступность для производительности и распределения памяти. ( Iede48 )
  • Разоблачить DefaultSizeClasses и создавать StandardSizeClasses для WindowSizeClasses ( i91838 )
  • Изменить WindowWidth/HeightSizeClass на классы значений с плаванием ( IE686E )

Исправления ошибок

  • Параметр contentWindowInsets от ContentWindowinsets теперь уважает потребляемые оконные вставки. Обратите внимание, что поведение контента на основе topBar и bottomBar остается неизменным, когда эти параметры предоставляются. ( I08B73 , B/264601542 )
  • Установите выравнивание центральной верхней панели приложений, чтобы убедиться, что длинный заголовок не отображает значки действия или значок навигации. ( I4369f , b/236994621 )
  • Положения вкладок теперь обеспечивают минимальную ширину содержания 24.dp. Это обеспечивает доступную сенсорную цель для индикаторов вкладок. ( ID8861 )
  • Динамические цветовые палитры из dynamicLightColorScheme и dynamicDarkColorScheme теперь поддерживают новые роли поверхности. ( I1252E )
  • Обновление выравнивания уведомлений о значке, чтобы не обрезать при столкновении с прабабушкой. ( IDF75A )

Версия 1.2.0-Alpha02

24 мая 2023 г.

androidx.compose.material3:material3-*:1.2.0-alpha02 выпускается. Версия 1.2.0-Alpha02 содержит эти коммиты.

API меняется

  • Добавьте параметр Window Insets в ModalBottomSheet .
    • Scrim для ModalBottomSheet теперь может быть нарисован за панелью состояния с windowInsets установленным на ноль
    • Обновленная функциональность ModalBottomSheet по умолчанию, чтобы оставаться за пределами системных баров, включая навигацию
    • Обработка стержней состояния обеспечивается ручкой перетаскивания в режиме края к краю.
    • BottomSheetDefaults включает в себя оконные вставки для BottomSheetWindow . ( I31200 , b/274872542 , b/272973615 , b/2723344475, b/268432129 , b/275849044 , b/275486106 , b/268433162 )
  • Установите Indicator и добавьте Primary / SecondaryIndicator чтобы соответствовать спецификациям M3. PrimaryIndicator соответствует ширине контента вкладки, тогда как SecondaryIndicator охватывает полную доступную ширину. SecondaryIndicator эквивалентен ныне устаревшему Indicator и может быть прямой заменой. ( I27604 )
  • Добавлена ​​опция для прохождения в ScrollState при конструировании DropdownMenu или ExposedDropdownMenu для управления вертикальным состоянием прокрутки отображаемых пунктов меню. ( IA0734 , B/1853044441 )
  • Добавлена ​​перегрузка для Slider , которая является современной версией компонента. Создан SliderState , который содержит всю информацию для текущей активной дорожки, измерения компонентов Slider и логику перетаскивания и жеста. ( I124A5 )
  • Переименование Семантики isContainer в isTraversalGroup ( I121F6 )
  • Добавлены оптимизированный TextStyle.merge(...) с полным списком параметров. ( IAD234 , B/246961787 )
  • Сделанные интерфейсы TooltipState , RichTooltipState и PlainTooltipState . Добавлены RichTooltipStateImpl и PlainTooltipStateImpl для состояний по умолчанию. Добавлено remember*State функции для получения этих реализованных состояний. Удаленный TooltipSync в пользу TooltipDefault.GlobalMutatorMutex . ( I7813d )
  • Обновлено DatePickerColors , чтобы включить дополнительные параметры настройки для разделителя, навигации и поля текста. ( I1A685 , B/274626815 )
  • DatePickerState и The DateRangePickerState в настоящее время являются публичными интерфейсами с реализациями по умолчанию, которые могут быть извлечены с помощью rememberDatePickerState и rememberDateRangePickerState . ( I71c52 )
  • Удалили dateValidator из DatePicker и DateRangePicker и представил интерфейс SelectableDates , который можно установить в состояние для управления, какие даты или годы выбираются в пользовательском интерфейсе. ( IC2FC6 )
  • TimePicker удален из стабильного API, в государственном API ожидаются дальнейшие изменения ( I3F39A )
  • ModalBottomSheet переехал только в Android. ModalBottomSheet не рекомендуется для использования настольных компьютеров, и функциональность не поддерживается активно. ( IB3778 )

Исправления ошибок

  • Исправлена AlertDialog отклоните действие, чтобы появиться ниже подтвержденного действия, когда действия, сложенные друг на друга, чтобы вписаться в ширину диалога. Это исправление выравнивает реализацию со спецификацией дизайна материала. ( I029DE , B/235454277 )
  • Исправлена ​​ошибка в ListItem используя неправильную прокладку для трехстрочных элементов. ( I6e235 )
  • ModalBottomSheet теперь может отображать клавиатуру IME ( IDC508 , B/262140644 , B/268380384 , B/272483584 )

Версия 1.2.0-Alpha01

10 мая 2023 г.

androidx.compose.material3:material3:1.2.0-alpha01 и androidx.compose.material3:material3-window-size-class:1.2.0-alpha01 . Версия 1.2.0-Alpha01 содержит эти коммиты.

Версия 1.1

Версия 1.1.2

20 сентября 2023 г.

androidx.compose.material3:material3:1.1.2 и androidx.compose.material3:material3-window-size-class:1.1.2 выпускаются. Версия 1.1.2 содержит эти коммиты.

Исправления ошибок

  • Фиксированный модификатор неправильно передается в два композиционных устройства. ( B/282761472 )
  • Фиксированная TimePickerState возвращает неверные часы при инициативе за 23 часа. ( B/278242122 )
  • Исправлено начальное состояние переключения для полудня и мельчайшая проверка. ( B/269768197 , B/282790635 )
  • Фиксированное state.hour возвращает неправильное значение за 11 вечера. ( B/282761472 , B/278242122 )

Версия 1.1.1

21 июня 2023 г.

androidx.compose.material3:material3:1.1.1 и androidx.compose.material3:material3-window-size-class:1.1.1 выпускаются. Версия 1.1.1 содержит эти коммиты.

Исправления ошибок

  • Добавляет звонок для ModalBottomSheet без windowInset Param для двоичной совместимости. ( IB7959 )
  • Добавьте параметр Window Insets в ModalBottomSheet .
    • Scrim для ModalBottomSheet теперь может быть нарисован за панелью состояния с windowInsets установленным на ноль
    • Обновленная функциональность ModalBottomSheet по умолчанию, чтобы оставаться за пределами системных баров, включая навигацию
    • Обработка стержней состояния обеспечивается ручкой перетаскивания в режиме края к краю.
    • BottomSheetDefaults включает в себя оконные вставки для BottomSheetWindow . ( I31200 , b/274872542 , b/272973615 , b/2723344475, b/268432129 , b/275849044 , b/275486106 , b/268433162 )

Версия 1.1.0

10 мая 2023 г.

androidx.compose.material3:material3:1.1.0 и androidx.compose.material3:material3-window-size-class:1.1.0 выпускаются. Версия 1.1.0 содержит эти коммиты.

Основные особенности 1.1.0

Новый дизайн материала 3 компоненты

Улучшения для существующих компонентов дизайна материала 3.

Продвижение экспериментальных API до стабильной!

Пожалуйста, смотрите этот пост в блоге для получения более подробной информации!

Версия 1.1.0-RC01

19 апреля 2023 г.

androidx.compose.material3:material3:1.1.0-rc01 и androidx.compose.material3:material3-window-size-class:1.1.0-rc01 выпускаются. Версия 1.1.0-RC01 содержит эти коммиты.

API меняется

  • TimePicker удален из стабильного API, в государственном API ожидаются дальнейшие изменения ( I3F39A )
  • ModalBottomSheet переехал только в Android. ModalBottomSheet не рекомендуется для использования настольных компьютеров, и функциональность не поддерживается активно. ( IB3778 )

Версия 1.1.0-бета02

5 апреля 2023 г.

androidx.compose.material3:material3:1.1.0-beta02 и androidx.compose.material3:material3-window-size-class:1.1.0-beta02 выпускаются. Версия 1.1.0-beta02 содержит эти коммиты.

API меняется

  • SheetState теперь имеет дополнительный параметр skipHiddenState
  • rememberStandardBottomSheetState теперь имеет дополнительный параметр skipHiddenState
  • BottomSheetScaffold теперь имеет определенное скрытое якорь, хотя по умолчанию он отключен
  • SheetState.requireOffset документация была обновлена
  • BottomSheetDefaults.MinimizedShape был переименован в BottomSheetDefaults.HiddenShape ( I839F4 , B/273870234 )

Исправления ошибок

  • Не переключайте лицевое лицо от часа на минуту, когда включена исследование. ( I717d0 )
  • ModalBottomSheet и BottomSheetScaffold Drag Handling Semantics теперь объединены. ( I05afb )
  • Модификатор BottomSheetScaffold , параметры containerColor и contentColor теперь влияют только на содержание. ( I992CB )
  • BottomSheetScaffold nestedScroll для содержимого листа теперь реализует щели. ( I992CB )

Версия 1.1.0-бета01

22 марта 2023 г.

androidx.compose.material3:material3:1.1.0-beta01 и androidx.compose.material3:material3-window-size-class:1.1.0-beta01 выпускаются. Версия 1.1.0-beta01 содержит эти коммиты.

API меняется

  • Добавить тип макета в композицию TimePicker . Он позволяет использовать разные макеты, в зависимости от конфигурации экрана ( IA0E16 )
  • SearchBarDefaults был отмечен как экспериментальный. ( I65561 )
  • Добавлено поднятие тени в BottomSheetScaffold ( i94e0f )
  • Добавлена ​​поддержка для отображения сборщиков даты без части заголовка. API меняется, чтобы разрешить передачу нулевого заголовка при создании выбора даты. Теперь вы можете передать нулевой заголовок, заголовок и showToggleMode = false чтобы отобразить безголовный сборщик. ( Id3f3a , b/266132421 , b/267194809 )

Исправления ошибок

  • Поисковые панели теперь автоматически очищают фокус, когда становятся неактивными. ( I22a7c , b/261444487 )
  • Обновил DateRangePicker , чтобы позволить выбрать диапазон с той же датой для его начала и конца. ( I16529 , B/272882497 )
  • Текстовые поля теперь должным образом расположены свои текстовые элементы, когда размер шрифта меньше, чем ожидалось. Это может привести к изменению нескольких пикселей в ваших приложениях на основе настройки шрифта и сценария. ( I8b8d0 )
  • Семантические действия нижних листов теперь имеют ярлыки. ( I277b0 )

Версия 1.1.0-Alpha08

8 марта 2023 г.

androidx.compose.material3:material3:1.1.0-alpha08 и androidx.compose.material3:material3-window-size-class:1.1.0-alpha08 выпускаются. Версия 1.1.0-Alpha08 содержит эти коммиты.

Новые функции

  • Добавлена ​​поддержка BottomSheetScaffold и BottomSheetScaffoldState . ( I063D4 )

API меняется

  • Добавлено функциональность к DatePickerState и DateRangePickerState , чтобы разрешить настройку дат после первоначального создания состояния, а также сбросить выбор путем установки нулевых времен. Установка дат вручную должна быть сделана с осторожностью, а новая функция setSelection вызовет исключение в случае, если предоставленная дата не выполнит предпосылку (см. Документацию). ( IFA645 , b/268609314 , b/270427389 )
  • Переименование рухнуло SheetValue , чтобы PartiallyExpanded чтобы более точно и гибко изображать поведение в этом состоянии. ( IA1491 )
  • Обновленные имена параметров ListItem для _content вместо _text. Геттеры по умолчанию теперь являются ReadOnlyComposables где это уместно. ( I69a25 )
  • Интерактивные поверхностные API с экспериментальными. ( I90d59 , b/261561812 )

Исправления ошибок

  • Исправлена ​​проблема, в которой HalfExpanded состояние ModalBottomSheet было неверно рассчитано, и лист, по -видимому, будет плавать. ( I45E84 , B/2684411386 )
  • Добавьте проверку confirmValueChange чтобы проверить Scrim Tap для ModalBottomSheet . ( I2311a , b/270425759 )
  • Переместите Семантические действия BottomSheet чтобы перетаскивать ручку. ( I158BA )
  • ModalBottomSheet теперь команды фокусируются на запуске, обрабатывает кнопку назад. ( I4d2ab )
  • ModalBottomSheet onDismissRequest теперь также обрабатывается во время вложенных проклятых прокручиваний. ( I655C5 , B/268433166 )

Версия 1.1.0-Alpha07

22 февраля 2023 г.

androidx.compose.material3:material3:1.1.0-alpha07 и androidx.compose.material3:material3-window-size-class:1.1.0-alpha07 выпускаются. Версия 1.1.0-Alpha07 содержит эти коммиты.

Новые функции

  • Добавьте время ввода времени, который работает с rememberTimePickerState() , он следует по спецификации M3 для ввода времени ( IA4FAB )
  • Добавлен материал 3 DateRangePicker API для выбора диапазона дат. ( I7a6c3 , b/267194809 )
  • Добавлена ​​поддержка режима ввода 3 материала для выбора диапазонов дат через API DateRangePicker . ( IFDBC4 )
  • Цвета текста поля теперь позволяют настраивать:
    • Поле ввода и текстовые цвета заполнителя на основе фокуса и состояния ошибок. Параметр textColor был переименован в unfocusedTextColor , а placeholderColor был переименован в unfocusedPlaceholderColor .
    • Цвет контейнера для заполненных текстовых полей на основе состояния ошибки с новым параметром errorContainerColor .
  • Раскрытые раскрывающиеся в текстовом меню цвета поля были обновлены с параметрами для поддержки нового префикса и суффикса API. ( I9c8b4 , b/254284181 , b/264766350 )

API меняется

  • Вернуть некоторые версии API слайдера и удаление избыточных перегрузки ползунков, которые покрыты новым экспериментальным слайдером с помощью пользовательского большого пальца и трека. Продвижение RangeSlider быть стабильным. ( IE8FBD )
  • Переименовано в defaultElevation до elevation в функциях высоты чипа. ( I0f872 )
  • Следующий материал 3 API текстового поля больше не экспериментальны: TextField , OutlinedTextField , textFieldWithLabelPadding , textFieldWithoutLabelPadding , outlinedTextFieldPadding . ( IEB5C0 , B/261561819 )
  • TimePickers is24Hour использует настройку системы ( I18856 )
  • Удаленная экспериментальная аннотация из каркасов API. ( IBB51E , B/261565765 , B/261436953 )

Исправления ошибок

  • ModalBottomSheet Forme Shape теперь всегда SheetDefaults.ExpandedShape . ( I0dfca )
  • Улучшения доступности для материала 3 DatePicker и DateRangePicker . ( I5087e )
  • Исправьте ошибку, где максимальное ограничение высоты распространяется и может сбое. ( I30d8c )
  • Удаленные семантические роли с кликабельных и выбираемых поверхностей, обновленные компоненты, которые использовали их для установки ролей с использованием modifier.semantics ( i793d9 )

Версия 1.1.0-Alpha06

8 февраля 2023 г.

androidx.compose.material3:material3:1.1.0-alpha06 и androidx.compose.material3:material3-window-size-class:1.1.0-alpha06 выпускаются. Версия 1.1.0-Alpha06 содержит эти коммиты.

Новые функции

  • Текстовые поля теперь поддерживают префикс и текст суффикса ( IA8578 , B/179884561 )
  • Добавлена ​​функция TimePicker , чтобы показать сборщика времени, следуя спецификации материала 3, используемой в сочетании с TimePickerState и Commonience Method rememberTimePickerState ( i71910 )
  • Ввод даты теперь является режимом отображения на DatePicker . Добавлена ​​поддержка переключения между выводом даты и режимами ввода даты. ( Ieff7 )
  • Добавлен API для RichTextTooltips . ( I58ef3 )
  • Модальная реализация нижнего листа для материала 3, включая ModalBottomSheet и ModalBottomSheetDefaults . Также представляет SheetState и rememberSheetState , которые можно использовать для будущих компонентов листа. ( I0853A , B/244189383 )

API меняется

  • Стабилизируйте API showSnackbar ( I195C2 , B/261424370 )
  • Стабилизируйте API для оказания помощи чип и чип ( IBB67B , B/261424370 )
  • Продвигает ListItem , ListItemDefaults и ListItemColors API в неэкспериментальный ( i7e7fa , b/261438882 )
  • Продвижение SliderPositions , SliderDefaults.Thumb и SliderDefaults.Track к стабильному и добавлению неэкспериментальных API Slider и RangeSlider , которые содержат пользовательские большие пальцы и дорожку. Также выступая в предыдущем Slider и API -интерфейсах RangeSlider . ( IE5EA6 , B/261566890 )
  • Made Modifier.tooltipAnchor() Public, поэтому разработчики могут передавать его в якорь, чтобы указать, что подсказка должна отображаться на длинном прессе. Обновлено PlainTooltipBox API, чтобы больше не сделать TooltipState Nulleable и теперь имеет по умолчанию. ( IE2FB7 )
  • ProgressIndicatorDefaults.circularTrackColor был отмечен @Composable для последовательности. ( ID29CC )
  • Восстановленная собственность Getter LocalMinimuTouchTargetEnforcement и отметьте его как устаревшего и перенаправить на LocalMinimumInteractiveComponentEnforcement . ( I60dd5 )

Версия 1.1.0-Alpha05

26 января 2023 г.

androidx.compose.material3:material3:1.1.0-alpha05 и androidx.compose.material3:material3-window-size-class:1.1.0-alpha05 выпускаются. Версия 1.1.0-Alpha05 содержит эти коммиты.

Новые функции

  • DatePickerDialog и поддержка доступности
  • Добавлен пользовательский большой палец и трек в RangeSlider .

Обновления зависимости

Версия 1.1.0-Alpha04

11 января 2023 г.

androidx.compose.material3:material3:1.1.0-alpha04 и androidx.compose.material3:material3-window-size-class:1.1.0-alpha04 выпускаются. Версия 1.1.0-Alpha04 содержит эти коммиты.

Новые функции

  • Начальный API DatePicker для выбора одной даты через календарный пользовательский интерфейс. Этот API все еще претерпевает изменения. ( I722b9 )
  • Добавлена ​​поддержка простых подсказков через PlainTooltipBox . ( I0cdfb )
  • Поисковой панель ( IAD128 )
  • SwipeToDismiss ( i458a8 , b/242889540 )

API меняется

  • Добавлено в собственности семантики IsContainer на поверхностях. Это свойство будет использоваться в более позднем изменении, которое определяет порядок обхода на основе семантического значения таких элементов, как поверхности. ( I63379 )
  • Марк навигационный ящик, связанный с ящиком, как стабильный. ( IAB01E , B/261439597 )
  • Добавлен параметр цвета дорожки для индикаторов круговых прогрессов и параметр штриховой пары для индикаторов круговых и линейных прогрессов. ( IE668C , B/216325962 , B/222964817 )
  • Больше возвращаемого типа, нуляемость устаревших функций ( IBF7B0 )
  • Добавить Modifier.minimumInteractiveComponentSize . Его можно использовать, чтобы зарезервировать не менее 48.dp в размерах для неоднозначных сенсорных взаимодействий, если элемент будет измерять меньше. ( I33f58 , b/258495559 )
  • Добавлен экспериментальный API для композиции AlertDialog , который имеет слот для контента. ( IEC4A2 )

Исправления ошибок

  • Прогресс по показателям прогресса в настоящее время должным образом ограничен его ожидаемым диапазоном. ( I8a7eb , b/262262727 )

Известный вопрос

  • При обновлении с androidx.compose.foundation:1.4.0-alpha03 до androidx.compose.foundation:1.4.0-alpha04 , вы можете испытать ошибку java.lang.NoSuchFieldError . Вот где о проблеме было сообщено Оргино. Исправление было отправлено и будет доступно в следующем обновлении Compose. В качестве обхода обновите свои библиотеки androidx.compose.material и androidx.compose.material3 до последней версии (1.1.0-ALPHA04) или понизите свой androidx.compose.foundation до 1.4.0-ALPHA03.

Версия 1.1.0-Alpha03

7 декабря 2022 г.

androidx.compose.material3:material3:1.1.0-alpha03 и androidx.compose.material3:material3-window-size-class:1.1.0-alpha03 выпускаются. Версия 1.1.0-Alpha03 содержит эти коммиты.

API меняется

  • Переименованные consumedWindowInsets() для consumeWindowInsets() и withConsumedWindowInsets() в onConsumedWindowInsetsChanged() и сделали модификаторы публичными. ( IE44E1 )
  • Добавьте новую накладку содержимого по умолчанию для текстовой кнопки со значком для использования. ( I8f662 )
  • Добавлены отключенные цвета для навигационной панели и рельса. ( IA7892 , B/258867034 )
  • Added an Modifier API to query ancestors scroll info. ( I2ba9d , b/203141462 )
  • Used in Clickable to correctly delay press interactions, when gestures could become scroll events.
  • Fixed Clickables not correctly delaying ripples, when used inside an Scrollable ViewGroup .
  • Updated Drawers and Sheets to correctly delay presses in case gestures can become scroll events.

Dependency Updates

  • Compose UI and Compose Material now depend on Lifecycle 2.5.1. ( I05ab0 , b/258038814 )

Version 1.1.0-alpha02

9 ноября 2022 г.

androidx.compose.material3:material3:1.1.0-alpha02 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha02 are released. Version 1.1.0-alpha02 contains these commits.

API Changes

  • awaitFirstDown and waitForUpOrCancellation now accept a PointerEventPass for greater flexibility (also fixes ExposedDropdownMenuBox showing a menu while scrolling).( I7579a , b/212091796 )
  • Added minLines parameter into material and material3 Text, TextField and OutlinedTextField which allows setting the minimum height of the component in terms of number of lines ( I4af1d )
  • Deprecate the TopAppBarDefaults smallTopAppBarColors function in favor of a new topAppBarColors function that should be used when creating a TopAppBar . ( Ie6cb9 )
  • Added minLines parameter to the BasicText and BasicTextField . It allows to set the minimum height of these composables in terms of number of lines ( I24294 , b/122476634 )

Bug Fixes

  • Clip the content of a Material3 IconButton and IconToggleBotton to the component's state-layer shape (eg circular shape). ( I9da8f )
  • Updates Material3 Medium and Large top app bars to apply the same background color across their entire surface, and to allow setting overriding the default colors with transparent color values. ( I67659 , b/249688556 , b/250838918 )

Version 1.1.0-alpha01

24 октября 2022 г.

androidx.compose.material3:material3:1.1.0-alpha01 and androidx.compose.material3:material3-window-size-class:1.1.0-alpha01 are released. Version 1.1.0-alpha01 contains these commits.

Bug Fixes

  • Fixes to the top app bar when title is applied with a TextStyle and a Brush. ( If667e )

Версия 1.0

Version 1.0.1

9 ноября 2022 г.

androidx.compose.material3:material3:1.0.1 and androidx.compose.material3:material3-window-size-class:1.0.1 are released. Version 1.0.1 contains these commits.

Bug Fixes

  • Updates Material3 Medium and Large top app bars to apply the same background color across their entire surface, and to allow setting overriding the default colors with transparent color values. ( I67659 , b/249688556 , b/250838918 )

Version 1.0.0

24 октября 2022 г.

androidx.compose.material3:material3:1.0.0 and androidx.compose.material3:material3-window-size-class:1.0.0 are released. Version 1.0.0 contains these commits.

Major features of 1.0.0

This is the first stable release of Compose Material 3!

Material Design 3 theming and Material You dynamic color

Material Design 3 components

Window Size Class

  • material3-window-size-class is a new library that provides support for window size classes: a set of opinionated viewport breakpoints for you to design, develop, and test resizable application layouts against. You can use calculateWindowSizeClass to retrieve a window size class instance, which you can use to determine how your UI should appear, such as showing a navigation rail instead of bottom navigation for larger window sizes. For more information and sample usage see the API reference documentation for WindowSizeClass .

  • Please see this blog post for more details!

Version 1.0.0-rc01

5 октября 2022 г.

androidx.compose.material3:material3:1.0.0-rc01 and androidx.compose.material3:material3-window-size-class:1.0.0-rc01 are released. Version 1.0.0-rc01 contains these commits.

API Changes

Version 1.0.0-beta03

September 21, 2022

androidx.compose.material3:material3:1.0.0-beta03 and androidx.compose.material3:material3-window-size-class:1.0.0-beta03 are released. Version 1.0.0-beta03 contains these commits.

API Changes

  • ExposedDropdownMenuDefaults now exposes a padding value for menu items. ( I34ee1 )
  • ExposedDropdownMenuBoxScope now has a Modifier.menuAnchor() modifier that should be passed to the text field for proper a11y behavior. ( I27fa3 )
  • Adding two overloaded methods for the current Slider API to allow users to pass in a thumb or track to populate the slider. ( I21c00 )

Bug Fixes

  • Updated dark theme color mapping for On Error Container to tone 90 ( Ic5612 )
  • Fix to allow setting a transparent background for small Material 3 top app bars. ( I645e2 , b/245575782 )

Version 1.0.0-beta02

7 сентября 2022 г.

androidx.compose.material3:material3:1.0.0-beta02 and androidx.compose.material3:material3-window-size-class:1.0.0-beta02 are released. Version 1.0.0-beta02 contains these commits.

API Changes

  • Default components insets introduced in m3 components in beta01 version no longer account for IME insets.
  • Material3 Scaffold component now has a contentWindowInsets parameter, allowing to specify the amount of insets to handle for the content slot. ( Icf11a , b/243713323 )
  • Deprecates the experimental Material 3 SmallTopAppBar function and introduces an equivalent TopAppBar function. Please migrate your usage to the new one. ( I74404 , b/226918634 )
  • Adds control over the top app bar fling and snap behaviors. ( I15c81 )
  • Removes startIndent from Divider, moves color to last parameter. ( If7be2 )

Bug Fixes

  • Have Dialogs identify themselves to talkback users by announcing the word Dialog when they are displayed. ( I857ef )

Version 1.0.0-beta01

24 августа 2022 г.

androidx.compose.material3:material3:1.0.0-beta01 and androidx.compose.material3:material3-window-size-class:1.0.0-beta01 are released. Version 1.0.0-beta01 contains these commits.

API Reference

To see latest theming, component and other composables available check out the Compose Material 3 API reference overview .

API Changes

  • Updated the Material 3 top app bar to snap into a fully collapsed to a fully extended state. Also, updated the TopAppBarDefaults behavior function to be Composables and provide default values for their top app bar state and animation spec. ( I642b3 )
  • Updated FAB component signatures to match surface API ( I3afaa )
  • Added insets Build-in support for Top app bars, drawers, navigation bar and rail. These components, when used separately or with Scaffold will automatically handle insets for developers. Note: This change doesn't add automatic handling of status bar icons and transparency of the status and navigation bars. Please, continue to do it manually to ensure the best edge-to-edge experience. ( I7e4e6 , b/183161866 )
  • Updated component defaults to reduce API surface for future flexibility and performance improvements. ( I31820 )
  • Reordered chip and navigation drawer sheet parameters to maintain consistency within the API ( I45d0b )
  • Removed startIndent from Divider and moved color to be the last parameter.( If7be2 )

Version 1.0.0-alpha16

10 августа 2022 г.

androidx.compose.material3:material3:1.0.0-alpha16 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha16 are released. Version 1.0.0-alpha16 contains these commits.

New Features

  • Support specifying a custom width on a navigation drawer. ( Ia7f10 )

API Changes

  • Reorder Tab and Leading icon tab parameters to maintain consistency within the API ( Ie2637 )
  • Marked BadgeDefaults as experimental. ( I98ef3 )
  • Remove deprecated navigation drawer function. ( I4f2db )
  • Reorder Slider parameters in Material 3 to maintain consistency within the API ( I0aee7 )
  • Reorder NavigationBar and NavigationRail parameters to maintain consistency within the API ( I51cda )
  • Reorder parameters in Material 3 to maintain consistency across the API. ( If4ae1 )
  • Reorder Slider parameters in Material 3 to maintain consistency within the API ( I62673 )
  • Renamed icons parameter to actions to be consistent with top app bar ( Id75be )
  • Mark Badge and BadgedBox as experimental because the anchor alignment is still influx. ( I1712e , b/236524516 )
  • Change @ExperimentalMaterial3Api annotations on icon button variants to @OptIn ( I070b5 )
  • Separated a navigation drawer's content to its own composable to support specifying a custom width on it. ( Ia7f10 )
  • Removes Divider from MenuDefaults and TabDefaults ( I4e33c )

Version 1.0.0-alpha15

27 июля 2022 г.

androidx.compose.material3:material3:1.0.0-alpha15 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha15 are released. Version 1.0.0-alpha15 contains these commits.

New Features

API Changes

  • Updates to the FilterChip and ElevatedFilterChip APIs to remove the selectedIcon slot and promote reusing the leadingIcon for displaying a selected state. ( Ie5dc2 )
  • Add scrim and outline variant color roles. ( Id6d54 )
  • Fix naming conventions for composable defaults. ( I62b27 )
  • Mark ListItemDefaults and ListItemColors as experimental. ( I1f3ec )
  • Changes to the top app bar API to better reflect the meaning of its state properties. Also, mark the top app bar API as experimental. ( Ic0ad8 )
  • Text selection colors have now been added to TextFieldColors for better discoverability. ( Iba1b8 )
  • Adding ButtonDefault.ButtonWithIconContentPadding to be used with buttons that contain an icon. ( I2bf9c )
  • Text fields have been marked as experimental to allow for more flexibility in future API changes. ( I127b5 )
  • Removed the @ExperimentalMaterial3Api annotation from the Checkbox function. ( I5eefc )
  • Removed the @ExperimentalMaterial3Api annotation from the RadioButton function. ( I17e2a )
  • Removed the @ExperimentalMaterial3Api annotation from the non-interactive Cards. ( I9bd49 )
  • Updates various component defaults objects to include colors, shapes etc. ( I96e11 )

Bug Fixes

  • Removed non-functioning trailing icons from input chip samples to avoid user confusion in the catalog app. ( I9846a )

Version 1.0.0-alpha14

29 июня 2022 г.

androidx.compose.material3:material3:1.0.0-alpha14 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha14 are released. Version 1.0.0-alpha14 contains these commits.

New Features

  • Added M3 list implementation, see the documentation for sample usage ( Id7a20 )

API Changes

  • Change parameter name from values to value in RangeSlider ( I3b79a )
  • API changes to the InputChip implementation to support a selectable state per the Material Design spec. Additional support at the FilterChip colors for selected disabled state. ( I55244 , b/235792432 )
  • Add BottomAppBar default FAB ( Ida4c8 )
  • ColorScheme.surfaceColorAtElevation was added ( Id41af )
  • Interfaces in compose libraries are now built using jdk8 default interface methods ( I5bcf1 )
  • WindowWidthSizeClass and WindowHeightSizeClass now implement Comparable, so they can be compared using operators (<, <=, >=, >) and other APIs. ( I747d0 )

Bug Fixes

  • Update badge sample to provide more meaningful content description. ( I10b9d )
  • Adds option to use the system font size to the Material 3 catalog's theme picker. ( I10605 )
  • Adds sample code for Badge and indeterminate progress indicators. ( I8fbe0 )

Version 1.0.0-alpha13

June 1, 2022

androidx.compose.material3:material3:1.0.0-alpha13 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha13 are released. Version 1.0.0-alpha13 contains these commits.

API Changes

  • Supports maintaining the top app bar position on configuration change. ( I10459 , b/216160958 )

Version 1.0.0-alpha12

18 мая 2022 г.

androidx.compose.material3:material3:1.0.0-alpha12 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha12 are released. Version 1.0.0-alpha12 contains these commits.

Bug Fixes

Version 1.0.0-alpha11

11 мая 2022 г.

androidx.compose.material3:material3:1.0.0-alpha11 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha11 are released. Version 1.0.0-alpha11 contains these commits.

New Features

  • Added RangeSlider to Material 3 ( I18e38 )
  • Adds Material3 AssistChip and InputChip support ( I0d25a )
  • Adds Material3 FilterChip and SuggestionChip support ( I9fdf3 )

API Changes

  • Renamed TextFieldDefaults.BorderStroke composable that draws a border stroke in OutlinedTextField to TextFieldDefaults.BorderBox . ( I5f295 )
  • Switch m3 visual changes ( Iab30e )
  • Allow passing colors to the standard icon buttons. ( Ia2445 )

Bug Fixes

  • Add lint check to material3/Scaffold to ensure that the inner padding is used ( I72293 , b/226951418 )

Version 1.0.0-alpha10

April 20, 2022

androidx.compose.material3:material3:1.0.0-alpha10 and androidx.compose.material3:material3-window-size-class:1.0.0-alpha10 are released. Version 1.0.0-alpha10 contains these commits.

New Features

  • material3-window-size-class is a new library that provides support for window size classes: a set of opinionated viewport breakpoints for you to design, develop, and test resizable application layouts against. You can use calculateWindowSizeClass to retrieve a window size class instance, which you can use to determine how your UI should appear, such as showing a navigation rail instead of bottom navigation for larger window sizes. For more information and sample usage see the API reference documentation for WindowSizeClass . For more information on window size class definitions, see the public guidance on supporting different screen sizes.

API Changes

  • Adds default FAB elevation for BottomAppBar , removes trailing lambda from BottomAppBar with FAB. ( I92c47 )
  • Adds Material3 FilledIconButton , FilledTonalIconButton , and OutlinedIconButton . ( Ib2bda )
  • Updates Material 3 Snackbar API to accept color values for the optional action and dismiss-action. ( Ibe4b4 )
  • Partial consumption (down OR position) has been deprecated in PointerInputChange . You can use consume() to consume the change completely. You can use isConsumed to determine whether or not someone else has previously consumed the change.
  • PointerInputChange::copy() now always makes a shallow copy. It means that copies of PointerInputChange will be consumed once one of the copies is consumed. If you want to create an unbound PointerInputChange , use constructor instead. ( Ie6be4 , b/225669674 )
  • Changes to the Cards API to receive the container and content colors via a CardColors interface, and to support a disabled state for clickable cards. ( I927df )
  • The parameter backgroundColor has been renamed containerColor in Material 3 text fields for improved consistency with other components. ( I6fbd9 )

Bug Fixes

  • Updates to the standard IconButton to align it with the Material3 spec. ( I09eab )
  • Move the top bar height of material3 Scaffold into the padding passed to content, allowing the content to render underneath the top app bar. If the PaddingValues are ignored, then the content might be obscured by the top bar. ( I83cbc , b/217776202 )

Version 1.0.0-alpha09

6 апреля 2022 г.

androidx.compose.material3:material3:1.0.0-alpha09 is released. Version 1.0.0-alpha09 contains these commits.

New Features

  • Added Material 3 Switch API ( I2c3ad )

API Changes

  • Added support for dropdown menus with text fields (aka 'exposed dropdown menus' or 'combo boxes'.) ( I1b832 )
  • Added shape parameter to MaterialTheme and Shape sub system. ( I37426 )
  • Added an expanded parameter to ExtendedFloatingActionButton to control whether the FAB is expanded or collapsed, with animations between each state. Added Extended FAB overload for extended FABs with trailing text for ExtendedFABs without icon. ( Iba7f1 )

Version 1.0.0-alpha08

23 марта 2022 г.

androidx.compose.material3:material3:1.0.0-alpha08 is released. Version 1.0.0-alpha08 contains these commits.

New Features

API Changes

  • Add default divider for menu ( I01374 )
  • Added surfaceTint color parameter to ColorScheme class. ( I2f558 )

Bug Fixes

  • Fix at the Material3 Button to read its default text style value from the MaterialTheme. ( Ie62fc )

Version 1.0.0-alpha07

9 марта 2022 г.

androidx.compose.material3:material3:1.0.0-alpha07 is released. Version 1.0.0-alpha07 contains these commits.

API Changes

  • Updates to Material 3 Surface API that brings back the overloaded functions for clickable Surfaces, as well as adding a function to support selectable and toggleable Surfaces. ( I4bf18 )
  • LazyVerticalGrid and LazyHorizontalGrid are now stable. ( I307c0 )
  • LazyVerticalGrid/LazyHorizontalGrid and all related apis were moved into .grid subpackage. Please update your imports from androidx.compose.foundation.lazy to androidx.compose.foundation.lazy.grid. ( I2d446 )
  • Reverted previous change of relying solely on a View for WindowInsetsControllerCompat , and again require a Window which is required for managing some window flags. Deprecated ViewCompat.getWindowInsetsController in favor of WindowCompat.getInsetsController to ensure that the correct Window is used (such as if the View is in a dialog). ( I660ae , b/219572936 )
  • Added a new LazyVerticalGrid API to define cross axis sizes ( I17723 )

Bug Fixes

  • Updates to the Card API to follow changes at the Surface API ( I3c8b9 )

Version 1.0.0-alpha06

23 февраля 2022 г.

androidx.compose.material3:material3:1.0.0-alpha06 is released. Version 1.0.0-alpha06 contains these commits.

API Changes

  • NavigationDrawerItem is added that represents a single destination within the drawers ( Ic396f , b/218286829 )
  • PermanentNavigationDrawer and DismissibleNavigationDrawer have been added as experimental APIs. Those are the drawers suitable well for large screen devices. ( I5f8ab , b/218286829 )
  • Adds Material 3 bottom app bar support ( Ic432a )
  • NavigationDrawer has been renamed to ModalNavigationDrawer ( I1807d , b/218286829 )
  • Added Material 3 Slider class and tokens ( I1ccee )
  • Added Tab implementation, see the documentation for sample usage ( Ie0146 )

Bug Fixes

  • Fixed an issue where the TalkBack screen reader linear navigation selected an empty top app bar title. ( Id4690 )
  • Added IconSize to FloatingActionButtonDefaults . ( Ia71cf )
  • Bug fix for hidden AlertDialog buttons when a long text is added with a LazyColumn . ( Ib2cc9 , b/216663029 )

Version 1.0.0-alpha05

9 февраля 2022 г.

androidx.compose.material3:material3:1.0.0-alpha05 is released. Version 1.0.0-alpha05 contains these commits.

New Features

Added Material Design 3 components

API Changes

  • Deprecated Surface function that takes an onClick callback. Clickable surfaces should be created with an InteractionSource and a Modifier.clickable() . ( I211c6 )
  • Added pressed and focused elevation support for FAB. ( Ibb584 )
  • Changed the Surface API to receive an InteractionSource which allows controlling its appearance in different states. ( Iafbc8 )

Bug Fixes

Version 1.0.0-alpha04

26 января 2022 г.

androidx.compose.material3:material3:1.0.0-alpha04 is released. Version 1.0.0-alpha04 contains these commits.

API Changes

  • Added NonRestartableComposable to methods that are overloads of existing methods without complex logic. This reduces compiler generated memoization checks (equals) for all parameters which are repeated in the inner function that is called. ( I90490 )
  • Added Material 3 divider. ( Ica5fc )
  • Mark the Checkbox and RadioButton with an experimental API annotation. ( Ie44bb )
  • Added support for Material 3 progress indicators. ( Iff232 , b/205023841 )

Bug Fixes

  • Update a disabled TextButton's container color to be transparent ( I6b248 , b/213339737 )

Version 1.0.0-alpha03

12 января 2022 г.

androidx.compose.material3:material3:1.0.0-alpha03 is released. Version 1.0.0-alpha03 contains these commits.

Bug Fixes

Dependency Updates

  • Now depends on Kotlin 1.6.10 .

Version 1.0.0-alpha02

1 декабря 2021 г.

androidx.compose.material3:material3:1.0.0-alpha02 is released. Version 1.0.0-alpha02 contains these commits.

New Features

  • Add support for checkbox and radiobutton.
  • Updated to be compatible with Kotlin 1.6.0

API Changes

  • Remove drawer from Material 3's scaffold. ( I04f51 )
  • Adds Material 3 Checkbox support. ( Id5542 )
  • Adds Material 3 RadioButton support. ( I20334 )

Bug Fixes

  • Reduce IconButton ripple radius from 40dp to 20dp. ( I68bbe , b/206674345 )
  • Port string fast path for Text changes from compose.material ( I30b03 )
  • Fixed but that hardcoded button to always be enabled. ( Iea832 , b/205335456 )

Version 1.0.0-alpha01

27 октября 2021 г.

androidx.compose.material3:material3:1.0.0-alpha01 is released. Version 1.0.0-alpha01 contains these commits.

New Features

Material Design 3 theming and Material You dynamic color

Material Design 3 components

For more information, check out the Material Design 3 and Material You section in the Material Theming in Compose guide.