Compose Material 3
| Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja alfa |
|---|---|---|---|---|
| 23 września 2026 r. | 1.4.0 | - | - | 1.5.0-alpha29 |
Struktura
Compose to połączenie 7 identyfikatorów grupy Maven w ramach androidx. Każda grupa zawiera ukierunkowany podzbiór funkcji, a każda z nich ma własny zestaw informacji o wersji.
W tej tabeli znajdziesz grupy i linki do poszczególnych zestawów informacji o wersji.
| Grupa | Opis |
|---|---|
| compose.animation | tworzyć animacje w aplikacjach Jetpack Compose, aby wzbogacać wrażenia użytkowników; |
| compose.compiler | Przekształcanie funkcji z adnotacją @Composable i włączanie optymalizacji za pomocą wtyczki kompilatora Kotlin. |
| compose.foundation | Twórz aplikacje w Jetpack Compose za pomocą gotowych elementów składowych i rozszerzaj podstawy, aby tworzyć własne elementy systemu projektowania. |
| compose.material | Twórz interfejsy Jetpack Compose za pomocą gotowych komponentów Material Design. Jest to punkt wejścia wyższego poziomu do Compose, który ma zapewniać komponenty zgodne z opisanymi na stronie www.material.io. |
| compose.material3 | Twórz interfejsy Jetpack Compose za pomocą komponentów Material Design 3, czyli kolejnej ewolucji Material Design. Material 3 zawiera zaktualizowane motywy i komponenty oraz funkcje personalizacji Material You, takie jak dynamiczny kolor. Jest on spójny z nowym stylem wizualnym Androida 12 i interfejsem systemu. |
| compose.runtime | Podstawowe elementy modelu programowania i zarządzania stanem w Compose oraz podstawowe środowisko wykonawcze, do którego kierowany jest wtyczka kompilatora Compose. |
| compose.ui | Podstawowe komponenty interfejsu Compose potrzebne do interakcji z urządzeniem, w tym układ, rysowanie i dane wejściowe. |
Deklarowanie zależności
Aby dodać zależność od Compose, musisz dodać do projektu repozytorium Maven Google. Więcej informacji znajdziesz w repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:
Dynamiczny
dependencies { implementation "androidx.compose.material3:material3:1.4.0" implementation "androidx.compose.material3:material3-window-size-class:1.4.0" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.5.0-alpha29" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.4.0") implementation("androidx.compose.material3:material3-window-size-class:1.4.0") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.5.0-alpha29") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Więcej informacji o zależnościach znajdziesz w artykule Dodawanie zależności kompilacji.
Prześlij opinię
Twoja opinia pomoże nam ulepszyć Jetpacka. Jeśli odkryjesz nowe problemy lub masz pomysły na ulepszenie tej biblioteki, daj nam znać. Zanim utworzysz nową kartę, zapoznaj się z dotychczasowymi problemami w tej bibliotece. Możesz oddać głos na istniejący problem, klikając przycisk gwiazdki.
Więcej informacji znajdziesz w dokumentacji narzędzia Issue Tracker.
Compose Material3 A2UI w wersji 1.0
Wersja 1.0.0-alpha01
23 września 2026 r.
Publikacja androidx.compose.material3:material3-a2ui:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zmiany.
Nowe funkcje
Renderowanie Jetpack Compose Agent-to-UI (A2UI) zapewnia implementację protokołu A2UI, dzięki czemu agenty AI mogą generować bogate, interaktywne interfejsy użytkownika, które renderują natywne komponenty Compose bez wykonywania dowolnego kodu. Ta biblioteka zawiera gotową implementację standardowej specyfikacji podstawowego katalogu A2UI, która została utworzona przy użyciu komponentów Material Design 3.
Zmiany w interfejsie API
- Zaktualizuj kolejność komponentów w
A2uiBasicCatalogV, aby dokładnie odpowiadała podstawowej specyfikacji katalogu. (I23093, b/547851648) - Dodano
ChecksPropertydo wszystkich odpowiednich interfejsów komponentów w sekcjiA2uiBasicCatalogV1i udostępniono wartość właściwości za pomocą parametru przekazywanego doTypedContentkażdego komponentu. (I9f393, b/547851648) - Dodano
A2uiBasicCatalogV1.ChoicePickeriMaterialA2uiBasicCatalogV1Defaults.choicePicker. (I875a6, b/547851648) - Dodano
A2uiBasicCatalogV1.ModaliMaterialA2uiBasicCatalogV1Defaults.modal. (Icd553, b/547851648) - Dodano
AccessibilityPropertydo wszystkich interfejsów komponentów w sekcjiA2uiBasicCatalogV1i udostępniono wartość właściwości za pomocą parametru przekazywanego doTypedContentkażdego komponentu. (I76b80, b/547851648) - Dodano
A2uiBasicCatalogV1.TextFieldiMaterialA2uiBasicCatalogV1Defaults.textField. (Ifdaec, b/547851648) - Dodano
A2uiBasicCatalogV1.VideoiMaterialA2uiBasicCatalogV1Defaults.video. (I8595c, b/547851648) - Dodano
A2uiBasicCatalogV1.AudioPlayeriMaterialA2uiBasicCatalogV1Defaults.audioPlayer. (Ida509, b/547851648) - Dodano
A2uiBasicCatalogV1.SlideriMaterialA2uiBasicCatalogV1Defaults.slider. (Ieb72d, b/547851648) - Dodano
A2uiBasicCatalogV1.CheckBoxiMaterialA2uiBasicCatalogV1Defaults.checkBox. (I84525, b/547851648) - Dodano
A2uiBasicCatalogV1.DivideriMaterialA2uiBasicCatalogV1Defaults.divider. (I91208, b/547851648) - Dodano
A2uiBasicCatalogV1.TabsiMaterialA2uiBasicCatalogV1Defaults.tabs. (Ic33d3, b/547851648) - Dodano
A2uiBasicCatalogV1.ListiMaterialA2uiBasicCatalogV1Defaults.list. (I89f73, b/547851648) - Dodano
A2uiBasicCatalogV1.IconiMaterialA2uiBasicCatalogV1Defaults.icon. (I65524, b/547851648) - Dodano
A2uiBasicCatalogV1.ImageiMaterialA2uiBasicCatalogV1Defaults.image. (I673b3, b/547851648) - Dodano
A2uiBasicCatalogV1.ButtoniMaterialA2uiBasicCatalogV1Defaults.button. (I5215f, b/547851648) - Dodano
A2uiBasicCatalogV1.Row/A2uiBasicCatalogV1.ColumniMaterialA2uiBasicCatalogV1Defaults.row/MaterialA2uiBasicCatalogV1Defaults.column. (Ibcbe7, b/547851648) - Dodaliśmy element
MaterialImageComponent, aby obsługiwać renderowanie obrazów w katalogu A2UI. Test:MaterialImageComponentTestdo androidx-main - Dodaliśmy element
MaterialImageComponent, aby obsługiwać renderowanie obrazów w katalogu A2UI. (I868fe) - Dodano
A2uiBasicCatalogV1.CardiMaterialA2uiBasicCatalogV1Defaults.card. (Icf604, b/547851648) - Wycofano bezstanowe przeciążenia
SlideriRangeSliderna rzecz ich stanowych wersji. Zmieniliśmy nazwy interfejsówactiveRangeStartiactiveRangeEndwRangeSliderStatenastartValueiendValue, wycofując starsze, niepromowane i eksperymentalne interfejsy API suwaka zDeprecationLevel.HIDDEN. (If8995) - Dodano funkcję kompozycyjną
A2uiSurfaceiA2uiSurfaceDefaultsdo renderowania platform A2UI. (I6e276, b/544713825) - Dodano
A2uiTestSurfacecomposable do montowania i testowania powierzchni i komponentów A2UI w izolacji. (I03c8a, b/527415570)
Poprawki błędów
compileSdkbibliotek Compose zaktualizowanych do wersji 37.1. Wymaga to przechodniego zaktualizowaniacompileSdkwe wszystkich aplikacjach i bibliotekach korzystających z Compose. (I05b0f)
Compose Material3 Common w wersji 1.0
Wersja 1.0.0-alpha01
17 kwietnia 2024 r.
androidx.compose.material3:material3-common:1.0.0-alpha01, androidx.compose.material3:material3-common-android:1.0.0-alpha01 i androidx.compose.material3:material3-common-desktop:1.0.0-alpha01 są udostępnione. Wersja 1.0.0-alpha01 zawiera te zmiany.
Nowe funkcje
Komponenty bez motywu, których można używać do tworzenia komponentów Material Design:
- Paleta tonalna
- Ikona
- Rozmiar docelowego elementu dotykowego
Compose Material3 Adaptive Navigation Suite w wersji 1.0
.Wersja 1.0.0-alpha07
1 maja 2024 r.
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07 i androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07 są udostępnione. Wersja 1.0.0-alpha07 zawiera te zmiany.
Zmiany w interfejsie API
- Udostępnienie interfejsów API pakietu nawigacyjnego jako funkcji nieeksperymentalnych (If62af)
Poprawki błędów
- Domyślne korzystanie z wcięć w treści (50266df)
Wersja 1.0.0-alpha06
17 kwietnia 2024 r.
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06 i androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06 są udostępnione. Wersja 1.0.0-alpha06 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaj
containerColoricontentColordoNavigationSuiteScaffoldDefaults. (I64e3a, b/331993720) - Dodaliśmy funkcję
itemColorsdo znacznikaNavigationSuiteDefaults. (Idf719, b/328480012) - Spraw, aby
NavigationSuiteScopebyło zapieczętowane. (Iefa57)
Wersja 1.0.0-alpha05
6 marca 2024 roku
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05 i androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05 są udostępnione. Wersja 1.0.0-alpha05 zawiera te zmiany.
Zmiany w interfejsie API
- Ustaw konstruktor
NavigationSuiteItemColorsjako publiczny. (Ica83a, b/324886877)
Wersja 1.0.0-alpha04
21 lutego 2024 r.
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04 i androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04 są udostępnione. Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Aktualizacje zależności
- Zaktualizuj zależności adaptacyjne Material3 do nowych ścieżek modułów. (Ibc421)
- Przejdź na klasy rozmiarów okien w Menedżerze okien. (I3794d)
Wersja 1.0.0-alpha03
7 lutego 2024 r.
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03 i androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03 są udostępnione. Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zaktualizuj nazwę pakietu z navigation-suite na navigationsuite (I7eff7).
- Komponenty Material3, które w swoim interfejsie API udostępniają
MutableInteractionSource, zostały zaktualizowane tak, aby udostępniaćMutableInteractionSourcez możliwością wartości null, która domyślnie ma wartość null. Nie ma tu żadnych zmian semantycznych: przekazanie wartości null oznacza, że nie chcesz podnosićMutableInteractionSource, a w razie potrzeby zostanie on utworzony wewnątrz komponentu. Ustawienie wartości null pozwala niektórym komponentom nigdy nie przydzielaćMutableInteractionSource, a innym tworzyć instancję tylko wtedy, gdy jest to potrzebne, co zwiększa wydajność tych komponentów. Jeśli nie używasz elementuMutableInteractionSourceprzekazywanego do tych komponentów, zalecamy przekazywanie zamiast niego wartości null. Zalecamy też wprowadzenie podobnych zmian we własnych komponentach. (I41abb, b/298048146)
Wersja 1.0.0-alpha02
13 grudnia 2023 r.
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02 i androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02 są udostępnione. Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj opcję „Brak”
NavigationSuiteType(If8cb1, b/313688598)
Poprawki błędów
- Naprawiono komponent nawigacji wypełniający cały ekran, gdy powierzchnia główna ma wartość
modifier.fillMaxSize. (c9cf250, b/312664933)
Wersja 1.0.0-alpha01
15 listopada 2023 r.
Publikacja androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
Compose Material3 Adaptive w wersji 1.0
Wersja 1.0.0-alpha06
7 lutego 2024 r.
androidx.compose.material3:material3-adaptive:1.0.0-alpha06, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06 i androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06 są udostępnione. Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaliśmy dodatkowe opcje działania w przypadku
ThreePaneScaffoldNavigatornawigacji wstecz. (I858aa) - Dodaliśmy do historii nawigacji opcjonalną treść miejsca docelowego. (Ibd7e6)
Wersja 1.0.0-alpha05
24 stycznia 2024 r.
androidx.compose.material3:material3-adaptive:1.0.0-alpha05, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05 i androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05 są udostępnione. Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Nowe funkcje
- Obsługa historii w nawigacji szkieletowej i obliczaniu wartości (I71d46)
Wersja 1.0.0-alpha04
10 stycznia 2024 r.
androidx.compose.material3:material3-adaptive:1.0.0-alpha04, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04 i androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04 są udostępnione. Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano obsługę od krawędzi do krawędzi w strukturach paneli (I1b462)
Zmiany w interfejsie API
- Przeniesiono właściwości granic zawiasu w Postawie do listy informacji o zawiasie (I24f90)
Poprawki błędów
- Rozwiąż problem:
AnimatedPanenie jest ponownie komponowany (c3f573d)
Wersja 1.0.0-alpha03
13 grudnia 2023 r.
androidx.compose.material3:material3-adaptive:1.0.0-alpha03, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03 i androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03 są udostępnione. Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zmień role szkieletu na aliasy
ThreePaneScaffoldRole. (I65bd1) - Tworzenie klasy bazowej dla ról szkieletowych (I4784d)
- Usuń niepotrzebny parametr z treści
AnimatedPane(Ibc73b) - Zmienia nazwę
collectWindowSizeAsStatei zwraca zamiast tego wartości surowe (I480f4).
Wersja 1.0.0-alpha02
29 listopada 2023 r.
androidx.compose.material3:material3-adaptive:1.0.0-alpha02, androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02 i androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02 są udostępnione. Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Oddzielenie interfejsów API nawigacji od interfejsów API adaptacyjnych komponentów. (Ic4045)
- Usuń zajęcia
GutterSize. (I785b3)
Poprawki błędów
- Okienka nie są przełączane, gdy nie jest używana funkcja
AnimatedPane(d88f181)
Wersja 1.0.0-alpha01
15 listopada 2023 r.
Publikacja androidx.compose.material3:material3-adaptive:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
Interfejsy API warunków adaptacyjnych Material3:
Interfejsy API dyrektywy rusztowania panelu adaptacyjnego Material3:
Interfejsy API komponentu adaptacyjnego Material3:
- Podstawowe interfejsy API panelu
Compose Material3 w wersji 1.5
Wersja 1.5.0-alpha29
23 września 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha29 Wersja 1.5.0-alpha29 zawiera te zmiany.
Zmiany w interfejsie API
- Zmiana powodująca niezgodność: parametr
onValueChangejest teraz wymagany w funkcjachSlideriRangeSlider, a jego kolejność na liście parametrów uległa zmianie.
Poprawki błędów
DatePickerjest teraz rozwiązywany w 1 klatce przez obliczanie dostępności nawigacji po miesiącach bezpośrednio na podstawie wyświetlanego indeksu miesiąca. (I08db7)TimeInputkorzysta teraz wewnętrznie z nowych interfejsów API pól tekstowychTextFieldState. (Ia7492, b/353692863)DateInputkorzysta teraz wewnętrznie z nowych interfejsów API pól tekstowychTextFieldState. (I5ad3d, b/353692863)SlideriRangeSliderobsługują terazonValueChangeionValueChangeFinishedbezpośrednio w swoich implementacjach, zamiast przekazywać je doSliderStateiRangeSliderState. (I959ac)
Wersja 1.5.0-alpha28
9 września 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha28 Wersja 1.5.0-alpha28 zawiera te zmiany.
Zmiany w interfejsie API
- Zmieniliśmy nazwę i uprościliśmy interfejs API karuzeli z wieloma aspektami, aby utworzyć globalny modyfikator
carouselParallaxScrollEffect(I46b17). - Usunięto wycofane przeciążenia funkcji
ToggleButton. Dodaliśmy funkcje narzędziowe (contentPaddingFor,shapesFor) i stałe wartości domyślne (m.in.size) doToggleButtonDefaults,ElevatedToggleButtonDefaults,FilledTonalToggleButtonDefaultsiOutlinedToggleButtonDefaults. (I998cf) Wycofano bezstanowe przeciążenia
SlideriRangeSliderna rzecz ich stanowych wersji. Zmieniliśmy nazwy interfejsówactiveRangeStartiactiveRangeEndwRangeSliderStatenastartValueiendValue, wycofując starsze, niepromowane i eksperymentalne interfejsy API suwaka zDeprecationLevel.HIDDEN. (If8995)Aby przenieść
Slider, z:kotlin var value by remember { mutableFloatStateOf(0.5f) } Slider(value = value, onValueChange = { value = it })do:kotlin val state = remember { SliderState(value = 0.5f) } Slider(state = state)Aby przenieść
RangeSlider, z:kotlin var range by remember { mutableStateOf(0.2f..0.8f) } RangeSlider(value = range, onValueChange = { range = it })do:kotlin val state = remember { RangeSliderState(startValue = 0.2f, endValue = 0.8f) } RangeSlider(state = state)Dodanie do
ScrollFieldparametrów logicznych włączonych i wyłączonych kolorów (Iab612)
Poprawki błędów
- Dodaj obsługę pierścienia ostrości dla
ScrollField. (If21d6) - Wprowadzaj zmiany w opiniach dotyczących projektu w przypadku ekspresyjnych
TimePickerw trybie wybierania numeru. (I8795e) - Dostosuj dopełnienie w trybie przewijania i wpisywania w przypadku ekspresyjnych
TimePicker. (Iddb33) - Aktualizuje obliczenia wysokości/układu przełącznika na podstawie liczby elementów w przypadku ekspresywnych
TimePicker.ktw trybie bez kontenera. (I30700) - Rozwiązaliśmy problem, który powodował, że elementy sterujące AM/PM były obcięte w
TimePicker, gdy włączono duży tekst lub skalowanie czcionki. (Iaca60) - Zaktualizowano komponenty
SecureTextFieldiOutlinedSecureTextField(a także wycofane przeciążeniaBasicSecureTextField), aby jako domyślny tryb zaciemniania używaćTextObfuscationMode.SystemzamiastTextObfuscationMode.RevealLastTyped. (I76c7e)
Wersja 1.5.0-alpha27
26 sierpnia 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha27 Wersja 1.5.0-alpha27 zawiera te zmiany.
Zmiany w interfejsie API
- Zmieniono nazwy
RichTimePickerDialognaVibrantTimePickerDialog,richColorsnavibrantColorswTimePickerDefaultsiTimeInputDefaults,richContainerColoririchShapenavibrantContainerColorivibrantShapewTimePickerDialogDefaultsoraz niezaznaczonych właściwości kolorów naperiodSelectorContainerColor,periodSelectorContentColor,timeSelectorContainerColor,timeSelectorContentColoriclockDialContentColor. (Iea5aa) - Zaktualizuj interfejs Rich
TimePickerAPI, aby umożliwić wyświetlanie nieograniczonego okna przewijania lub wprowadzania danych. (I2b3b6) - Wprowadzono symbole
SelectableDropdownMenuItemiCheckableDropdownMenuItemdla elementów menu ekspresyjnego, które można wybrać i zaznaczyć. ZaktualizowanoDropdownMenuItemz kształtem, aby używaćMenuItemColors, i dodanoMenuDefaults.itemVibrantColors(), aby obsługiwać żyweMenuItemColors. (I160ca) - Dodano opinie dotyczące wyrażeń
ToggleButton,ElevatedToggleButton,FilledTonalToggleButtoniOutlinedToggleButtonz przeciążeniami z miejscami naButtonSizeiicon. Uproszczono nazwy metodToggleButtonDefaults,ElevatedToggleButtonDefaults,FilledTonalToggleButtonDefaultsiOutlinedToggleButtonDefaultsdocolors()iborder(). (Iab484) - Usunięto z funkcji
TopAppBarDefaultsprzestarzałe przeciążenia funkcjipinnedScrollBehaviorienterAlwaysScrollBehavior. Zamiast tego użyj przeciążeń, które przyjmują wartośćScrollableState. (Idef9d) - Usunięto wycofany eksperymentalny interfejs API
LocalMotionSchemezMaterialTheme. Zamiast niej używaj zasadyMaterialTheme.motionScheme. (I4b61d) - Dodano
TimeInputDefaultsiTimeInputColorsdlaTimeInput. (I7534e)
Poprawki błędów
- Rozwiązaliśmy problem, który powodował, że
ScrollDisplayModeTogglew trybie przewijania ogłaszał „Przełącz na tryb przewijania”. (I2d588) - Rozwiązaliśmy problem, który powodował, że element
DropdownMenuItembez ikony początkowej nie wyrównywał ikon końcowych do końca elementu menu. (Ia24ff, b/542873381)
Wersja 1.5.0-alpha26
12 sierpnia 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha26 Wersja 1.5.0-alpha26 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano atrybuty
ElevatedToggleButtonDefaults,FilledTonalToggleButtonDefaultsiOutlinedToggleButtonDefaultsoraz usunięto właściwości kształtu niezwiązane z semantyką wToggleButtonDefaults. (Ia0a85) - Rozwiązano problem z kontrastem ułatwień dostępu w przypadku etykiety poziomego znaku
NavigationItemw motywach o wysokim kontraście. Kolor etykiety jest teraz określany za pomocąselectedTextColorTopIconPosition(kolor etykiety elementu pionowego, który nie uległ zmianie) iselectedTextColorStartIconPosition(kolor etykiety elementu poziomego, który jest teraz ustawiony tak, aby pasował doselectedIconColor). Aby cofnąć tę zmianę, przekażShortNavigationBarItemDefaults/WideNavigationRailItemDefaults.colors().copy(selectedTextColorStartIconPosition=MaterialTheme.colorScheme.secondary) (I85855, b/490910896) - Zmienne przesunięcia przewijania zostały usunięte z
SearchBarScrollBehaviori są teraz dostępne w nowej klasieSearchBarScrollState. (Ib24e4) - Przeniesiono do wersji stabilnej promowaną funkcję
BottomAppBari powiązane z nią metody. Te interfejsy API nie wymagają już zgody na @ExperimentalMaterial3Api. (I42c61) - Zapisany aktywny tryb wyboru w
TimePickerStatew przypadku przywracania stanu i dodany parametrinitialSelectiondo funkcji fabrycznejTimePickerState. (Iad905) ExposedDropdownMenujest teraz funkcją rozszerzenia wExposedDropdownMenuBoxScope, a nie elementem członkowskim. Może być konieczne zaktualizowanie kodu za pomocą nowego importu. (Ie8a65, b/356452026)
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że częściowa personalizacja kolorów w
MenuDefaults.itemColorszastępowała niepodane kolory koloremColor.Unspecified. (Iea847) - Poprawiono
TalkBackpowiadomienia, aby odczytywać sformatowane wartości czasu w przewijanymTimePicker. (Ice981) - Naprawiono błąd w
ExposedDropdownMenu, który występował, gdy wysokość ekranu była mniejsza niż wysokość menu. (I6adf1) - Poprawiono nieprawidłowy odstęp od treści w przypadku szerokiej kolumny nawigacji. Dopełnienie na dole wynosi teraz 0. Aby cofnąć tę aktualizację, możesz ustawić
contentPadding = PaddingValues(0.dp,44.dp,0.dp,44.dp). (I572bb) - Zaktualizowano publiczny interfejs API, aby dostosować go do ostatnich opinii na temat interfejsu API. (I71aff, b/532657001)
Wkład zewnętrzny
- Rozwiązaliśmy problem polegający na tym, że element
SliderLabelMaterial3 nie wyświetlał się podczas przeciągania suwaka za pomocą myszy. (I97a6d, b/533483487)
Wersja 1.5.0-alpha25
29 lipca 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha25 Wersja 1.5.0-alpha25 zawiera te zmiany.
Zmiany w interfejsie API
- Zmieniono nazwę parametru
trailingIconnatrailingContentw kształcie, zaznaczono i wybrano przeciążeniaDropdownMenuItemprzy zachowaniu zgodności binarnej. (I2ecbd) - Dodano nowe właściwości koloru zaznaczenia i kontenera do
MenuItemColors, a w konstruktorze nowych kolorów zmieniono nazwętrailingIconnatrailingContentprzy zachowaniu zgodności binarnej. (I20b92) - Ulepszone ułatwienia dostępu
ScrollFieldi obsługa nawigacji za pomocą klawiatury. (If7477) - Usunięto interfejsy API
ComponentOverride(I3784b) - Wycofano 2-parametrowe funkcje
SliderState.SaveriRangeSliderState.Saverna rzecz nowych przeciążeń, które wykonują kroki.SliderStatenie implementuje już publicznieDraggableState. (I7c91b) - Przeniesienie interfejsu
BasicAlertDialogAPI z wersji eksperymentalnej (If157c) - Zmieniono
ButtonGroupScopewButtonGroupnasealed interface. Podzielono funkcjęModifier.animateWidthna 2 przeciążenia, aby umożliwić pomijanie parametrucompressionLimiti dynamiczne określanie kierunku układu. Zmieniono też typ parametrucompressionLimitzPaddingValuesnaDp. (I8ef39) - Zmieniono nazwę
TonalToggleButtonnaFilledTonalToggleButton. Dodano animacje płynnego obramowania doOutlinedToggleButton. WycofanoToggleButtonDefaults.shapesna rzeczshapesFor. (Icb433) - Promuj wersje
LinearTrackStopIndicatorSize,LinearIndicatorTrackGapSizeiCircularIndicatorTrackGapSizedo wersji stabilnej. (I794d0) - Wycofany interfejs API
SplitButtonLayout, zamiast niego użyj interfejsuSplitButton(Ic9840)
Poprawki błędów
- Zaktualizuj przełączanie fokusu w przypadku błędu w polu
TimePickerTextFieldwTimePicker.kt. (Ieceec) - Poprawiono kształt elementu listy segmentowanej, gdy lista zawiera tylko 1 element. (I2ea1c, b/479721696)
- Zaktualizuj dokumentację KDocs dla
TimePickerDialog.kt. (Ia5fb8)
Wersja 1.5.0-alpha24
15 lipca 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha24 Wersja 1.5.0-alpha24 zawiera te zmiany.
Funkcje
- Dodano nowy wariant przewijania dla ekspresywnego
TimePicker(I46f6b) - Dodano nową bibliotekę
material3-ripple(I1b3a3), która obsługuje rysowanie efektów falowania wizualnie wskazujących fokus za pomocą pierścieni fokusu zamiast warstwy krycia. Ta nowa biblioteka zastępujematerial-ripple, a jej użycie jest podobne:- Jeśli używasz samego
material3, skorzystaj z wbudowanej konfiguracji efektumaterial3, która jest zintegrowana z motywem i wewnętrznie używamaterial3-ripplejako szczegółu implementacji. - Jeśli używasz
material-ripplebezpośrednio lub chcesz obsługiwać pierścienie ostrości bez zależności odmaterial3, użyj bezpośrednio nowej bibliotekimaterial3-ripple.
- Jeśli używasz samego
Zmiany w interfejsie API
- Zmiana parametru
ScrollIndicatorStatepaska przewijania na wartość niepustą. (Iab7c7, b/529445739) - Ponownie dodaj adnotację
@ExperimentalMaterial3Apido interfejsów APIAppBarWithSearch. (I0b61a) - Promowane interfejsy API
SearchBarStatei interfejsy API oparte na slotachSearchBarzostały przeniesione do wersji stabilnej. Wycofane starsze interfejsy APISearchBarkorzystające z rozszerzonego/onExpandedChange. (Ia3793)
Poprawki błędów
- Rozwiązaliśmy problem z opóźnieniem renderowania, który powodował, że znaki wstawiania
RichTooltipiPlainTooltippojawiały się z opóźnieniem podczas animacji wejścia. (I874b6, b/395753083) - Zaktualizuj wartości marginesów w przypadku wariantu
TimePickerInput/Scroll. (I83f00) SplitButtonnajpierw zmierz przycisk końcowy, aby zagwarantować miejsce; (Id3a1e)- Rozwiązaliśmy problem z ułatwieniami dostępu, który uniemożliwiał użytkownikom korzystającym z funkcji Switch Access aktywowanie edytowalnych pól tekstowych wewnątrz elementu
ExposedDropdownMenuBox. (I0ea17) - Poprawiono kolejność odczytywania przez funkcję TalkBack w przypadku symboli
TextFieldiOutlinedTextField, gdy występuje przedrostek lub przyrostek. (Ie79e7) - Aktualizacja marginesów
TimePickeri umiejscowienia dwukropka (I6bfeb) - Popraw kolejność zaznaczania w TalkBacku w przypadku elementu
ScrollField. (I4ca9f, b/526870141) - Zaktualizowano zależności Compose w Material 3 do wersji 1.12.0-beta01. (Ie9417)
- Etykietki są teraz przycinane do granic okna, aby nie były ucinane na małych ekranach lub przy dużych konfiguracjach czcionek. (I421ff)
- Zaktualizowano
ScrollField, aby zawierał bardziej wyraziste przejścia między liczbami, oraz dostosowano rozmiar i typografię (Ic1614).
Wersja 1.5.0-alpha23
1 lipca 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha23 Wersja 1.5.0-alpha23 zawiera te zmiany.
Funkcje - komponent ekspresywnego selektora czasu (Iaa45f) - Dodano nowe nieinteraktywne warianty standardowej pozycji na liście i pozycji na liście z segmentami, które są zgodne ze specyfikacjami Material Expressive. Wersja nieekspresywna została wycofana. (Ide4de, b/491994186)
Zmiana zachowania
- Rozwiązaliśmy problem polegający na tym, że minimalna wysokość elementów listy rozszerzonej nie zmieniała się w zależności od liczby wierszy treści. Aby ułatwić migrację, wprowadziliśmy flagę funkcji isExpressiveListItemHeightBasedOnTextLinesFixEnabled. (Ibbb91, b/484693233)
Zmiany w interfejsie API
- Interfejsy API elementów listy z bogatymi funkcjami nie są już eksperymentalne. (I2836a)
- Usuwanie interfejsów API
ComponentOverride(I820c4) - Usuń nieużywany parametr przesunięcia z funkcji
DropdownMenuPopup. Dodano domyślne właściwości menu do domyślnych ustawień menu. Zmieniono nazwę etykiety grup zMenuDefaults.LabelnaMenuDefaults.DropdownMenuGroupLabel. DodanodisabledContainerColordoMenuDefaults.selectableItemColorsiMenuDefaults.selectableItemVibrantColors. Dodano parametrModifierdo funkcji kompozycyjnych wMenuDefaults, które zwracają układ. (I3d2b1) - Dodano publiczny getter
flingAnimationSpecdoTopAppBarDefaults, aby udostępnić domyślną specyfikację animacji szybkiego przesunięcia. (Ic1daa) - Wersje
TopAppBar,MediumFlexibleTopAppBar,LargeTopAppBar,LargeFlexibleTopAppBar,TwoRowsTopAppBar,FlexibleBottomAppBar,FlexibleContentPadding,FlexibleBottomAppBarHeight,FlexibleHorizontalArrangement,FlexibleFixedHorizontalArrangementnie są eksperymentalne. Te interfejsy API i zmienne nie wymagają już zgody użytkownika na @ExperimentalMaterial3ExpressiveApi. (Ia4af6) - Przekształć eksperymenty
ExpandedDockedSearchBarWithGapiExpandedFullScreenContainedSearchBarw kampanie nieeksperymentalne (Ie152d)
Poprawki błędów
- Czyszczenie informacji o interfejsie API (Ia8066)
- Popraw kolejność nawigacji za pomocą klawiatury w
Scaffold. (I77194, b/462577176) - Usuń wymaganie dotyczące
compileSdk 37(If78b4) - Dodano obsługę ułatwień dostępu w komponencie ScrollField. W szczególności ScrollField obsługuje teraz możliwość zaznaczania i animuje kliknięcie zaznaczonego elementu z komunikatami o zaznaczeniu/odznaczeniu w Talkbacku. (I7bdb7)
- Rozwiązanie problemu polegającego na tym, że w przypadku, gdy treść struktury pakietu nawigacyjnego ma ustawione dopełnienie IME, występuje dodatkowe dopełnienie u dołu. (I86d9d, b/389467593)
Wersja 1.5.0-alpha22
17 czerwca 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha22 Wersja 1.5.0-alpha22 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano publiczny getter
snapAnimationSpecdoTopAppBarDefaults, aby udostępnić domyślną specyfikację animacji przyciągania. (Ic7b37, b/519193808) - Dodanie kształtów do wewnętrznych i prywatnych metod interfejsu TimePicker.kt API (I9d09e, b/441573791)
- Obsługa kształtów w
AnimatedPane(Ie7c60, b/470517507) - Poprawienie kontrastu przycisków przełączania AM/PM w selektorze czasu (Ifc0b7, b/339079853)
- Przeniesienie interfejsów API Expressive
FloatingToolbardo wersji nieeksperymentalnej. (I5a4d8, b/497887216) - Usuń wycofane pole
transformOriginStatez kontaDropdownMenuPopupPositionProvider. (I0d5b0, b/505481611) - Zaktualizowano funkcje
pinnedScrollBehaviorienterAlwaysScrollBehavior, aby akceptowały parametrScrollableState, który automatycznie obsługuje przypadki brzegowe, takie jak odwrócone układy i wstępnie przewinięte treści. Starsze przeciążenia zostały wycofane. Przenieś użycia funkcjiisScrollingContentAtStartdo nowych przeciążeń z parametremscrollableState. PromowanieTopAppBarScrollBehaviori powiązanych interfejsów API do wersji stabilnej. (Ib83cf, b/519193808) - Zaktualizowano funkcje
pinnedScrollBehaviorienterAlwaysScrollBehavior, aby akceptowały parametrScrollableState, który automatycznie obsługuje przypadki brzegowe, takie jak odwrócone układy i wstępnie przewinięte treści. PromowanieTopAppBarScrollBehaviori powiązanych interfejsów API do wersji stabilnej. (Ieda4b, b/405129274) - Zaktualizuj
DropdownMenuPositionProvider, aby usunąćMutableStateztransformOrigin. ZwińMenuAnchorPositionz zamkniętego interfejsu do jednej klasy. WprowadzaMenuAnchorPositionScope, który zawiera informacje, których można użyć do utworzenia niestandardowych kandydatów na osiach X i Y. (I21f2b, b/505481611) - Promowanie interfejsów API
ButtonGroupdo wersji stabilnej. Usunięcie wycofanych eksperymentalnych interfejsów API wprowadzonych w wersji 1.5.0-alpha. (Idaf96, b/497876828)
Poprawki błędów
- Naprawiliśmy błąd, który powodował, że animacja kompresji
ButtonGroupnie obsługiwała prawidłowo asymetrycznych odstępów przycisków ani kierunków układu od prawej do lewej i mogła powodować awarięIllegalArgumentExceptionprzy określonych gęstościach wyświetlania. (I35074, b/516743181) - Poprawiono mechanizm obsługi błędów w trybie wpisywania tekstu w selektorze czasu (If4541, b/405054265)
Wersja 1.5.0-alpha21
3 czerwca 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha21 Wersja 1.5.0-alpha21 zawiera te zmiany.
Zmiany w interfejsie API
- Dodawanie kształtów do interfejsu komponentu wyboru czasu (I57f28, b/441573791)
- Dodano
compressionLimitdoanimateWidth, które określa dopełnienie kompresowanego elementu, co wskazuje maksymalną kompresję, jaką można zastosować w przypadku tego elementu. Wycofanie interfejsu APIanimateWidthbez tego parametrucompressionLimit. (I4a725, b/418822334, b/403281052) BottomSheetiModalBottomSheetPartiallyExpandednie są już usuwane automatycznie na podstawie warunków układu. Użytkownicy mogą teraz wyraźnie kontrolować ten element za pomocąrememberBottomSheetState. Starsze działanie tych komponentów można włączyć, wyłączając flagę funkcjiisBottomSheetPartiallyExpandedDeterministicEnabledlub korzystając z wycofanych funkcjirememberModalBottomSheetStateirememberStandardBottomSheetState. Flaga funkcjiisAnchoredDraggableComponentsAnchorRecoveryEnabledzostała usunięta. (Ia4167, b/478210200, b/512076811)- Ponowne wprowadzenie eksperymentalnego tagu dla
PullToRefreshDefaults.loadingIndicatorColoriPullToRefreshDefaults.loadingIndicatorContainerColor(Ib9d15, b/513225663) - Zaktualizowano parametry
SelectableChipColors, aby były publiczne (I559e0, b/512576750) - Dodaj parametr
horizontalArrangementdoMenuItems(Ie8088, b/497891817) - Ponownie oznacz funkcję
contentPaddingForprzycisku jako eksperymentalną. (I07d3e, b/500355872) - Wprowadziliśmy
roundedShapeitonalColors()wTextFieldDefaultsiOutlinedTextFieldDefaults, które są konfiguracjami wizualnymi stylu ekspresyjnego. (Id9185, b/448728288) - Wycofaliśmy typ
TextFieldLabelPosition.Attachedi wprowadziliśmy podtypyInsideiCutout, które umożliwiają większe dostosowanie, np. umieszczenieOutlinedTextFieldz etykietą wewnętrzną. Zostały też wycofaneOutlinedTextFieldDefaults.contentPadding(), a wprowadzonoOutlinedTextFieldDefaults.contentPaddingWithLabel()iOutlinedTextFieldDefaults.contentPaddingWithoutLabel(), aby obsługiwać obie pozycje etykiet. (I40f62, b/448728288)
Poprawki błędów
- Rozwiązaliśmy problem z ułatwieniami dostępu w
TimePicker, który powodował utratę zaznaczenia klawiatury podczas przełączania z godzin na minuty na tarczy. Ulepszone ułatwienia dostępu w zakresie zaznaczenia klawiatury. (I7dd81, b/498361169)
Wkład zewnętrzny
- Ulepszona fizyka gestu zamykania arkusza u dołu, która zapewnia płynniejsze działanie. (I21df5)
Wersja 1.5.0-alpha20
19 maja 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha20 Wersja 1.5.0-alpha20 zawiera te zmiany.
Zmiany w interfejsie API
- Usunięto funkcję
shouldUsePrecisionPointerComponentSizing(I882c3, b/498698039) - Rozwiązaliśmy problem, który powodował, że po odwróceniu etykietki z powodu krawędzi ekranu kursor etykietki pojawiał się po niewłaściwej stronie. (Idc314, b/479224210)
- Wprowadziliśmy
rememberBottomSheetStatejako ujednolicony interfejs API stanuBottomSheet. Wycofano interfejsy APIrememberModalBottomSheetStateirememberStandardBottomSheetStatena rzecz nowego ujednoliconego interfejsu API. (I2724e, b/500005697) - Usunięto wycofane eksperymentalne interfejsy API
WideNavigationRail(Iaadd6, b/497891040) - Przenieś interfejsy API
SplitButtondo wersji nieeksperymentalnej. (I4d395, b/497876691) - Wycofaj interfejsy API
DropdownMenuItemz zaznaczonymi i wybranymi parametrami, które mająsupportingTextjako końcową lambdę. Przeniesiono parametrsupportingText, aby znajdował się bezpośrednio po parametrzetrailingIcon. (Icaf79, b/503047115)
Poprawki błędów
- Zaktualizuj moduł obsługi przewidywanego przejścia wstecz w panelu nawigacji, aby umożliwić powrót podczas otwierania panelu, a nie tylko po jego pełnym otwarciu (I714ae, b/418556231)
Wersja 1.5.0-alpha19
6 maja 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha19 Wersja 1.5.0-alpha19 zawiera te zmiany.
Nowe funkcje
- Typografia obsługuje teraz domyślną rodzinę czcionek, która zostanie scalona z podanymi stylami tekstu, jeśli nie mają one jawnie ustawionej rodziny czcionek. (I2e305, b/500356360)
Zmiany w interfejsie API
- Usuwa
supportingTextjako końcową funkcję lambda dlaDropdownMenuItem. Zamiast tego przenieś go bezpośrednio po znakutrailingIcon. (I5694b, b/503047115) - Promuj
ToggleButtonsdo wersji stabilnej. (I8a771, b/497876827) - Promuj interfejsy API menu z rozbudowanymi funkcjami. Usuń
DropdownMenuItem, ponieważ jest to wycofany eksperymentalny interfejs API, który był częścią wersji 1.5.0-alpha. (I1d556, b/497885285) - Przeniesienie interfejsów API FAB i FAB Menu z fazy eksperymentalnej do fazy ekspresywnej (Ie509c, b/497892373)
- Promowanie interfejsów API przycisków ekspresyjnych. Usunięto wycofany eksperymentalny interfejs API
SmallButtonContentPadding, który został wprowadzony w wersji 1.5.0-alpha. (Iee31e, b/497873833) - Przywrócenie eksperymentalnego stanu interfejsów API zamówień na platformie (I01492, b/489424245)
- Dodaj kolejne przeciążenie konstruktora Typografia (I8b3b3, b/500356360)
- Przywróć promocje
MaterialShapesiLoadingIndicatordo wersji stabilnej. (I30e69, b/497876695, b/497877850)
Poprawki błędów
- Naprawienie błędu w implementacji suwaka, który powodował, że do ścieżki i suwaka stosowano dopełnienie z wewnętrznych pierścieni zaznaczenia, gdy komponent nie był zaznaczony. (I16315, b/506158497)
- Rozwiązaliśmy problem w
ModalBottomSheet, który powodował, żeimePaddingbyło stosowane bezwarunkowo, co uniemożliwiało kontrolowanie działania edytora IME za pomocącontentWindowInsets. (Ied801, b/289824811) - [FAB] Naprawiono błąd powodujący awarię w
Modifier.animateFloatingActionButton, który był spowodowany zaokrąglaniem wartości int i float gęstości (I2d25f, b/489769219) - Naprawiono problem z zablokowaniem fokusu w selektorze zakresu dat. Naciśnięcie klawisza Tab powoduje przeniesienie zaznaczenia do dat i z dat, a klawisze strzałek umożliwiają przechodzenie między datami. (I7f3ea, b/498332749)
- Przywrócenie zmian w przypadku średnich i dużych przycisków w trybie precyzyjnego wskaźnika oraz domyślnego rozmiaru ikony okna w tym trybie (I58d8c, b/496938250, b/500356640)
- Rozwiązaliśmy problem z blokowaniem zaznaczenia klawiatury w selektorze daty, który nie jest oknem. Naprawiono też kolejność zaznaczania przycisków odrzucania i potwierdzania, która nie była zgodna z ich kolejnością wizualną. (Ibbe2e, b/500454457)
Wersja 1.5.0-alpha18
22 kwietnia 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha18 Wersja 1.5.0-alpha18 zawiera te zmiany.
Nowe funkcje
- Dodaj przeciążenia
FilterChip,ElevatedFilterChipiInputChipz przekształcaniem kształtu. Dodaj nowe domyślne kształty, odstępy i kolory dla tych przeciążeń. (I84717, b/442678355) - Dodaje obsługę pierścienia ostrości wstawki za pomocą interfejsu API, który można włączyć, korzystając z nowego lokalnego komponentu
LocalRippleThemeConfiguration. (I0551a, b/282184440).
Zmiany w interfejsie API
- Zmieniono nazwę
rememberWithGapSearchBarStatenarememberSearchBarWithGapState. (I5f54b, b/498697243) - Interfejsy API
RippleThemeConfigurationiLocalRippleThemeConfigurationzostały przeniesione do wersji stabilnej. Dodaliśmy możliwość konfigurowania efektów falowania, które będą rysowane z wyglądem pierścienia ostrości z wcięciem zamiast wskaźnika ostrości opartego na kryciu. Interfejsy API korzystające z interfejsów API konfiguracji efektu falowania materiału zostały wycofane. (Ide5d0, b/485893129) - Promowanie interfejsów API
WavyProgressIndicator(Id72a3, b/497877853) - Promuj
materialExpressTheme,expressiveLightColorScheme(I40eab, b/497876844) - Funkcja
BottomSheetzostała przeniesiona doBottomSheet.kt(If7e33, b/500091309) - Dodaj adnotację
Material3ExpressiveApi, która nie wymagaOptIn. (Ib9f2e, b/499994043) - Dodaje
DropdownMenuPopupPositionProvidersdoDropdownMenuPopup, dzięki czemu deweloperzy mogą teraz konfigurować położenie menu względem elementu zakotwiczonego. Umożliwia to obsługę podmenu w menu. Możesz teraz tworzyć kaskadowe podmenu za pomocą nowych pozycji względnych względem elementu zakotwiczonego. Przekaż te nowe opcje pozycjonowania dorememberDropdownMenuPopupPositionProvider, aby skonfigurować menu. Pełną implementację znajdziesz w przykładzie menu katalogu. (Ic1ace, b/476161294)
Poprawki błędów
- Aktualizacja komponentów material3 w celu obsługi wskazań pierścienia ostrości w przypadku wstawki (I88006, b/498610244, b/467984300, b/498281359)
- Rozwiązaliśmy problem w przykładach
TimePicker, w których przenosił się fokusTalkBack, co umożliwiało wprowadzanie nieprawidłowych wartości czasu (I51690, b/498364606).
Wersja 1.5.0-alpha17
8 kwietnia 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha17 Wersja 1.5.0-alpha17 zawiera te zmiany.
Zmiany w interfejsie API
- Przeniesiono promowaną funkcję
TopAppBarScrollBehaviori powiązane z nią metody do wersji stabilnej. Te interfejsy API nie wymagają już@ExperimentalMaterial3Apizgody. (Ieb2d1, b/496918628)
Wersja 1.5.0-alpha16
25 marca 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha16 Wersja 1.5.0-alpha16 zawiera te zmiany.
Nowe funkcje
- Promowanie konstruktorów
Typographyi atrybutów. Dodano konstruktoraTypography, który akceptuje domyślny atrybutFontFamily, który ma być stosowany do wszystkich elementówTextStylesw skali. (I3f6f1, b/236358112) - Promowanie eksperymentalnych interfejsów API suwaków do wersji stabilnej. (I5efb3, b/304811984)
Zmiany w interfejsie API
- Wprowadzono flagę funkcji
isAnchoredDraggableComponentsAnchorRecoveryEnableddla komponentów, które można przeciągać i w przypadku których występują niejednoznaczne błędy docelowe. Komponenty obejmująModalBottomSheet,BottomSheetScaffold,SwipeToDismissBoxiWideNavigationRail(I5b0e5, b/487941042, b/478210200, b/477038695) - Dodano
DropdownMenuItemTrailingLabeldomyślną funkcję i zoptymalizowane pod kątem wskaźnika wypełnienia interfejsu w przypadku menu segmentowych (I28977, b/485937388). - Dodaliśmy do okien dialogowych dopełnienie, gdy wartość
ComposeMaterial3Flags.isPrecisionPointerComponentSizingEnabledjest prawdziwa, oraz dodaliśmyAlertDialogDefaults.IconSizedla ikony. (Ib9652, b/485932651) - Zoptymalizowano wewnętrzne obliczenia minimalnego rozmiaru w przypadku
BasicTextField. W razie potrzeby możesz je wyłączyć w sekcjiComposeFoundationFlags#isBasicTextFieldMinSizeOptimizationEnabled. (I70ade) - Zaktualizowano kolejność parametrów w
SearchBarDefaults.InputField, aby zachować zgodność z kodem źródłowym. (I20e3b, b/486964336) - Usunięto wycofane interfejsy API
FilterChipiAssistChip, które mają parametr horizontalSpacing (Iec623, b/483762893) - Parametr
isAtTopw usługachTopAppBarDefaults.pinnedScrollBehavioriTopAppBarDefaults.enterAlwaysScrollBehaviorzostał zmieniony naisAtStart(If7323, b/405129274).
Poprawki błędów
- Komponenty
BottomSheetuwzględniają teraz wartośćMaterialTheme.motionSchemepodczas zagnieżdżonego przewijania i gestów przeciągania. (I5fe22, b/452071842, b/384959324) - Naprawiono problem z dopełnieniem ikony i etykiety, które było stosowane, gdy element zawierał ikonę
selectedLeadingIcon, która nie była obecnie wyświetlana (Iba820).
Wersja 1.5.0-alpha15
25 lutego 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha15 Wersja 1.5.0-alpha15 zawiera te zmiany.
Nowe funkcje
- Wprowadzono komponent Scrim do użycia z komponentami Modal. (I29555, b/455862212, b/372395682, b/375853129)
- Wprowadza samodzielny statyczny komponent arkusza. (I0ef95, b/455862212, b/350779977, b/444176963, b/336349080)
Zmiany w interfejsie API
MaterialThemezostało przekształcone tak, aby używać pojedynczego elementuCompositionLocaldo danych motywu. Lokalizacje kompozycji są teraz dostępne wMaterialTheme.LocalMaterialTheme.currentlubcurrentValueOf(MaterialTheme.LocalMaterialTheme)wCompositionLocalAccessorScope(Idee2e, b/483676974).- Zaktualizuj domyślny odstęp od treści w przypadku przycisku z tekstem ekspresyjnym, aby był zgodny ze specyfikacją. Usunięto też wycofanie funkcji
TextButtonContentPaddingiTextButtonWithIconContentPadding. (I67283) - Wprowadzenie parametru wyłączającego obsługę przycisku „Wstecz” z
BottomSheet(Iff81e, b/483763626) - Wycofanie schematu ruchu z wersji eksperymentalnej (If822f, b/484003769)
- Dodaliśmy parametry „enabled” i „threshold” do elementu
PullToRefreshBoxw Material3. (I5610b, b/369044003) - Zastąp
horizontalSpacingtekstemhorizontalArrangementw polachFilterChipiElevatedFilterChip. Dodano domyślne ustawieniahorizontalArrangementdoFilterChipDefaults. (If3d6a, b/304853782) - Ulepszono dokumentację KDoc dla
TopAppBarDefaultszachowań przewijania, aby lepiej wyjaśnić użycie w przypadku odwróconych i wstępnie przewiniętych treści. (I247dd, b/405129274) - Zastąp parametr
horizontalSpacingparametremhorizontalArrangmenet. Dodano domyślne ustawieniahorizontalArrangementdoAssistChipDefaults. (I15cec, b/304853782) - Dodaj funkcję pobierającą wartość dla
shouldUsePrecisionPointerComponentSizing(I234ce) - Dodaliśmy przeciążenia do funkcji
TopAppBarDefaults.enterAlwaysScrollBehavioriTopAppBarDefaults.pinnedScrollBehavior, które akceptują parametrisAtTopState. Umożliwia to niestandardowe wykrywanieat top statepodczas korzystania z zachowań związanych z przewijaniem. (I785b9, b/405129274) - Dodaj parametry
contentPaddingihorizontalArrangementdo parametrówInputChipiElevatedInputChip. Dodaj domyślne wartościhorizontalArrangementicontentPaddingdoInputChipDefaults. (Iae39c, b/304853782) - Dodano precyzyjne określanie rozmiaru wskaźnika i wypełnienia w przypadku przycisków oraz wycofano przestarzałą wartość
TextButtonContentPadding. (I6d7b6, b/479879803) - Dodano
rememberWithGapSearchBarStatedo użycia zExpandedDockedSearchBarWithGap. (Ia3361)
Poprawki błędów
- Rozwiązuje problem z niewyświetlaniem cieni w przypadku paneli lewitujących (Ie6108, b/470517507).
- Zaktualizuj
TextButtons, aby zawierał prawidłowe specyfikacje dopełnienia Material 3. Aby zrezygnować i przywrócić stare działanie, ustaw w aplikacji wartośćisTextButtonContentPaddingFixEnabledna false. (I66c8e)
Wersja 1.5.0-alpha14
11 lutego 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha14 Wersja 1.5.0-alpha14 zawiera te zmiany.
Obejście
- Dodano:
isAnchoredDraggableComponentsStrictOffsetCheckEnabled. Ta flaga określa, czy ścieżkiBottomSheetScaffold,ModalBottomSheet,SwipeToDismissBoxiWideNavigationwymagają ścisłego inicjowania wewnętrznych przesunięć. Gdy ta opcja jest wyłączona, komponenty nie umieszczają treści, dopóki nie zostanie zainicjowane przesunięcie. Ta flaga może pomóc w tymczasowym obejściu błędu, w którym te komponenty zgłaszają wyjątek z powodu niezainicjowanego przesunięcia. (I36870, b/477038695, b/478210200, b/471818801, b/475249572, b/475598146)
Zmiany w interfejsie API
- Dodaj
isTextButtonContentPaddingFixEnabled, które po spełnieniu warunkuTextButtonzapewni prawidłowe specyfikacje dopełnienia. (Ib986e) - Dodano parametr
indicatorPaddingdlaWideNavigationRailItem. (I3d5dc) - Dodaj parametry
contentPaddingihorizontalArrangementdoSuggestionChipiElevatedSuggestionChip. Dodaj domyślne wartościhorizontalArrangementiContentPaddingdoSuggestionChipDefaults. Utwórz zajęciaChipArrangement. (Ida874, b/304853782) - Zaktualizuj pozycje menu, które można wybrać, aby zawierały parametr tekstu pomocniczego. Wycofanie poprzednich interfejsów API, które nie zawierały parametru tekstu pomocniczego. Dodaj też zalecane domyślne rozmiary ikon początkowej i końcowej. (I89e4b, b/417731599)
- Zaktualizowano układ paska powiadomień, aby poprawić wyrównanie tekstu wielowierszowego. Aby zminimalizować zakłócenia w interfejsie, wprowadziliśmy flagę
isSnackbarStylingFixEnabled, która ułatwia migrację. Włącz tę flagę ręcznie w aplikacji. Zostanie ona usunięta w kolejnej wersji. (I37d63, b/322866101) - Naprawiliśmy błąd w
BottomSheetScaffold,ModalBottomSheet,SwipeToDismissBoxiWideNavigationRail, który powodował, że w niektórych przypadkach nie były ponownie obliczane punkty zakotwiczenia. Ta poprawka jest ukryta za flagą funkcjiComposeMaterial3Flags#isAnchoredDraggableComponentsInvalidationFixEnabled. (I9acb1, b/478210200) - Dodaj parametr dopełnienia treści do tagów
WideNavigationRailiModalWideNavigationRail, aby można było dostosowywać domyślne dopełnienia. (I49106)
Poprawki błędów
- Ustawienie wartości 0 w przypadku parametru
BottomSheetScaffold sheetPeekHeightwyłącza kotwicępartiallyExpanded.PartiallyExpandedjest zachowywany w pierwszym przebiegu układu, aby umożliwić obliczenie układu. (Ia33a4, b/465158677) SheetState#targetValuewoli bieżący punkt zakotwiczenia, jeśli bieżące przesunięcie jest prawidłowe. Zapobiega to natychmiastowej aktualizacji wartości initialValue. (Ied2c4, b/477279704)- Naprawiono problem z brakiem pionowego wyśrodkowania ikony elementu
WideNavigationRailItem, jeśli zmieni się wysokość elementu. (Ib8c83)
Wersja 1.5.0-alpha13
28 stycznia 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha13 Wersja 1.5.0-alpha13 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy obsługę pasków wyszukiwania
animationSpecForContentExpandianimationSpecForContentCollapse. (I033a5)
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że treść rozwiniętego elementu
SearchBarnie używała koloru dostosowanego do motywu (I878e0, b/379441904). - Usunęliśmy błąd, który powodował, że
BottomSheetScaffoldwywoływał wywołanie zwrotneconfirmValueChangewSheetStatez nieprawidłowymi wartościami podczas przekazywania doBottomSheetScaffolduchwytu przeciągania. Pamiętaj, żeconfirmValueChangenależy używać tylko do odrzucania zmian stanu. UżyjsnapshotFlow, aby obserwować zmiany stanu. (Ice9ee, b/465824174, b/477031833)
Wersja 1.5.0-alpha12
14 stycznia 2026 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha12 Wersja 1.5.0-alpha12 zawiera te zmiany.
Zmiany w interfejsie API
- Aktualizacje
TopAppBarDefaults(enterAlwaysi przypięte zachowania) w celu obsługilazyListState,scrollStateireverseScrolling. Rozwiązuje to problemy z kierunkiem układu i prawidłowo obsługuje początkowo przewinięte treści. (I9d5c2, b/262234750) - Dodaj parametry
contentPaddingihorizontalSpacingdo parametrówAssistChipiElevatedAssistChip. Dodaj domyślne wartościHorizontalSpacingiContentPaddingdoAssistChipDefaults. (I2ac90, b/304853782) - Interfejsy
DatePickerAPI korzystające z klas Java Time nie są już oznaczane jako eksperymentalne. (I5039c, b/457537971)
Poprawki błędów
- Naprawiono błąd formatowania daty
DatePickerw interfejsie API 23 (I67a94, b/452713222). - Rozwiązaliśmy problem z wyrównaniem wizualnym w przykładzie animowanego wskaźnika, gdy jest on używany z wierszami kart, które można przewijać. (Iae0f3, b/466790304)
- Rozwiązaliśmy problem polegający na tym, że selektor AM/PM w
TimePickernie używał stylu tekstu zdefiniowanego w specyfikacji Material Design. (Ie908a, b/469788786) - Naprawiono błąd w
HorizontalFloatingToolbar, który mógł występować w trybie poziomym, gdy była wyświetlana klawiatura ekranowa. (Ia13c1, b/466692323) - Rozwiązaliśmy problem polegający na tym, że
TopAppBarmógł się nakładać naactions, gdy nie podanonavigationIcon. Tytuł jest teraz prawidłowo ograniczony do dostępnego miejsca. (I2ba97, b/428697836) - Obsługa języków pisanych od prawej do lewej za pomocą kotwic rozwijających panel (I0770b, b/467775639)
Wersja 1.5.0-alpha11
17 grudnia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha11 Wersja 1.5.0-alpha11 zawiera te zmiany.
Nowe funkcje
- Dodano:
ExpandedFullScreenContainedSearchBar. (Ie472d,b/454658635) - Dodaliśmy obsługę tworzenia karuzel w różnych formatach za pomocą leniwych siatek. (I2b109, b/462137656)
- Dostępne są teraz elementy listy Material Expressive, które obsługują interakcje i stylizację segmentową. Do elementu
ListItemColorsdodano dodatkowe pola koloru. (I54057, b/441569230) - Interfejsy API karuzeli z wieloma przeglądarkami i bez kontenera są już stabilne. (I7a558, b/401537465)
- Dodaj parametry
contentPaddingihorizontalSpacingdo parametrówFilterChipiElevatedFilterChip. Dodaj domyślne wartościHorizontalSpacingiContentPaddingdoFilterChipDefaults. (Iec6e3, b/455596578)
Poprawki błędów
- Ustawienie wartości 0 w przypadku parametru
BottomSheetScaffold sheetPeekHeightwyłącza kotwicępartiallyExpanded. (I52dc9, b/465158677)
Wersja 1.5.0-alpha10
3 grudnia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha10 Wersja 1.5.0-alpha10 zawiera te zmiany.
Nowe funkcje
- Dodano karuzelę o różnych proporcjach obrazu (I15247, b/411232854)
Zmiany w interfejsie API
- Flaga funkcji
isCheckboxStylingFixEnabledjest teraz dostępna w obiekcieComposeMaterial3Flags. (I97baf, b/457504316) - Parametr
disabledCheckmarkColorwCheckboxColorszostał przeniesiony na koniec listy parametrów, aby zapewnić zgodność binarną. (I734d8, b/457504316)
Poprawki błędów
- Przywrócono działanie wszystkich klawiszy strzałek zmieniających wartości suwaka, aby rozwiązać problem z blokowaniem fokusu na niektórych urządzeniach bez klawisza Tab. (I154dd, b/460912699)
Wersja 1.5.0-alpha09
19 listopada 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha09 Wersja 1.5.0-alpha09 zawiera te zmiany.
Nowe funkcje
- Dodawanie wyrazistych aktualizacji menu. Obejmuje to nową pozycję menu z możliwością przełączania, pozycję menu z możliwością wyboru, grupy menu i menu wysuwane. Zawiera też nowe domyślne wartości menu ekspresywnego w
MenuDefaults. (I5cdd4, b/417731597, b/448646125, b/448646896, b/448646891) - Usługa
Modifier.minimumInteractiveComponentSizeudostępnia teraz 2 nowe publiczne interfejsy API:AlignmentLines: MinimumInteractiveTopAlignmentLineiMinimumInteractiveLeftAlignmentLine. Te linie wyznaczają wizualne krawędzie komponentu przed dodaniem dodatkowego miejsca, aby spełnić minimalne wymagania dotyczące docelowego elementu dotykowego. (I7f485, b/458124197) - Dodano:
ExpandedDockedSearchBarWithGap. (Idb7f8)
Zmiany w interfejsie API
- Dodaj weryfikacje, aby umożliwić precyzyjne określanie rozmiaru komponentu wskaźnika. (I8108d)
- Dodaj
Modifier.aligndoButtonGroupScope(I03890, b/416590906) - Usuń wycofane eksperymentalne interfejsy API
ModalBottomSheet, które były dostępne w co najmniej 1 stabilnej wersji. (Ifbe1d, b/449757604) - Nowe przeciążenie funkcji
ButtonGroupz parametremverticalAlignment. (I23a37, b/416590906) - Usunięto wycofane ukryte eksperymentalne interfejsy API, które były dostępne w co najmniej 1 stabilnej wersji. (I4f68d, b/449754465, b/449749933, b/401311419, b/449749928, b/449756019)
Poprawki błędów
- Dodaj etykietkę do domyślnego przycisku przepełnienia na pływającym pasku narzędzi. (Ife952, b/422781172)
- Naprawiono przycinanie wskaźnika
WideNavigationRail, gdy jest on ustawiony na większą szerokość za pomocą większego rozmiaru etykiety. (I9d740, b/444728723) - Zaktualizuj przyciski końcowe przycisku dzielonego, aby wyśrodkować ikonę optycznie w zależności od danego kształtu, nawet w przypadku języków pisanych od prawej do lewej. (Icab82)
Wersja 1.5.0-alpha08
5 listopada 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha08 Wersja 1.5.0-alpha08 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano właściwości
hourInputiminuteInputdo interfejsuTimePickerState. Te właściwości mają zawierać nieprzetworzone, niezweryfikowane dane wejściowe od użytkownika. Istniejące właściwości godziny i minuty pozostają i reprezentują ostatni znany prawidłowy czas. (I09d74, b/394612017)
Poprawki błędów
- Usunęliśmy błąd, który powodował, że przełącznika nie można było używać z
ReusableContentbez animacji. (I61093, b/455909150)
Wersja 1.5.0-alpha07
22 października 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha07 Wersja 1.5.0-alpha07 zawiera te zmiany.
Zmiany w interfejsie API
- Ulepszone
SearchBar.InputFieldz parametremkeyboardOptions, który umożliwia optymalizację wprowadzania tekstu przez określanie opcji klawiatury, oraz parametremlineLimits, który umożliwia określanie przewijania zawijania tekstu (Id08a4, b/416991049).
Poprawki błędów
- Usunęliśmy błąd w suwaku, który powodował, że interakcje naciśnięcia nie były emitowane po dotknięciu. Ta zmiana sprawia, że sygnał
PressInteraction.Pressjest emitowany natychmiast po kliknięciuawaitFirstDown, co zapewnia natychmiastową informację wizualną. (If9e25, b/308501482) - Rozwiązaliśmy problem polegający na tym, że podczas przewijania
Tooltipnie zmieniał kierunku. FunkcjaTooltipBoxteraz wywołuje rekompozycję za każdym razem, gdy wyskakujące okienko z etykietką zmienia stronę, co zapewnia prawidłową aktualizację kierunku kursora. (I5ad1e, b/438875827)
Wersja 1.5.0-alpha06
8 października 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha06 Wersja 1.5.0-alpha06 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano przewijane kolory dla
AppBarWithSearch. Dodatkowo kolor kontenera pola do wprowadzania danych paska wyszukiwania jest teraz domyślnie przezroczysty. Domyślny kolor kontenera paska wyszukiwania pozostaje niezmieniony. (I4fe32) - Dodaliśmy domyślny element kompozycyjny wskaźnika przepełnienia do
FloatingToolbar. (I6a6f8, b/415833723) - Zaktualizuj
isExpandednaisShowingw przypadku interfejsów API menu w grupie przycisków. (I86309, b/412419514) - Zaktualizowano
initialIsExpandeddoinitialIsShowingi dodano domyślny komponent wskaźnika przepełnienia wButtonGroupDefaults. (I6e67c, b/412419514) - Usunięcie funkcji przeciągania w celu zmiany rozmiaru z publicznego interfejsu API (Ic85ba, b/437953743, b/442636084)
Poprawki błędów
- Poprawiono kolejność zaznaczania klawiszy podczas nawigacji za pomocą klawiatury, a także w przypadku języków pisanych od prawej do lewej. (Ibba27, b/422220597)
- Poprawiono nawigację za pomocą klawiatury w siatce wyboru roku w selektorze daty. (I02363, b/422425720, b/446814683)
- Poprawiona nawigacja za pomocą klawiatury w siatce wyboru daty w selektorach daty. (I594ef, b/422220597, b/422223115)
- Usunęliśmy błąd polegający na tym, że pasek narzędzi poza ekranem otrzymywał fokus klawiatury. (I01a73, b/422786812)
- Poprawiono nawigację za pomocą klawiatury w przypadku klawiatury
RangeSlideri suwaka. (Ib6bcf, b/424845268, b/422942624)
Wersja 1.5.0-alpha04
10 września 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha04 Wersja 1.5.0-alpha04 zawiera te zmiany.
Nowe funkcje
- Dodano przeciążenia funkcji
Textz możliwością komponowania, które akceptują lambdęColorProducerumożliwiającą wydajne zmiany kolorów bez wywoływania pełnej rekompozycji. (I9ff25, b/407055128)
Zmiany w interfejsie API
- Zmień nazwę
Scrim()naLevitatedPaneScrim()i ukryj właściwości klas Levitated i Reflowed. (I090e1, b/427953101) - Ukrywanie interfejsu API
calculatePosture()jako wewnętrznego (Ie7227, b/424442112) - Udostępnij
PaneScaffoldHorizontalOrderjako zamknięty publiczny interfejs API (Ia4ebe) - Oznacz interfejsy API związane z rozmiarem okna i postawą jako eksperymentalne. (I4ee96)
Poprawki błędów
- Poprawiliśmy kolejność nawigacji za pomocą klawiatury, aby zaznaczenie przechodziło z przycisku FAB do pierwszego elementu u góry. (Icaaa1, b/422762939)
- Ulepszenie ułatwień dostępu do menu nawigacyjnego za pomocą klawiatury: menu nie jest już dostępne po zamknięciu, można je zamknąć klawiszem Esc, a po otwarciu jego zawartość jest zaznaczana. (Idb995, b/422793544, b/422793651, b/422797424)
- Tarcza zegara w selektorze czasu reaguje teraz na nawigację i wprowadzanie danych za pomocą klawiatury. (I9d5d9, b/425710631)
- Używaj nowej kotwicy początkowej, gdy zmieni się lista kotwic rozwijania panelu (I91cd1, b/438829477)
Wersja 1.5.0-alpha03
27 sierpnia 2025 roku
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha03 Wersja 1.5.0-alpha03 zawiera te zmiany.
Zmiana zachowania
- Rozmiar pola wyboru i kolory wskaźników zostały dostosowane do specyfikacji. Aby zminimalizować zakłócenia w interfejsie, dodaliśmy flagę
isCheckboxStylingFixEnabled, która ułatwia migrację. Włącz ją ręcznie w aplikacjach. W przyszłej wersji ten flag zostanie usunięty. (I5bcd3, b/304300693)
Zmiany w interfejsie API
- Dodano parametr
contentPaddingdlaTopAppBar(Ia5fea) - Dodaj zastąpienie komponentu dla szkieletu pakietu nawigacyjnego (I85312)
Poprawki błędów
- Parametr
containerColorwTimePickerDialogjest teraz prawidłowo stosowany, co umożliwia dostosowywanie koloru tła okna. (I47f89, b/403183883) - Pasek nawigacyjny w oknie modalnym nie traci już zaznaczenia po zwinięciu i zamyka się po naciśnięciu klawisza ESC. (4255257)
Snackbarma teraz prawidłową kolejność zaznaczania klawiatury w przypadku przycisków działania i zamykania. Przycisk zamykania obsługuje też wyświetlanie etykietki. (11fa13d)
Wersja 1.5.0-alpha02
13 sierpnia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha02 Wersja 1.5.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- W
PullToRefreshDefaultszmieniliśmy nazwyshapenaindicatorShapeicontainerColornaindicatorContainerColororaz dodaliśmyindicatorMaxDistancedo użycia jako wskaźnik. (Ib6cbe) - Usuń tag wycofania z
PullToRefreshDefaults.indicatorColor(Iaaee2) - Dodano
AppBarWithSearch, zastępującTopSearchBari obsługując ikony nawigacji/działań. (I213a5)
Poprawki błędów
- Naprawiono błąd, który powodował, że naciśnięcie przycisku Wstecz nieprawidłowo aktualizowało przesunięcie szuflady. (I85624, b/427778135)
SwipeToDismissBoxteraz wraca do ustalonegotargetValue, jeśli nie ma innych punktów zakotwiczenia.BottomSheetScaffoldteraz wraca do rozwiniętegotargetValue, jeśli nie ma innych punktów kotwiczenia. (I73d5e, b/428856426)- Poprawiono odstęp przycisku w
AlertDialog, gdy jest on ułożony w pionie. (Ia2118) - [FAB] Naprawiono błąd, w którym pływający przycisk działania nadal można było kliknąć po jego ukryciu przez
Modifier.animateFloatingActionButton(I8ea6c, b/430336834) - [Suwak] Naprawiono nawigację za pomocą klawiatury w przypadku suwaka (I3a405)
Wersja 1.5.0-alpha01
30 lipca 2025 r.
Publikacja androidx.compose.material3:material3-*:1.5.0-alpha01 Wersja 1.5.0-alpha01 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy więcej dostawców pozycji dla etykietek, dzięki czemu deweloperzy mogą teraz określać, czy etykietka ma być umieszczana nad, pod, po lewej czy po prawej stronie elementu zakotwiczonego. Dodaj interfejs API, który przyjmuje kształt karetki, aby można było podać więcej niestandardowych kształtów. (Ie513c)
Zmiany w interfejsie API
TextFieldColorsmetody obliczania kolorów komponentów na podstawie stanu są teraz publiczne. (I03165)- Adnotacja zawieszenia została usunięta z wywołania zwrotnego
onDismiss. (Ie3166) - Funkcje
DatePickerState.getDisplayedMonth(): YearMonth?iDateRangePickerState.getDisplayedMonth(): YearMonth?zostały zaktualizowane, aby zwracać wartość inną niż null. (Ice09c, b/427952972) - Usuń
ModalWideNavigationRailDefaults, przenieś jego zawartość doWideNavigationRailDefaultsi zmień nazwy powiązane z jego kształtem. (Ic5e61) WideNavigationRailItem’s colors and copy deprecated functions should be level Hidden. (Id7e82)- Zmień poziom wycofanych interfejsów API
WideNavigationRailna „Ostrzeżenie” i oznacz je jako eksperymentalne. (I89085)
Poprawki błędów
- Zapewnia, że
DatePickerużywa własnego języka do formatowania liczb. Wcześniej, jeśliDatePickerbył skonfigurowany dla języka arabskiego, mógł nieprawidłowo renderować cyfry łacińskie, jeśli ustawienia regionalne systemu urządzenia używały innego systemu liczbowego. (Iccf76, b/432616196) - Rozwiązaliśmy problem
LinearProgressIndicator, który powodował, że wskaźnik zatrzymania nie był prawidłowo renderowany w układach od prawej do lewej. (I0734c) - Linie podziału
PrimaryScrollableTabRowiSecondaryScrollableTabRowrozciągają się teraz na cały ekran, nawet jeśli zawartość karty nie rozciąga się do końca ekranu. (Ic1e9c, b/261741384)
Compose Material3 w wersji 1.4
Wersja 1.4.0
24 września 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0 Wersja 1.4.0 zawiera te zmiany.
Ważne zmiany od wersji 1.3.0:
Ogłoszenia o zmianach w bibliotece
Biblioteka androidx.compose.material.icons nie jest już zalecana do wyświetlania ikon Material w Compose, ponieważ symbole Material to nowa metoda. Przestaliśmy publikować aktualizacje tej biblioteki i została ona usunięta z najnowszej wersji biblioteki Material 3. Jeśli nie możesz jeszcze przeprowadzić migracji, nadal możesz się do niej odwoływać ręcznie.
Zamiast tego zalecamy pobranie pliku XML z grafiką wektorową z karty Android na stronie https://fonts.google.com/icons, aby uzyskać dostęp do najnowszych ikon stylizowanych: symboli Material.
Dlaczego nie polecamy już biblioteki? Biblioteka ikon („Material Icons”) została zastąpiona nowszymi ikonami Material Symbols. Zauważyliśmy, że biblioteka może znacznie wydłużyć czas kompilacji aplikacji, ponieważ zawiera wszystkie różne ikony, które mogą nie być potrzebne.
Więcej informacji znajdziesz na stronie https://developer.android.com/develop/ui/compose/graphics/images/material
Zmiany w zachowaniu
Ta biblioteka nie dodaje już zależności do
material-icons-core, więc jeśli Twój projekt na niej polegał, musisz jawnie dodać tę zależność w plikach build.gradle[.kts]. (I735ff, b/349894318)NavigationBarItemiNavigationRailItemzmieniają kolor aktywnej etykiety zonSurfacena kolor dodatkowy, aby zwiększyć użyteczność i kontrast kolorów oraz poprawić spójność w systemie (Ibc297). Aby przywrócić poprzednie działanie, skopiuj domyślne kolory i zmieńselectedTextColornaMaterialTheme.colorScheme.onSurface.Komponenty Material 3 używają teraz nowego parametru
MotionSchemedo określania ruchu. (Ie0f93)Zmiany ruchu nieokreślonego kołowego wskaźnika postępu (I3c07e)
Nowe komponenty Material Design 3
HorizontalCenteredHeroCarouselVerticalDragHandle- Zabezpieczone pola tekstowe dla pól wpisywania haseł
Ulepszenia istniejących komponentów Material Design 3
- Tekst obsługuje teraz
autoSize- Tekst z ciągiem znaków string
- Tekst z elementem annotatedString
- Dodano dekoratory Material 3 dla
BasicTextField2 - Dodaliśmy interfejs API
TimePickerDialog, którego można używać w przypadkuTimePicker,TimeInputlub w wersji z możliwością przełączania. - Nowe interfejsy API paska wyszukiwania:
- Zwinięte paski wyszukiwania i rozwinięte „widoki” wyszukiwania są teraz osobnymi komponentami:
SearchBar– pasek wyszukiwania w stanie zwiniętym.ExpandedFullScreenSearchBariExpandedDockedSearchBaroznaczają pasek wyszukiwania w stanie rozwiniętym. Otwierają się w nowym oknie.SearchBarState– sterowanie stanem paska wyszukiwania.
- Przeniesiono eksperymentalne interfejsy API do wersji stabilnej.
- Poprawa wydajności.
Wersja 1.4.0-rc01
10 września 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-rc01 Wersja 1.4.0-rc01 zawiera te zmiany.
Wersja 1.4.0-beta03
27 sierpnia 2025 roku
Publikacja androidx.compose.material3:material3-*:1.4.0-beta03 Wersja 1.4.0-beta03 zawiera te zmiany.
Wersja 1.4.0-beta02
13 sierpnia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-beta02 Wersja 1.4.0-beta02 zawiera te zmiany.
Zmiany zależności
- Usuwanie zależności
graphics-shapes(I219e0, b/436230765)
Zmiany w interfejsie API
- W
PullToRefreshDefaultszmieniliśmy nazwyshapenaindicatorShapeicontainerColornaindicatorContainerColororaz dodaliśmyindicatorMaxDistancedo użycia jako wskaźnik. (Ib6cbe) - Usuń tag wycofania z
PullToRefreshDefaults.indicatorColor(Iaaee2) BasicAlertDialogOverrideScopezostał przypadkowo przeniesiony do wersji stabilnej, a jego eksperymentalna adnotacja została usunięta w aosp/3701846. Oznaczanie go jako wewnętrznego. W wersji 1.5.0-alpha (I9182a) pozostanie w stanie publicznego eksperymentu.
Poprawki błędów
- Naprawiono błąd, który powodował, że naciśnięcie przycisku Wstecz nieprawidłowo aktualizowało przesunięcie szuflady. (I85624, b/427778135)
Wersja 1.4.0-beta01
30 lipca 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-beta01 Wersja 1.4.0-beta01 zawiera te zmiany.
Zmiany powodujące niezgodność
- Wszystkie publiczne interfejsy API oznaczone tagiem
ExperimentalMaterial3ExpressiveApilubExperimentalMaterial3ComponentOverrideApizostały usunięte. Aby nadal korzystać z tych funkcji, przejdź na1.5.0-alpha. (Ie4ae0) - W najbliższej wersji te interfejsy API
pullToRefreshzostaną zmienione. (Ib6cbe)
Nowe funkcje
Tooltipobsługuje teraz niestandardowy kształt kursora i niestandardową pozycję kursora (nad, pod, po lewej lub po prawej stronie kotwicy). (Ie513c)
Zmiany w interfejsie API
- Adnotacja zawieszenia została usunięta z wywołania zwrotnego
onDismiss. (Ie3166) - Funkcje
DatePickerState.getDisplayedMonth(): YearMonth?iDateRangePickerState.getDisplayedMonth(): YearMonth?zostały zaktualizowane, aby zwracać wartość inną niż null. (Ice09c, b/427952972) - Usuń
ModalWideNavigationRailDefaults, przenieś jego zawartość doWideNavigationRailDefaultsi zmień nazwy powiązane z jego kształtem. (Ic5e61)
Poprawki błędów
- Zapewnia, że
DatePickerużywa własnego języka do formatowania liczb. Wcześniej, jeśli w przypadku ustawień regionalnych w języku arabskim skonfigurowanoDatePicker, mogło to powodować nieprawidłowe renderowanie cyfr łacińskich, jeśli ustawienia regionalne systemu urządzenia używały innego systemu liczbowego. (Iccf76, b/432616196) - Rozwiązaliśmy problem
LinearProgressIndicator, który powodował, że wskaźnik zatrzymania nie był prawidłowo renderowany w układach od prawej do lewej. (I0734c) - Linie podziału
PrimaryScrollableTabRowiSecondaryScrollableTabRowrozciągają się teraz na cały ekran, nawet jeśli zawartość karty nie rozciąga się do końca ekranu. (Ic1e9c, b/261741384)
Wersja 1.4.0-alpha18
16 lipca 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha18 Wersja 1.4.0-alpha18 zawiera te zmiany.
Nowe funkcje
ModalBottomSheetPropertiesudostępnia teraz opcję wyłączenia dismissRequest po kliknięciu zasłony. (I8e715)- Dodaj obsługę
trackCornerSizedo ścieżkiRangeSlider. (Iec529)
Zmiany w interfejsie API
- Ustawiliśmy
railExpandedjako wymagany parametr w przypadkuWideNavigationRailItem, dodaliśmymodalContentColorw przypadkuWideNavigationRailColorsi przenieśliśmyWideNavigationRailDefaults.modalContainerShapedoModalWideNavigationRailDefaults.containerShape. (Id60c5) - Przenieś parametr nowej funkcji kolorów
WideNavigationRailna ostatnie miejsce i wycofaj starą funkcję. (Iac7f7) PullToRefreshto teraz stabilny interfejs API (I18537)- Aktualizacje interfejsu
DatePickersAPI. Usunęliśmy domyślną datę zakończenia o wartości null dlaDateRangePickeri wprowadziliśmy obowiązek jej przekazywania. W dokumentacji API wyjaśniliśmy też, jak w przypadku reprezentacji daty używana jest północ czasu UTC, a najnowsze metody pobierania i ustawiania, które korzystają z interfejsów API java.time, oznaczyliśmy na razie jako eksperymentalne. (I121b3, b/427952972) - Przekształć interfejs API parametru ikony
tint: ColorProducerw interfejs nieeksperymentalny. (Ia0133) - Usunięto eksperymentalne adnotacje z
DatePicker,DateRangePickeroraz powiązanych z nimi stanów, klas i typów. (I0e4e0, b/391848485) - Zmieniono domyślną wartość parametru focusable na false, aby poprawić dostępność, i dodano parametr
hasActiondoTooltipBox. (I62998) - Wprowadzenie do powszechnego użytku eksperymentalnych interfejsów API
WideNavigationRail,ShortNavigationBariNavigationItem. (I3ca3c) - Usunięto adnotacje
@ExperimentalMaterial3Apiz niektórych funkcji górnego paska aplikacji, klas pomocniczych i obiektów. (I0a9b7)
Wersja 1.4.0-alpha17
2 lipca 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha17 Wersja 1.4.0-alpha17 zawiera te zmiany.
Nowe funkcje
- Zaktualizowano animację grupy przycisków, aby po kliknięciu animacja była odtwarzana w 75% zamiast po naciśnięciu. (593942a, b/423596967)
Poprawki błędów
- Rozwiązaliśmy problem, który powodował, że w niektórych przypadkach element karuzeli mógł przekraczać rozmiar dużego elementu podczas obliczeń układu, co powodowało ucięcie całego widżetu. (I1c3d7, b/397489534)
- Naprawiono przeskakiwanie poza
beforeContentPaddingpodczas przewijania karuzel z nakładającymi się przesunięciami początku i końca. (c3d5f3a, b/420618979) - Zaktualizowaliśmy działanie funkcji
SwipeToDismiss, aby obserwowała stan rozliczenia zamiast bieżącego. Przywraca dotychczasowe działanie, w którym zachowanie elementu kotwiczącego jest wyłączane tylko wtedy, gdy komponent jest w stanie zamkniętym. (3844e07, b/425006844) - Menu wyskakujące
ExposedDropdownMenumożna teraz otwierać za pomocą klawiatury. Poprawiliśmy też dostępność menu za pomocą klawiatury w przypadku odmiany, którą można edytować. (46ead03)
Wersja 1.4.0-alpha16
18 czerwca 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha16 Wersja 1.4.0-alpha16 zawiera te zmiany.
Nowe funkcje
- Dodano komponent karuzeli hero wyśrodkowanej (I6f6d3).
Zmiany w interfejsie API
- Wdrażanie zastąpień XR na pionowym pasku narzędzi (Ia1604)
- Dodano funkcje programowego przewijania do
CarouselState(I12f8e) - Dodaj
ComponentOverridezaModalWideNavigationRail(I4f440) - Dodawanie
ComponentOverridedo subskrypcjiWideNavigationRail(I6354f) - Tworzę klucz
ComponentOverridedla chmuryHorizontalFloatingToolbar(I51116) - Tworzę klucz
ComponentOverridedla chmuryShortNavigationBar(I30e24) SwipeToDismissBoxStateodwołania doconfirmValueChangezostały oznaczone jako wycofane. Użytkownicy powinni zamiast tego korzystać z wywołania zwrotnegoSwipeToDismissBoxinterfejsu APIonDismissed. (Iee780)- Dodaliśmy parametr userScrollEnabled do funkcji kompozycyjnych Carousel. (I1d4d2)
- Karuzelę
currentItemmożna teraz obserwować z poziomuCarouselState. (Ie87e9)
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że dowolny kształt na przycisku typu FAB przekazywanym do komponentu
FloatingToolbarnie stosował prawidłowo cienia. (Icdcc9, b/423336922) - Wszystkie karuzele domyślnie korzystają teraz z semantycznej roli karuzeli. (I7af12)
- Naprawiono nieprawidłowy ruch suwaka, gdy stan suwaka był aktualizowany za pomocą funkcji
LaunchedEffect(Id9f31, b/302774166).
Wersja 1.4.0-alpha15
20 maja 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha15 Wersja 1.4.0-alpha15 zawiera te zmiany.
Zmiany w interfejsie API
- Dodano
MotionTheme.LocalMotionScheme, lokalizację kompozycji. Umożliwia to dostęp do schematu ruchu motywu zCompositionLocalConsumerModifierNodesza pomocącurrentValueOf(MotionTheme.LocalMotionScheme). (I014b1) - Konstruktor
ColorSchemebez ról kolorów stałych jest teraz wycofany. Przejdź na konstruktor, który zawiera stałe role. (Iad0ee) - Komponent M3 Text obsługuje teraz
TextAutoSize. (I7f524) - Dodaj interfejs API do tworzenia wariantów rozmiaru przycisku dzielonego i przykłady. (Ice30b)
Poprawki błędów
- Rozwiązaliśmy problem, który powodował nieprawidłowe położenie znaków
SnackbariFloatingActionButton, gdy włączona była opcja od krawędzi do krawędzi. Komponent Scaffold prawidłowo stosuje teraz do tych komponentów poziome wstawki. (Ib7c30, b/244400727) - Popraw
BottomSheetz pełnego rozwinięcia do częściowego rozwinięcia.BottomSheetużywa teraz efektu szybkiegoMotionSchemepodczas ukrywania lub zwijania oraz domyślnego efektu przestrzennego podczas rozwijania. (Ifa46f, b/416063171) ColorSchemeKonstruktor bez ról kontenera powierzchniowego został oznaczony jako ukryty i nie jest już zalecany do użycia. (Ia7237)- Usunęliśmy wymaganie dotyczące
CircularWavyProgressIndicatorSize.minDimension > 0, które wcześniej powodowało wyjątek, aby zapewnić większą elastyczność. (Ic9418, b/377531195) - Hiperlinki w
Text(AnnotatedString)mają teraz domyślnie styl Material. (I78288, b/339843816) - Rozwiązaliśmy problem, który powodował, że funkcja
toShape()wRoundedPolygonbuforowała ścieżkę i powodowała problem, gdy wykonywano wiele wywołańcreateOutlinez różnymi rozmiarami. (I4026d)
Wersja 1.4.0-alpha14
7 maja 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha14 Wersja 1.4.0-alpha14 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaliśmy nowy komponent
AppBarColumn, który działa tak samo jakAppBarRow, ale w przypadku treści ułożonych w kolumnie. (Iaf6bd) - Dodano maksymalną liczbę elementów do
AppBarRow. Jest to niezbędne do prawidłowego wdrożenia specyfikacji materiału dla górnych pasków aplikacji. (I92ce4) - Dodaliśmy w
TooltipScopemetodę uzyskiwanialayoutCoordinateskotwicy. Wycofujemy metodędrawCaret, ponieważ deweloperzy mogą używać tej nowej metody do uzyskiwania granic elementu zakotwiczonegolayoutCoordinatesi tworzenia odpowiedniego kształtu zawierającego karet. (Ia2e12, b/329470609) - Dodano
java.timeobsługę selektorów daty: wprowadzono przeciążeniarememberDatePickerState/rememberDateRangePickerState, które akceptują obiekty java.time (np. początkowyLocalDate,YearMonth). Dodano też funkcje rozszerzające w obiektach stanu, aby pobierać i ustawiać wartości za pomocą typów takich jakLocalDateiYearMonth. Wymaga interfejsu API w wersji 26 lub nowszej albo desugaryzacji. (I70f29, b/266202516, b/281859606) - Dodaj komponent
CenteredTrack, który umożliwia używanie suwaka ze ścieżką zaczynającą się od środka. (I5b1d6)
Poprawki błędów
- Zwiększyliśmy wydajność wskaźników postępu w formie fal: wskaźniki liniowe wczytują się teraz o ok. 8,5% szybciej i mają o ok. 11% mniej alokacji, a wskaźniki okrągłe są o ok. 47% szybsze i mają o ok. 39% mniej alokacji. (I595d8)
Wersja 1.4.0-alpha13
23 kwietnia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha13 Wersja 1.4.0-alpha13 zawiera te zmiany.
Zmiany w interfejsie API
isAppearanceLightStatusBarsiisAppearanceLightNavigationBarsponownie wprowadzone wModalBottomSheetPropertiesjako parametry tylko na Androida. (Id4bc0)- Dodaj
AppBarRowelement kompozycyjny, który obsługuje przepełnienie elementów, które nie mieszczą się w jego granicach. (I742bd) - Zaktualizuj interfejsy API
DatePickeriDateRangePicker, aby wysyłać żądanie ustawienia fokusu podczas przełączania się na tryb wprowadzania daty. Zastąpiliśmy parametr logicznyrequestFocusopcjonalnym parametremfocusRequester, który przyjmuje wartośćFocusRequester. (I14b69) - Usuń modyfikator i źródło interakcji z domyślnych elementów, które można kliknąć i przełączać. Zamiast tego użyj go jako szczegółu implementacji. (I95ed6)
- Zaktualizowano
ButtonGroup, aby w przypadku zbyt dużej liczby przycisków, które nie mieszczą się na ekranie, wyświetlać menu rozwijane. (I7b88b)
Poprawki błędów
- Arkusz u dołu ekranu wykorzystuje teraz górne wcięcia, gdy jest mniejszy niż bieżące przesunięcie. Umożliwia to użytkownikom podawanie górnych wcięć w przypadku rozwiniętego działania.
BottomSheetDefaults.windowInsetsobejmuje terazWindowInsets.safeDrawing.Top. (I0ab67, b/321877275, b/336962418, b/342093067) - Włączono animacje wejścia/wyjścia (przejście/przesunięcie) dla ikon/awatarów na początku i na końcu chipa, gdy są dodawane lub usuwane. Dotyczy to głównie wybieralnych elementów Chip (filtr, dane wejściowe), ale ma zastosowanie ogólne. (I9af21)
- Naprawiono nieprawidłowe działanie suwaka RTL spowodowane przez
LookaheadScope. (Ieb152, b/408118041) - Naprawiono awarię u dołu ekranu
AppBarzwiązaną z przewijaniem przy ukrytym interfejsie systemu. (Ic6140, b/405996228)
Wersja 1.4.0-alpha12
9 kwietnia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha12 Wersja 1.4.0-alpha12 zawiera te zmiany.
Zmiany w interfejsie API
- Usunięto parametry specyficzne dla Androida z
ModalBottomSheetProperties(Iab97f, b/362539765) - Wprowadzenie funkcji przeciążania domyślnych rozmiarów uchwytów do przeciągania (I0ed0d)
- Dodano nowe funkcje
NavigationSuiteScaffoldiNavigationSuiteScaffoldLayout, które obsługują nowe typy układów, oraz opcjonalną treść działania głównego. (Ib262a, b/353144478) - Wycofaj parametr
Modifier.weightz parametrem wypełnienia w plikuButtonGroup. Dodawanie wersji bez wypełnienia. (Id32bb) - W przypadku komponentu IconButton domyślnie używane są nazwy
xSmall-ixLarge-, a nieextra. (Ib6e0f) - Dodanie nowych funkcji
NavigationSuite,NavigationSuiteItemiNavigationSuiteColors, które obsługują nowe typy układów. (I203d6) - Dodaj nowe funkcje
NavigationSuiteTypesinavigationSuiteType, które obejmują te opcje układu (If68f9).
Poprawki błędów
ColorScheme.contentColorFormapuje terazsurfaceDimnaonSurface. (I8891a)- Zaktualizowaliśmy implementację
DateInputTextField, aby rozwiązać problem, który powodował, że pole do wprowadzania danych nie odzwierciedlało daty ustawionej programowo. (I6c8d1, b/401143451) - Poprawiono kolejność skupienia funkcji TalkBack w przypadku kolumny nawigacji i szerokiej kolumny nawigacji (I6cf6f, b/407048224).
Wersja 1.4.0-alpha11
26 marca 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha11 Wersja 1.4.0-alpha11 zawiera te zmiany.
Zmiany w interfejsie API
- Zaktualizowano wielkość liter w przypadku właściwości kompozycyjnych w obiektach domyślnych przycisku i przycisku przełączania. Dodaj metody w
ToggleButtonDefaultsiButtonDefaults, aby określić zalecane dopełnienie treści, kształty, rozmiar ikony, odstępy między ikonami i styl tekstu w zależności od wysokości kontenera. (Iea69e) - Usunięto z funkcji
FloatingToolbarwycofane eksperymentalne funkcje i stałe. (I8f339) - Komponenty Elevation mają teraz wspólny interfejs oraz publiczne konstruktory i właściwości. (Ibb172)
- Dodanie modyfikatora
animateWidthwButtonGroupScope, który będzie musiał być używany z elementami podrzędnymi grupy przycisków, aby prawidłowo animować te elementy. (Ia3bb6)
Poprawki błędów
- Poprawiliśmy dopełnienie pływającego paska narzędzi, aby zapewnić równowagę wizualną podczas zwijania, i zwiększyliśmy elastyczność w przypadku większych treści. (I06c00)
Wersja 1.4.0-alpha10
12 marca 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha10 Wersja 1.4.0-alpha10 zawiera te zmiany.
Zmiany w interfejsie API
- Środowisko wykonawcze
TabRowDefaults.tabIndicatorOffsetzostało wycofane na rzeczTabIndicatorScope.tabIndicatorOffset. (Ib36b3) - Poprawienie błędu w domyślnych ustawieniach przycisku dotyczących małego dopełnienia treści. (I19bfe)
- Metody
TabRowiScrollableTabRowzostały wycofane na rzecz ich wersji podstawowych i dodatkowych. Wiersze kart Podstawowe i Dodatkowe działają wydajniej i są bardziej zgodne ze specyfikacją. (I918e2) - Dodano użytkowników
rememberSliderStateirememberRangeSliderState. (I8e384) - Dodano
shouldAutoSnapdoSliderState, aby kontrolować mechanizm automatycznego przyciągania. Wyłączenie tej funkcji może być przydatne w przypadku animacji niestandardowych. (I07745) - Minimalna szerokość karty w wierszu kart z możliwością przewijania jest teraz parametrem. Warianty wiersza kart Główna i Dodatkowa nie są już eksperymentalne. (If6f15, b/226665301)
- Udostępniono klasę
ExitAlwaysFloatingToolbarScrollBehaviorpublicznie, co umożliwia tworzenie bez kompozycji. (Ibf31c)
Wersja 1.4.0-alpha09
26 lutego 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha09 Wersja 1.4.0-alpha09 zawiera te zmiany.
Zmiany w interfejsie API
- Zmień nazwy pól ustawień
DragHandlew stanie domyślnym, rozdziel stany naciśnięcia i przeciągnięcia oraz udostępnij domyślne rozmiary. (I787b9) - Aktualizacje interfejsu
TowRowsTopAppBarAPI. Usunęliśmy parametr lambdaexpandedi dodaliśmy osobne parametry dla wysokości rozwiniętej i zwiniętej. (Idd677, b/306697446, b/229134133, b/268068946)
Poprawki błędów
- Dolne paski aplikacji obsługują teraz usługę eksploracji dotykowej (np.
TalkBack) i są widoczne, gdy jest ona włączona. (I4b34d)
Wersja 1.4.0-alpha08
12 lutego 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha08 Wersja 1.4.0-alpha08 zawiera te zmiany.
Nowe funkcje
Dodaliśmy interfejs API
TimePickerDialog, którego można używać w przypadkuTimePicker,TimeInputlub w wersji z możliwością przełączania. (Id2d83)Nowe interfejsy API paska wyszukiwania:
- Zwinięte paski wyszukiwania i rozwinięte „widoki” wyszukiwania są teraz osobnymi komponentami.
SearchBar– pasek wyszukiwania w stanie zwiniętym.ExpandedFullScreenSearchBariExpandedDockedSearchBaroznaczają pasek wyszukiwania w stanie rozwiniętym. Otwierają się w nowym oknie.SearchBarState, aby kontrolować stan paska wyszukiwania.TopSearchBar, aby dodać obsługę wcięć i zachowanie przewijania.- Nowe przeciążenie funkcji
InputField, która używaSearchBarState(Ie0723, b/261496232, b/283311462, b/350916229, b/352872248)
Zmiany w interfejsie API
- Obsługa przekształcania kształtu rogu przycisków z ikonami po naciśnięciu. (I21843)
- Interfejsy API dekoratora pola tekstowego i pola dekoracji nie są już eksperymentalne. (I31d95)
- Dodaliśmy przykłady i wartości domyślne dla połączonej wersji
ButtonGroup. (I5c8ce) - Ustaw parametr state jako ostatni w przypadku
NavigationSuiteScaffoldiNavigationSuiteScaffoldLayout. (I9cc7b)
Poprawki błędów
- Dodano niestandardowe działania związane z ułatwieniami dostępu do
FloatingToolbars, dzięki czemu usługi ułatwień dostępu mogą teraz rozwijać lub zwijać wszystkie wariantyFloatingToolbar. Wersja z przyciskiem FAB stosuje to do przycisku FAB, a wersja bez przycisku FAB – do głównej treści. (I26420) FloatingToolbarsbędą teraz obserwować usługę eksploracji dotykowej (np. TalkBack) i utrzymywać pasek narzędzi rozwinięty i widoczny, gdy usługa jest włączona. (I02172)- Rozwiązaliśmy problem z awarią wskaźników postępu i wczytywania w przypadku przekazania wartości
Float.NaNjako postępu. (I4fa96, b/352364576)
Wersja 1.4.0-alpha07
29 stycznia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha07 Wersja 1.4.0-alpha07 zawiera te zmiany.
Nowe funkcje
- Dodano większą elastyczność w dostosowywaniu wyglądu pól wyboru za pomocą nowego interfejsu API. Ten interfejs API udostępnia parametry Stroke, które pozwalają precyzyjniej kontrolować sposób renderowania znacznika wyboru i konturu pola wyboru. (I65a88)
- Dodano interfejs
TwoRowsTopAppBarAPI, który jest bardziej konfigurowalną alternatywą dla średnich i dużych pasków aplikacji do tworzenia dwuwierszowych pasków aplikacji u góry. Deweloperzy mają teraz kontrolę nad treścią tytułów i napisów w stanie zwiniętym i rozwiniętym, a także mogą dostosowywać wysokość każdego z tych stanów. (I0be3c, b/306697446, b/229134133, b/268068946)
Zmiany w interfejsie API
- Zmieniliśmy nazwę wariantu eksperymentalnego
BottomAppBarnaFlexibleBottomAppBar, co zapewnia większą kontrolę nad rozmieszczeniem i wysokością treści. (Iaa448) - Zaktualizuj nazewnictwo właściwości w domyślnym obiekcie grupy przycisków na
CapitalCase. Zaktualizuj nazwęanimateFraction, aby dokładniej odzwierciedlała zachowanie, które reprezentuje. (I545cd) - Dodanie przeciążeń dla popularnych przycisków, które umożliwiają animowane kształty podczas interakcji z naciśnięciem. Dodano kształty przycisków w pamięci podręcznej. (I5ec20)
- Możesz teraz kontrolować, jak
FloatingToolbarz przyciskiem FAB reaguje na przewijanie, podającFloatingToolbarScrollBehavior. W przypadku pasków narzędzi umieszczonych wzdłuż środkowej krawędzi (np. u góry lub u dołu) zalecamy użycie zachowania przewijania, aby ukryć cały komponent podczas przewijania, co zapewni bardziej przejrzysty wygląd. Zapobiega to również przesunięciu FAB poza środek, co może się zdarzyć w przypadku użycia flagiexpandeddo zwijania. (I33f67) - Aktualizuje eksperymentalne interfejsy API
TopAppBar, aby podczas ustawiania wyrównania tytułu i podtytułu używaćAlignment.Horizontalzamiast niestandardowegoTopAppBarTitleAlignment. (I70ca2) SliderState#onValueChangejest teraz publiczna, aby zapewnić użytkownikowi większą kontrolę (I104eb).- Wprowadź
NavigationSuiteScaffoldState, aby umożliwić animację komponentu nawigacji. Wprowadź też przeciążenia funkcjiNavigationSuiteScaffoldiNavigationSuiteScaffoldLayout, które mają parametr stanu. (I6a8c9, b/328674235)
Poprawki błędów
- Przenieś klasy
IconButtonColorsiIconToggleButtonColorszIconButtonDefaults.ktz powrotem doIconButton.kt. (I3c233)
Wkład zewnętrzny
SliderState#isDraggingjest teraz dostępna publicznie. (I8458a)
Wersja 1.4.0-alpha06
15 stycznia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha06 Wersja 1.4.0-alpha06 zawiera te zmiany.
Zmiana zachowania
- Dodano
displayCutoutdo grupy wcięć, które komponenty Material domyślnie uwzględniają, aby uniknąć nakładania się treści z wycięciem w ekranie. Jest to zmiana w działaniu, która wpłynie na sposób, w jaki komponenty uwzględniające wcięcia będą zachowywać się w pobliżu wycięcia w ekranie. Obejmuje to wartość domyślną parametruWindowInsetsw przypadku komponentów Material 3 uwzględniających wcięcia oraz wartościWindowInsetspodane w obiektach Defaults komponentów zarówno Material 2, jak i Material 3. Jeśli ta zmiana spowoduje niepożądane działanie, ręcznie określ parametrWindowInsetsdla każdego komponentu. (I43ee9, b/362508045)
Zmiany w interfejsie API
- Aktualizacje interfejsu
TopAppBarAPI. Zmień nazwy średnich i dużych górnych pasków aplikacji z napisem na*FlexibleTopAppBar. Ujednoliciliśmy warianty kolorów w jednej funkcjiTopAppBarDefault.topAppBarColors()i dodaliśmy parametr kolorusubtitle, który będzie stosowany w przypadku podanego komponentu kompozycyjnego z napisami (I41b65). - Usunięto interfejs API
WideNavigationRailArrangementna rzecz interfejsuArrangement.Vertical(Id0341) - Dodaj nowy
VerticalSlider @Composable. (I2bfba) - Dodano nowy rodzaj ścieżki
@Composable, który umożliwia określanie niestandardowych zewnętrznych narożników ścieżki i ikon ścieżki. (I436a4) - Zaktualizuj interfejsy API pływającego paska narzędzi, aby używać obiektu
FloatingToolbarColorszamiast pojedynczego koloru kontenera. (I9a054) - Dodawanie i używanie nowej eksperymentalnej adnotacji
ExperimentalMaterial3ComponentOverrideApi(Ia1eaf) Modifier.indicatorLinema teraz kształt pola tekstowego, aby obsługiwać przycinanie. (I8c5f3, b/380704151)- Zmiana nazw eksperymentalnych funkcji
FloatingAppBarnaFloatingToolbar(I1dbf8) - Dodano nowy
floatingToolbarVerticalNestedScroll, który można dołączyć do kontenera z możliwością przewijania, aby aktualizować stan rozwinięcia pływającego paska narzędzi na podstawie ruchu przewijania, który przekracza próg. (I6d65f) - Wprowadzamy nowy interfejs API do tworzenia pływającego paska narzędzi z dołączonym pływającym przyciskiem działania (FAB). Interfejs API oferuje elastyczne opcje dostosowywania, które umożliwiają ułożenie paska narzędzi w poziomie lub pionie oraz umieszczenie przycisku FAB na początku lub na końcu paska narzędzi. (I9e350)
Poprawki błędów
- Rozwiązaliśmy problem z dostępnością paska powiadomień, który powodował, że po zamknięciu paska powiadomień, gdy włączona była funkcja
TalkBack, odczytywano komunikat o zamknięciu. (/I9db53)
Wkład zewnętrzny
- Ujednolicone
BasicTooltipw bibliotece foundation iBasicTooltip/Tooltipw bibliotece material3. (Ifc2e6)
Wersja 1.4.0-alpha05
12 grudnia 2024 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha05 Wersja 1.4.0-alpha05 zawiera te zmiany.
Zmiany w interfejsie API
- Zastąp typ w wartości
WideNavigationRailState.current/targetwyliczeniem, aby zwiększyć czytelność (I2d6ab) SplitButtonzmiana interfejsu Shape API z klasy danych na klasę w celu zapewnienia zgodności binarnej; (I53812)- Dodaliśmy interfejs API etykietki z parametrem
onDismissRequest, dzięki czemu twórcy mogą decydować, co się stanie, gdy użytkownik kliknie poza etykietką. Wycofaliśmy stary interfejs API, który nie zawiera tego nowego parametru. (I99aef) - Zmień nazwę
opticalCenteringnahorizontalCenterOptically. Ustawienie modyfikatora jako wewnętrznego. Zastąp parametr dopełnienia maksymalnym przesunięciem początku i końca. (I0b904) - Zmień
WideNavigationRailState, aby zawierał bieżącą lub docelową wartość, usuń wyliczenia na rzecz wartości logicznej. (Idfa29, b/356039090) - Dodaj
NavigationBarItemComponentOverride. (I3a06a)
Poprawki błędów
- Popraw działanie górnego i dolnego paska aplikacji, aby kolor zmieniał się niezawodnie, gdy zawartość jest przewijana do końca. (Idc4e8, b/293665988)
- Funkcje zachowania przewijania w przypadku górnych i dolnych pasków aplikacji zwracają teraz zapamiętane zachowanie, aby lepiej działać w przypadku ponownych kompozycji. (I0fdbe, b/207957336)
- Parametr modyfikatora jest teraz stosowany po modyfikatorach wewnętrznych, takich jak zachowanie i semantyka przeciągania, a nie przed nimi. Ma to wpływ na kolejność stosowania modyfikatorów. (I8d83f)
- Rozwinięta plansza dolna pozostaje rozwinięta po zmianie rozmiaru. (I2870b, b/324934884)
- Prawidłowe kierowanie flag paska stanu i paska nawigacyjnego w przypadku właściwości okien. (Ie674d, b/362539765)
- Przenieś parametr modyfikatora do katalogu głównego szkieletów zgodnie z dokumentacją. Dzięki temu implementacja jest zgodna z M2. (I0235e, b/372311595)
Wkład zewnętrzny
- Ujednolicona funkcja
DatePickerDialog. (I7dced)
Wersja 1.4.0-alpha04
13 listopada 2024 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha04 Wersja 1.4.0-alpha04 zawiera te zmiany.
Zmiany w zachowaniu
- Przywróć zmiany kolorów wprowadzone w aosp/3212478 w przypadku
iconButtonColors,iconToggleButtonColors,outlinedIconButtonColors,outlinedIconToggleButtonColorsioutlinedIconToggleButtonBorder. Przeniesiono przywrócone działanie do nowego zestawu funkcji o nazwachiconButtonVibrantColorsitd., aby podkreślić zwracane kolory o wysokim kontraście. (Iffd8d)
Nowe funkcje
- Wprowadzenie komponentu
VerticalDragHandle(I6c770)
Zmiany w interfejsie API
- Zmień nazwę
DismissibleModalWideNavigationRailDefaultsnaModalWideNavigationRailDefaults. (I8e877) - Dodaj
NavigationBarComponentOverrides. (I8a3f3) - Dodaj
NavigationRailComponentOverride. (I83e13) - Wprowadź
WideNavigationRailState, aby obsługiwać zwijanie i rozwijanie kolumny bocznej, zezwól na zamykanieModalWideNavigationRaili usuńDismissibleModalWideNavigationRail. (I88568) - Dodaj domyślne rozmiary xSmall, medium, large i xLarge do domyślnych ustawień przycisku przełącznika. (Ie95d1)
- Dodaj domyślne rozmiary xSmall, medium, large i xLarge do domyślnych ustawień przycisku. (If8b6d)
Poprawki błędów
- Kolor ikony na końcu ikony filtra został zmieniony z Podstawowy na
OnSurfaceContainerzgodnie ze specyfikacją. Wszystkie kolory konturów ikon zostały zmienione z Kontur na Wariant konturu zgodnie ze specyfikacją. (I68bd4)
Wersja 1.4.0-alpha03
30 października 2024 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha03 Wersja 1.4.0-alpha03 zawiera te zmiany.
Zmiany w interfejsie API
- Konstruktor
SheetStatez gęstością został wycofany na rzecz progów pozycji i prędkości. (Ifd16e) - Dodano
rememberTooltipPositionProvider, który zawiera zaktualizowaną logikę pozycjonowania. WycofanerememberPlainTooltipPositionProviderirememberRichTooltipPositionProvider. (Ie66e2) - Dodatkowe
ModalBottomSheetPropertiesumożliwiają dostosowanie kolorów paska stanu i paska nawigacyjnego. Domyślnie aktualizują się one na podstawie koloru treści, a nie stanu ciemnego motywu systemu. (Ib874e, b/362539765) - Ulepszyliśmy wprowadzanie danych w selektorach daty: w trybie wprowadzania danych pole tekstowe daty będzie aktywne, aby można było od razu wpisać tekst. Zmiana dodaje parametr
requestFocusdo parametrówDatePickeriDateRangePicker. Aby zapobiec ustawieniu fokusu, przekaż wartośćfalse. (I12d09, b/286399710, b/340102743) - Buforowanie domyślnych ustawień kształtu w obiekcie Shape. Ustawianie domyślnych kształtów
@Composabledla przycisku przełączania. Domyślnie kształty są zwijane do jednego kształtu, ponieważ warianty wskazują ten sam plik tokena. (Iaa014)
Poprawki błędów
- Zoptymalizuj działanie komponentu Scaffold
contentPadding, aby uniknąć ciągłego ponownego komponowania treści głównej, gdy zmienia się komponentcontentPadding. (I8c8e2, b/373904168) - Zmieniono nazwę elementu
TextFieldLabelScopeprogressnalabelMinimizedProgress TextFieldLabelPositionDefaultzmieniono nazwę naAttached. Elementy interfejsu zostały usunięte. (If75c6)- Rozwiązaliśmy problem z
DatePickerw trybie wprowadzania, w którym błędy weryfikacji mogły powodować zmianę wysokości komponentu. (I2e229, b/280462363) - Spraw, aby suwak materiału zmieniał wartość po naciśnięciu klawiszy sterujących. (I1c442)
Wersja 1.4.0-alpha02
16 października 2024 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha02 Wersja 1.4.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Aktualizacje selektorów dat, które zapewniają spójne użycie ustawień regionalnych w przypadku elementów
DatePickeriDateRangePickerpodczas ustawiania ich bezpośrednio za pomocą elementówDatePickerStatelubDateRangePickerState. Pamiętaj, że jeśli ustawisz regiony bezpośrednio w stanie, musisz zadbać o to, aby teksty tytułu i nagłówka były odpowiednio zlokalizowane, ponieważ ich tekst domyślny będzie nadal stosowany zgodnie z domyślnym regionem platformy. (I37073, b/326490763, b/321657276) - Plakietka
SheetState.isAnimationRunningjest teraz widoczna. (I9a3d7) DatePickerColorsmają teraz prawidłowy priorytet przed wszystkimi kolorami, które są z nimi sprzeczne i zdefiniowane w stylach tekstu Typografia motywu. Pamiętaj też, że ta aktualizacja dostosowuje pozycję parametrucolorw funkcjach selektora daty i wprowadza parametrcontentColordo dostosowywania kolorów tekstu nagłówka i tytułu. (I30d03, b/347031394)- Zmień nazwę
SplitButtonnaSplitButtonLayouti usuń interfejsy API wariantów kolorystycznychSplitButton. Warianty będą osiągane przez ponowne wykorzystanie wariantów przycisków udostępnianych przezSplitButtonDefaults. (I44c36) ModalBottomSheetma teraz parametrsheetGestureEnabled(I856cb, b/288211587)- Zmieniliśmy nazwy
standardMotionSchemeiexpressiveMotionSchemena standardowe i ekspresywne. Obie funkcje są teraz dostępne w obiekcie towarzyszącymMotionSchemepo wywołaniuMotionScheme.standard()iMotionScheme.expressive(). (Iceccf) - Dodanie parametru
maxWidthdo zwykłych i rozbudowanych etykietek. Domyślnie jest to 200 dp w przypadku zwykłych etykietek i 320 dp w przypadku etykietek z elementami rozszerzonymi. (I30ce9)
Poprawki błędów
- Przyciski
DatePickeriDateRangePickerprawidłowo aktualizują wyświetlany miesiąc, gdy są ustawione za pomocą stanudisplayedMonthMillis. (If9e47, b/333414302) ModalBottomSheetprzenosi teraz treści z paska stanu. (I5114c, b/321877275, b/336962418, b/342093067)- [Bottom Sheet] Zmień priorytet wywołania zwrotnego na
PRIORITY_DEFAULT, aby umożliwić najpierw zamknięcie klawiatury IME. (I447fb) - Naprawiono awarie w
DatePickeriDateRangePicker, gdy minimalny rok do wyboru jest ustawiony na rok w przyszłości. (I78656, b/319395747) - Rozwiązaliśmy problem z selektorem daty, który powodował, że interfejs nie aktualizował się po zastosowaniu zaktualizowanej instancji
SelectableDates. (Iad59a, b/290135807, b/339898760)
Wersja 1.4.0-alpha01
2 października 2024 r.
Publikacja androidx.compose.material3:material3-*:1.4.0-alpha01 Wersja 1.4.0-alpha01 zawiera te zmiany.
Zmiany w zachowaniu
- Biblioteka nie dodaje już zależności do
material-icons-core, więc jeśli Twój projekt na niej polegał, musisz jawnie dodać tę zależność w plikachbuild.gradle[.kts]. (I735ff, b/349894318) NavigationBarItemiNavigationRailItemzmienią kolor aktywnej etykiety zonSurfacenasecondary, aby zwiększyć użyteczność i kontrast kolorów oraz poprawić spójność w systemie (Ibc297). Aby przywrócić poprzednie działanie, skopiuj domyślne kolory i zmieńselectedTextColornaMaterialTheme.colorScheme.onSurface.- Komponenty Material 3 używają teraz nowego parametru
MotionSchemedo określania ruchu. (Ie0f93) - Zmiany ruchu nieokreślonego kołowego wskaźnika postępu (I3c07e)
- Zaktualizuj kolory
OutlinedIconButtonColorsiOutlinedIconToggleButtonColors, aby uzyskać lepszy kontrast. (I2743d) - Zaktualizowano kolor kontenera i treści dla
FilledIconToggleButtonColorsiFilledTonalIconToggleButtonColors. (Ic5d0f) - Zaktualizowano kolor obramowania
OutlinedButtonzoutlinenaoutlineVariant. (057f00)
Zmiany w interfejsie API
- Dodaliśmy opcjonalny parametr
reverseLayoutdo funkcjiTopAppBarwenterAlwaysScrollBehavior, aby lepiej obsługiwać treści, które zostały ustawione za pomocą parametrureverseLayout. (I4e0e5) SegmentedButtonobsługuje teraz argumentcontentPadding. (I5ad91, b/358414376)PullToRefreshStatenie ma już domyślnej implementacji dlaisAnimating(I6a593)- Dodaliśmy nowe przeciążenia funkcji Material
TextFieldiOutlinedTextField, które używają funkcjiTextFieldState. Dodano interfejsy API pól dekoracyjnych zgodne zTextFieldDecorator. (If13a1) - Dodano parametr do sterowania
labelPositionpola tekstowego. UżyciealwaysMinimizeumożliwia wyświetlanie etykiety i tekstu zastępczego w polu tekstowym jednocześnie, nawet gdy pole nie jest aktywne. (I1ef2c) - Dodano komponenty Material
SecureTextFieldiOutlinedSecureTextFielddo pól wpisywania hasła. (I7e22d) - Dodano zakres do etykiet pól tekstowych, aby można było sprawdzać postęp animacji. (If5ec8)
- Dodaje obsługę właściwości
MotionEvent.CLASSIFICATION_DEEP_PRESSdo etykietek. (I62e6a) isAfternoonwTimePickerStatejest teraz w interfejsie wartością rozszerzenia zamiast zmiennej. Zmieniliśmy jej nazwę naisPm(I89a97).- Aktualizacja klasy typografii w celu obsługi podkreślonych skal typów. (Ifa13c)
- Dodano interfejs API
ModalWideNavigationRaili zmieniono nazwy interfejsów APIModalExpandedNavigationRailnaDismissibleModalWideNavigationRail. (Ic9118) - Zaktualizowano
FloatingAppBarScrollBehavior, aby automatycznie obliczaćscreenOffseti nie wymagać@Composable. (Idf349) - Aktualizacje interfejsu
LoadingIndicatorAPI, które poprawiają nazewnictwo w obiekcie domyślnym. Dodano stałąLoadingIndicatorElevationw miejscuPullToRefresh. (I1d72b) - Aktualizacje interfejsu
LoadingIndicatorAPI, które poprawiają nazewnictwo w obiekcie domyślnym. Dodano stałąLoadingIndicatorElevationw miejscuPullToRefresh. (I1d72b) - Dodaliśmy parametry
amplitudeiwaveSpeeddo nieokreślonych odmian parametrówLinearWavyProgressIndicatoriCircularWavyProgressIndicator. (I2a0c5) - Obsługa zmiany kształtu przycisku przełącznika ikony w zależności od stanu naciśnięcia lub zaznaczenia. (Ibc781)
- Aktualizacja klasy typografii w celu obsługi podkreślonych skal typów. (Ifa13c)
SplitButtonprzekształcenia kształtu na podstawie stanu domyślnego lub stanu po naciśnięciu. Usunięto interfejs APIAnimatedTrailingButton, ponieważ interfejs APITrailingButtonmoże oferować te same opcje dostosowywania (I95066).- Dodaj modyfikator, aby animować wyświetlanie i ukrywanie FAB, np. podczas przewijania treści. (I8338d)
- Dodawanie połączonych kształtów grupy przycisków i odstępów do
ButtonGroupDefaultsdo wykorzystania w przykładowym pliku. (I68e30) - Przycisk dzielony dodaje poziomy odstęp do przycisku końcowego i umożliwia optyczne wyśrodkowanie obliczane na podstawie różnic między początkowym a końcowym rogiem (I122e2).
- Wprowadzamy nowy materiał
MotionScheme, który umożliwia ustawienie schematu ruchu komponentu. Schemat jest ustawiany za pomocąMaterialTheme. (Id50c2)
Poprawki błędów
- Zastosuj prawidłowy indeks przechodzenia fokusu do
Scaffoldelementów kompozycyjnych podrzędnych. Kolejność totopBar,bottomBar, fab, content, snackbar. (I5936b) - Rozwiązaliśmy problem w przypadku formatów
DatePickeriDateRangePicker, który polegał na tym, że w niektórych językach i wzorcach formatu niektóre elementy daty (np. nazwy miesięcy) nie zaczynały się od wielkiej litery. (I1430f) - Integracja tokenów komponentów FAB i FAB Menu (drobne zmiany wizualne dotyczące dopełnień i tekstu) (Ib57f3)
ModalBottomSheetjest teraz pierwszym elementem w kolejności przechodzenia semantycznego, a po nim następuje warstwa przyciemniająca. (I436f9, b/358594665)- Naprawiono problem z niepełnym znikaniem dolnego paska aplikacji podczas przewijania pod przyciskiem nawigacyjnym w trybie od krawędzi do krawędzi (I3ee21).
Compose Material3 w wersji 1.3
Wersja 1.3.2
9 kwietnia 2025 r.
Publikacja androidx.compose.material3:material3-*:1.3.2 Wersja 1.3.2 zawiera te zmiany.
Poprawki błędów
ListItempoprawia obliczanie wysokości wewnętrznej, rezerwując teraz odpowiednią ilość miejsca w układzie.- Usuń nadmiarowe dopełnienie etykiety
NavigationBarItem, aby prawidłowo dopasować ją do specyfikacji. - Poprawia układ
TabRoww trybie od prawej do lewej.
Wersja 1.3.1
30 października 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.1 Wersja 1.3.1 zawiera te zmiany.
Poprawki błędów
- Przyciski
DatePickeriDateRangePickerprawidłowo aktualizują wyświetlany miesiąc, gdy są ustawione za pomocą stanudisplayedMonthMillis. (If9e47, b/333414302) - Naprawiono awarie w
DatePickeriDateRangePicker, gdy minimalny rok do wyboru jest ustawiony na rok w przyszłości. (I78656, b/319395747) - Rozwiązaliśmy problem z selektorem daty, który powodował, że interfejs nie aktualizował się po zastosowaniu zaktualizowanej instancji
SelectableDates. (Iad59a, b/290135807, b/339898760) - Zmień priorytet wywołania zwrotnego używany przez arkusze dolne na
PRIORITY_DEFAULT, aby umożliwić najpierw zamknięcie klawiatury IME. (I447fb)
Wersja 1.3.0
4 września 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0 Wersja 1.3.0 zawiera te zmiany.
Ważne zmiany od wersji 1.2.0
Główne funkcje wersji 1.3.0
Nowe komponenty Material Design 3
- Karuzela
HorizontalMultiBrowseCarouseliHorizontalUncontainedCarouselUlepszenia istniejących komponentów Material Design 3.
- [
ModalBottomSheet] Funkcja przewidywania powrotu jest teraz obsługiwana na urządzeniach U+ (Iccf32, b/281967264, b/304850357) - [
SearchBar] obsługuje teraz przewidywane przejście wstecz w wersji U+ (I657f8). - Panel nawigacyjny (
ModalDrawerSheetiDismissibleDrawerSheet) obsługuje teraz przewidywane przejście wstecz w przypadku U+ jako opcję (Ie5b0b) DropdownMenuobsługuje teraz niestandardowy kolor, kształt, wysokość i obramowanie. (I8e981,b/289554448, b/301887035, b/283654243)- Zaktualizowano suwak, aby zwiększyć dostępność przez dodanie odstępu i wskaźnika zatrzymania. (I3058e)
- Zaktualizowaliśmy
ProgressIndicator, aby poprawić dostępność przez dodanie wskaźnika przerwy i zatrzymania. (I21451) - Dodano domyślny karet do rozbudowanego dymku. Obsługuje on rysowanie niestandardowego karetu na podstawie elementu zakotwiczenia
LayoutCoordinates. (Ifd42c) Zmiany powodujące niezgodność - Nowe interfejsy API do odświeżania przez przeciągnięcie:
- Uproszczony
PullToRefreshState, który używa wartości ułamkowych zamiast jednostek Dp. - Stan
isRefreshingjest kontrolowany przez użytkownika, a nie przezPullToRefreshState. - Oddzielono zagnieżdżone połączenie przewijania od elementu
PullToRefreshState. Zajmuje się tym nowyPullToRefreshBoxlubModifier.pullToRefresh. - Ta aktualizacja wprowadza zmiany, które mogą spowodować problemy z poprzednimi eksperymentalnymi interfejsami API. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683) Visual Breaking Changes
- Uproszczony
- Zaktualizuj nakładkę stanu zaznaczenia do wartości 0,1 f, aby zapewnić wystarczający kontrast kolorów. (I7ea77)
- Drobne korekty domyślnych kolorów powierzchni i tła w przypadku
lightColorSchemeidarkColorScheme. (I9db52) - Zaktualizowano kolory suwaka i
ProgressIndicatorzgodnie z nową specyfikacją kontrastu elementów nietekstowych. (I26807) - Komponenty korzystają teraz z wariantów
SurfaceContainer. Komponenty, które wcześniej obliczały kolor za pomocą funkcjiSurfaceiTonalElevation, domyślnie używają teraz rólSurfaceContainer, na które nie ma wpływu podniesienie tonalne. (b/304584161) - Role podstawowe Surface i Surface container zostały nieznacznie zmodyfikowane, dzięki czemu w motywach jasnym i ciemnym mają więcej odcieni. (I677a5)
- Przeniesiono eksperymentalne interfejsy API do wersji stabilnej.
- Poprawa wydajności.
Wersja 1.3.0-rc01
21 sierpnia 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-rc01 Wersja 1.3.0-rc01 zawiera te zmiany.
Poprawki błędów
ModalBottomSheetjest teraz pierwsze w kolejności przechodzenia semantycznego, a za nim znajduje się warstwa przyciemniająca. (I436f9, b/358594665)
Wersja 1.3.0-beta05
24 lipca 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-beta05 Wersja 1.3.0-beta05 zawiera te zmiany.
- Rozwiązaliśmy problem polegający na tym, że w Androidzie N i O brakuje treści
BottomSheetlub są one ucięte (a10a2d). - Zwiększono zakres semantyczny suwaka, aby element
TalkBackprawidłowo wyświetlał wskaźniki fokusu wokół kciuków. (0b5a1d)
Wersja 1.3.0-beta04
26 czerwca 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-beta04 Wersja 1.3.0-beta04 zawiera te zmiany.
Wersja 1.3.0-beta03
12 czerwca 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-beta03 Wersja 1.3.0-beta03 zawiera te zmiany.
Wkład zewnętrzny
- Udostępnij
androidx.compose.material3.DropdownMenuz typowego zbioru źródeł. (If62c0)
Wersja 1.3.0-beta02
29 maja 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-beta02 Wersja 1.3.0-beta02 zawiera te zmiany.
Zmiany w interfejsie API
Modifier.pullToRefreshIndicatorobsługuje podniesienie, aktualizuje interfejsy API Pull To Refresh, aby włączanie było wartością logiczną zamiast funkcji lambda. Obsługa dopasowania treści w językuPullToRefreshBox(I75679)- Utworzenie
TooltipScopejako zapieczętowanego interfejsu i utworzenie wewnętrznej implementacji do użycia wTooltipBoxi Label. (I3833e) - Dodaliśmy 2 nowe modyfikatory do
CarouselItemScope–maskClipimaskBorder– aby łatwo dodawać kształt i obramowanie do dowolnego elementu karuzeli (Id67a1). TimePickerStatejest teraz interfejsem i umożliwia ustawianie czasu (I88546).- Zaktualizowano interfejs API do stylizowania linków: przeniesiono
TextLinkStylesdoTextStylei usuniętoTextDefaultsz materiału. (I5477b)
Poprawki błędów
- Ikony paska stanu i paska nawigacyjnego
ModalBottomSheetreagują teraz na stan ciemnego motywu. (Ie1fe7, b/338342149) - Dodano semantykę zamykania arkusza do elementu
ModalBottomSheet. (0e61cb,b/328801864)
Wkład zewnętrzny
- Udostępnij
androidx.compose.material3.AlertDialogz typowego zbioru źródeł (Ia33f5) - Udostępnij
ModalBottomSheetz typowego zbioru źródeł (Id7cc7)
Wersja 1.3.0-beta01
14 maja 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-beta01 Wersja 1.3.0-beta01 zawiera te zmiany.
Zmiany w interfejsie API
- Używanie
DpSizezamiastCaretProperties. UsuwamCaretProperties. Zmień nazwęCaretScopenaTooltipScope. (Id9a76) - Zaktualizowano interfejs API do pobierania linków w tekście w motywie Material. W szczególności usunęliśmy metody z
TextDefaultsdo tworzenia tematycznychLinkAnnotationsi parsowania kodu HTML z tematycznymi linkami. Zamiast tego dodaliśmy klasęTextLinkStyles, która umożliwia stylowanie linków jako parametru funkcji kompozycyjnej Text. (I31b93)
Wersja 1.3.0-alpha06
1 maja 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-alpha06 Wersja 1.3.0-alpha06 zawiera te zmiany.
Zmiany powodujące niezgodność
Nowe interfejsy API do odświeżania przez przeciągnięcie:
- Uproszczony
PullToRefreshState, który używa wartości ułamkowych zamiast jednostek Dp. - Stan
isRefreshingjest kontrolowany przez użytkownika, a nie przezPullToRefreshState. - Oddzielono zagnieżdżone połączenie przewijania od elementu
PullToRefreshState. Zajmuje się tym nowyPullToRefreshBoxlubModifier.pullToRefresh. - Ta aktualizacja wprowadza zmiany, które mogą spowodować problemy z poprzednimi eksperymentalnymi interfejsami API. (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683)
- Uproszczony
Zmiany w interfejsie API
- Usunięto pole
RippleConfiguration#isEnabled, a poleLocalRippleConfigurationmoże teraz przyjmować wartość null. Aby wyłączyć efekt fali, zamiast podawaćRippleConfigurationz wartościąisEnabled = false, podajnulldoLocalRippleConfiguration. (I22725) ModalBottomSheetdokładniej rysuje zasłonę na pasku stanu, gdy włączony jest tryb od krawędzi do krawędzi. Treści w arkuszu dolnym mogą teraz wykorzystywać wcięcia okna, dzięki czemu treść będzie widoczna nad paskiem nawigacyjnym. ParametrModalBottomSheetwindowInsetszostał zmieniony nacontentWindowInsets, aby określić, gdzie będą stosowane wcięcia. Nie są one już powiązane z logiką okna. TypcontentWindowInsetszostał zmieniony na funkcję zwracającą wartośćWindowInsets, aby można było ją rozwiązać w nowym oknie. (I39630, b/274872542, b/300280229, b/290893168)PrimaryScrollableTabRowiSecondaryScrollableTabRowkorzystają teraz z układu niestandardowego zamiast z kompozycji podrzędnej, co powinno zwiększyć wydajność. (I991e0)- Linki tekstowe mają teraz opcję stylu stanu naciśnięcia oprócz normalnego stylu, stylu po najechaniu kursorem i stylu po zaznaczeniu.
TextDefaultsmetody otrzymały argumentpressedStyle, aby to umożliwić. (Ic473f, b/139312671)
Poprawki błędów
- Uchwyty przeciągania w panelu nawigacyjnym mają teraz szerokość
drawerContent. (Ibc72f, b/245355396) OutlinedTextFieldGórny odstęp etykiety uwzględnia teraz rozmiar czcionki systemowej. (Idc781)- Lokalizacja pakietu z poprawką:
CalendarLocale. (Ifa235) - [Przewidywane przejście wstecz] Zaktualizowano animacje przewidywanego przejścia wstecz, aby używać krzywej interpolacji (0,1, 0,1, 0, 1) (I2591a)
Wersja 1.3.0-alpha05
17 kwietnia 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-alpha05 Wersja 1.3.0-alpha05 zawiera te zmiany.
Nowe funkcje
SearchBariDockedSearchBarmają nowe przeciążenia, które przyjmują parametr pola tekstowego. Umożliwia to stylowanie pola tekstowego niezależnie od reszty paska wyszukiwania, a także przekazywanie niestandardowych pól tekstowych. Pole tekstowe bieżącej implementacji zostało udostępnione jakoSearchBarDefaults.InputField. (I50c73, b/275074248, b/278773336, b/326627700)- funkcja lambda
drawTickzostała dodana do publicznego interfejsu API, aby w razie potrzeby dostosować znaczniki (I0c048).
Zmiany w interfejsie API
- Oprócz normalnego stylu, stylu po najechaniu kursorem i stylu po zaznaczeniu linki tekstowe mają teraz styl po kliknięciu (I5f864, b/139312671).
- Zaktualizowano
CarouselItemInfo, aby udostępnić maskę Rect, przez którą element jest przycinany (I785d8) - Usunięto
BasicTooltipStatez publicznego interfejsu API Material 3. Jego funkcjonalność jest połączona zTooltipState, dopókiBasicTooltipFundacji nie zostanie ustabilizowany. (Icda29) - Dodano obiekt
TextDefaults, który zawiera metody tworzenia obiektuLinkAnnotationi parsowania ciągu znaków z tagami HTML, które stosująMaterialThemedo linków (I98532, b/139312671). ExposedDropdownMenuBoxScopenie zezwala już na podklasy. Menu z opcjami mają teraz elementMenuAnchorType, który należy przekazać do elementumenuAnchor, aby zapewnić lepszą dostępność. Zamiast przekazywać wartośćfocusabledo funkcjiExposedDropdownMenu, która została wycofana, należy używać tej metody.menuAnchorma nowy parametr do kontrolowania stanuenabled. (I55ee6, b/257209915, b/308840226)- Naprawiliśmy kolor obramowania
OutlinedButton, gdy jest wyłączony. Dodano przeciążenieButtonDefaults.outlinedButtonBorder("enabled"), które przyjmuje stan włączony. (Ie650b, b/318461363) - Dodaliśmy nową klasę
CarouselItemInfo, aby pomóc klientom w uzyskiwaniu informacji o rozmiarach produktów. (I9070c) - Konstruktor
ColorSchemebez kontenerów powierzchni jest teraz wycofywany. Przejdź na konstruktor, który zawiera kontenery powierzchni. (I35c11) - [Kontur]
TextFieldDefaultsContainerBoxzmienił(-a) nazwę naContainer. (Ie8d3b)
Poprawki błędów
BottomSheetScaffoldnie będzie już przewijać z zagnieżdżonego przewijania, jeślisheetSwipeEnabledma wartość false. (I5e1c1, b/306464779)- Usunęliśmy niektóre adnotacje
ExperimentalMaterial3ApiOptIn wIconButtonSamples.kt. (I111d1)
Wersja 1.3.0-alpha04
3 kwietnia 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-alpha04 Wersja 1.3.0-alpha04 zawiera te zmiany.
Nowe funkcje
- Dodano 2 eksperymentalne wersje karuzeli Material3 –
HorizontalMultiBrowseCarouseliHorizontalUncontainedCarousel(I88d64). - Zaktualizowano komponent Compose M3 Nav Drawer (
ModalDrawerSheetiDismissibleDrawerSheet), aby obsługiwał przewidywane przejście wstecz na urządzeniach z Androidem U+ jako funkcję opcjonalną (Ie5b0b). - Dodano nowy interfejs API w komponencie Icon, który umożliwia przekazywanie odcienia koloru jako funkcji lambda, aby uniknąć ponownego komponowania. (I5b5a2)
- Interfejsy API górnego paska aplikacji obsługują teraz niestandardowe wysokości zarówno w przypadku sekcji stałych, jak i zwijanych. (Ib8b0c, b/323403446)
Zmiany w interfejsie API
- Interfejsy API górnego paska aplikacji obsługują teraz niestandardowe wysokości zarówno w przypadku sekcji stałych, jak i zwijanych. Rozwiązaliśmy problem, który powodował zbyt częste ponowne komponowanie jednoliniowych pasków aplikacji u góry ekranu podczas przewijania treści. Rozwiązaliśmy problem z
MediumTopAppBarobcinaniem tytułów na urządzeniach z dużymi ustawieniami czcionki lub wyświetlacza. (Ib8b0c, b/323403446, b/300953236, b/286296147, b/330410290, b/308540676) SegmentedButtoni powiązane interfejsy API są teraz stabilne (I8a158)- Wersje
SwipeToDismissBox,SwipeToDismissBoxDefaults,SwipeToDismissBoxStateiSwipeToDismissBoxValuesą teraz oznaczone jako stabilne. (I5f000) - Usunęliśmy wycofane wyliczenia i interfejsy API
DismissDirectioniDismissValue. (I89ccd) - Dodano tag eksperymentalny do
CarouselStateobiektu towarzyszącego karuzeli. (I94154) - Wycofaliśmy
LocalMinimumInteractiveComponentEnforcementi wprowadziliśmyLocalMinimumInteractiveComponentSize, aby je zastąpić. (I7a7ac) - Konstruktor
SearchBarColorsjest teraz publiczny. (I769ca) - Dodano parametr
gesturesEnableddoSwipeToDismissBox. (Idc59f, b/324170119) - Usunięto interfejsy API pól tekstowych, które były oznaczone jako wycofane i eksperymentalne. (I1305f)
Wersja 1.3.0-alpha03
20 marca 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-alpha03 Wersja 1.3.0-alpha03 zawiera te zmiany.
Zmiany powodujące problemy wizualne
- Zaktualizuj nakładkę stanu zaznaczenia do wartości 0,1 f, aby zapewnić wystarczający kontrast kolorów. (I7ea77)
- Drobne korekty domyślnych kolorów powierzchni i tła w przypadku
lightColorSchemeidarkColorScheme. (I9db52)
Nowe funkcje
- Dodano parametry, aby dostosować
ExposedDropdownMenu. W szczególności menu mają teraz parametrfocusable(domyślnietrue), który w przypadku pracy z edytowalnymi polami tekstowymi należy ustawić nafalse. (I4184c, b/323694447, b/278609042)
Zmiany w interfejsie API
- Oznaczenie
ScaffoldSubcomposeInMeasureFixzostało usunięte. (Ie2a4b) NavigationRailItemColorsjest teraz oznaczony jako@Immutable. (If6112, b/327660613)NavigationBarItemColorsjest teraz oznaczony jako@Immutable. (I42a30, b/298064514)- Zmień kolejność parametrów w kompozycji Slider Track. (I9f315)
ExposedDropdownMenujest teraz wdrażana przy użyciu usługiPopup. Działanie powinno być takie samo, z wyjątkiem tego, że menu, na których można się skupić i które zawierają edytowalne pola tekstowe, mogą być zamykane podczas pisania na klawiaturze.
Poprawki błędów
- Role podstawowe Surface i Surface container zostały nieznacznie zmodyfikowane, dzięki czemu w motywach jasnym i ciemnym mają więcej odcieni. (I677a5)
- Zaktualizowano kolory suwaka i
ProgressIndicatorzgodnie z nową specyfikacją kontrastu elementów nietekstowych. (I26807) - Zaktualizuj nakładkę stanu zaznaczenia do wartości 0,1 f, aby zapewnić wystarczający kontrast kolorów. (I7ea77)
- Drobne korekty domyślnych kolorów powierzchni i tła w przypadku
lightColorSchemeidarkColorScheme. (I9db52)
Wersja 1.3.0-alpha02
6 marca 2024 roku
Publikacja androidx.compose.material3:material3-*:1.3.0-alpha02 Wersja 1.3.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- przywrócenie stabilności stanów suwaka. Ustawiam folder
State.onValueChangeFinishedjako aktualny… Zawijanie elementuonValueChangeFinishedw elementrememberUpdatedState. (I82ab2, b/322269951) - Komponenty Navigation używają teraz nowych ról
SurfaceContainer.DrawerDefaultsudostępnia teraz osobne atrybutystandardContainerColorimodalContainerColor.DrawerDefaults.ModalDrawerElevationto teraz0.dp. (I7fbac) - Usuwamy
@Stableze stanówSlider, ponieważ zmieniamystate.onValueChangeFinishednavar. (Ied34a, b/322269951) - Specyfikacja animacji
ModalBottomSheetiStandardBottomSheetjest terazTweenSpec, a nie animacją sprężynową. Rozwiązuje to problem z widocznym przekroczeniem. Wycofane konstruktorySheetStatebez gęstości zostały usunięte. (I7babc, b/285847707)
Poprawki błędów
- Komponenty korzystają teraz z wariantów
SurfaceContainer. Komponenty, które wcześniej obliczały kolor za pomocą funkcji Surface iTonalElevation, domyślnie używają teraz rólSurfaceContainer, na które nie ma wpływu podniesienie tonalne. (b/304584161) - Naprawiliśmy błąd, który powodował, że niezaznaczony, wyłączony kolor kontenera
ElevatedFilterChipbył czarny. (I400e6, b/322407043) - Naprawianie wskaźnika postępu bez określenia czasu oczekiwania, gdy postęp wynosi 0 (Id6582)
- Rozwiązaliśmy problem z znakami
SlideriRangeSliderw układzie od prawej do lewej (Iab0e1). - Dodawanie
SliderRangeTolerancedo obliczania zakresu suwaka, ponieważ zaokrąglanie liczb zmiennoprzecinkowych może być niedokładne. (Ic918a, b/324934900) - Upewnij się, że
DatePickerDialogwyświetla przyciski, gdy zawiera elementDateRangePickerlub gdy wyświetla selektor daty na małych ekranach z większymi czcionkami. (Ie4758, b/325107799, b/277768544) Menukorzysta teraz z roliSurfaceContainerw przypadku koloru kontenera.MenuDefaults.TonalElevationto teraz0.dp. (I135b7)TextFieldkorzysta teraz z roliSurfaceContainerHighestw przypadku koloru kontenera. (I4dced)- Elementy podniesione korzystają teraz z roli
SurfaceContainerLow(I7cd2f). - Kolor kontenera
DatePickerto terazSurfaceContainerHigh.DatePickerDefaults.TonalElevationto teraz0.dp. (Ida753) - Aktualizuje kolor kontenera Bottom Sheets i uchwytu do przeciągania. (I72a0a)
- Kolor kontenera
RichTooltipto terazSurfaceContainer. (Ia8b45) - Kolor kontenera
SearchBarto terazSurfaceContainerHighest.SearchBarDefaults.TonalElevationto teraz0.dp. (I88604) - Wyłącza przełącznik aktualizacji i wybiera niewybrane ścieżki/ikony, aby wykorzystać rolę koloru
SurfaceContainerHighest. (I7687a) - Kolor kontenera
AlertDialogto terazSurfaceContainerHigh. (Ie0433) - Kolor kontenera
BottomAppBarto terazSurfaceContainer. KolorTopAppBaronScrollto terazSurfaceContainer. (I41630) - Kolor kontenera
ElevatedCardto terazSurfaceContainerLow.FilledCardkolor konteneraSurfaceContainerHighest. (I35141) - Kolor kontenera
ElevatedButtonto terazSurfaceContainerLow.FilledIconButton, gdy nie są zaznaczone, mają teraz kolor konteneraSurfaceContainerHighest. (I792c9) - Aktualizuje kolor kontenera
TimePickeri rolę koloru tarczy zegara naSurfaceContainerHighest. (I43b93)
Wersja 1.3.0-alpha01
21 lutego 2024 r.
Publikacja androidx.compose.material3:material3-*:1.3.0-alpha01 Wersja 1.3.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
- Aktualizacja Compose M3
ModalBottomSheet, aby obsługiwać przewidywanie powrotu na urządzeniach z Androidem U+ (Iccf32, b/281967264, b/304850357) - Zaktualizowano Compose M3
SearchBar, aby obsługiwał przewidywane przejście wstecz w wersji U+ (I657f8) - Zaktualizowano suwak, aby zwiększyć dostępność przez dodanie odstępu i wskaźnika zatrzymania. (I3058e)
- Zaktualizowaliśmy
ProgressIndicator, aby poprawić dostępność przez dodanie wskaźnika przerwy i zatrzymania. (I21451) - Dodano domyślny znak wstawienia do rozbudowanej etykietki. Nowy interfejs API rozbudowanej etykietki umożliwia teraz rysowanie niestandardowego znaku wstawienia na podstawie elementu zakotwiczonego
LayoutCoordinates. (Ifd42c)
Zmiany w zachowaniu
- Komponenty Material zostały przeniesione, aby korzystać z nowych interfejsów API efektu falowania, i nie wysyłają już zapytań do
RippleTheme.
Zmiany w interfejsie API
- Zabawa
drawStopIndicatorjest teraz publiczna. (I3f59f) - Oznacz funkcję
DatePickerformatWithSkeletonjako wewnętrzną (Ic65dc). DropdownMenuobsługuje teraz niestandardowy kolor, kształt, wysokość i obramowanie. (I8e981, b/289554448, b/301887035, b/283654243)- Komponenty Material3, które w swoim interfejsie API udostępniały wartość
MutableInteractionSource, zostały zaktualizowane i teraz udostępniają wartośćMutableInteractionSourcez możliwością wartości null, która domyślnie ma wartośćnull. Nie ma tu żadnych zmian semantycznych: przekazanie wartości null oznacza, że nie chcesz podnosićMutableInteractionSource, a w razie potrzeby zostanie on utworzony wewnątrz komponentu. Ustawienie wartości null pozwala niektórym komponentom nigdy nie przydzielaćMutableInteractionSource, a innym tworzyć instancję tylko wtedy, gdy jest to potrzebne, co zwiększa wydajność tych komponentów. Jeśli nie używasz elementuMutableInteractionSourceprzekazywanego do tych komponentów, zalecamy przekazywanie zamiast niego wartości null. Zalecamy też wprowadzenie podobnych zmian we własnych komponentach. (I41abb, b/298048146) - Dodaje
RippleConfigurationiLocalRippleConfiguration, aby umożliwić dostosowywanie efektów falowania w poszczególnych komponentach lub poddrzewach za pomocą stałych wartości. Może to być na przykład zmiana koloru komponentu, nad którym nie masz kontroli, lub wyłączenie efektu fali w komponencie. W większości przypadków należy używać wartości domyślnych. Te interfejsy API służą do dostosowywania poszczególnych komponentów lub ograniczonych poddrzew. W przypadku większych zmian i niestandardowych systemów projektowania zamiast tego utwórz własny efekt fali za pomocą elementucreateRippleModifierNode. (I7b5d6, b/298048146) - Dodaje nowy interfejs API efektu falowania w material3, który zastępuje wycofany interfejs
rememberRipple. Dodaje też tymczasoweCompositionLocal,LocalUseFallbackRippleImplementation, aby przywrócić komponenty material3 do korzystania z wycofanych interfejsów APIrememberRipple/RippleTheme. Zostanie on usunięty w kolejnej stabilnej wersji i ma być tylko tymczasowym ułatwieniem migracji w przypadkach, gdy podajesz niestandardowy znakRippleTheme. (I34cbc, b/298048146)
Poprawki błędów
- Usunięto podkompozycję w
ModalBottomSheet, aby zwiększyć wydajność. Rozwiązaliśmy problem, który powodował awarięModalBottomSheetw określonych scenariuszach w połączeniu zLookaheadScope. (I2a198) - Usunięto podkompozycję w
BottomSheetScaffold, aby zwiększyć wydajność. Rozwiązaliśmy problem, który powodował awarięBottomSheetScaffoldw określonych scenariuszach w połączeniu zLookaheadScope. (Ie6401) - Wyrównanie plakietki jest dostosowywane tak, aby była bliżej środka treści kotwicy względem prawego górnego rogu. (I18a28)
- Rozwiązaliśmy problem z ułatwieniami dostępu w
DateRangePicker, polegający na tym, że tekst „Miesiąc–Rok” był przekazywany użytkownikom czytnika ekranu, Switch Access i Voice Access jako element, którego można użyć. (I2ac55) - Naprawiono błąd kolejności parametru
mediumTopAppBarColors. (Ibe64a)
Wersja 1.2
Wersja 1.2.1
6 marca 2024 roku
Publikacja androidx.compose.material3:material3-*:1.2.1 Wersja 1.2.1 zawiera te zmiany.
Poprawki błędów
- Przywróć stabilność stanów suwaka. Ustawiam folder
State.onValueChangeFinishedjako aktualny… Zawijanie elementuonValueChangeFinishedw elementrememberUpdatedState. (Ie8fd0, b/322269951) - Usuwamy
@Stableze stanówSlider, ponieważ zmieniamystate.onValueChangeFinishednavar. (I82ba1, b/322269951) - Popraw
NavigationBarspersonalizowane kolory, aby można było je kopiować z domyślnych. (80a779, b/326894020) - Napraw regresję w
ExposedDropdownMenu, aby ponownie można było ustawić na nim fokus (3fcec1, b/323694447) - Naprawiliśmy problem z buforowaniem koloru przycisku (3e5bbcb/327371655).
Wersja 1.2.0
7 lutego 2024 r.
Publikacja androidx.compose.material3:material3-*:1.2.0 Wersja 1.2.0 zawiera te zatwierdzenia.
Znany problem
- W wersji
PrimaryTabRowwprowadzono błąd renderowania w ramach interoperacyjności View-Compose. Było to związane ze zmianą mającą na celu poprawę wydajności. Obejście problemu polega na użyciuTabRowzTabRowDefaults.PrimaryIndicator.
Ważne zmiany od wersji 1.1.0
Nowe komponenty Material Design 3
- Pociągnij, aby odświeżyć
- Przycisk segmentowy
Ulepszenia istniejących komponentów Material Design 3.
- Dolny pasek aplikacji (wyrównanie RTL, automatyczne ukrywanie podczas przewijania)
- Zmiany wizualne na kartach
- Plakietka (aktualizacja wyrównania)
Promocja eksperymentalnych interfejsów API do wersji stabilnej
Usprawnienia wydajności
- Więcej informacji znajdziesz w tym poście na blogu.
Wersja 1.2.0-rc01
24 stycznia 2024 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-rc01 Wersja 1.2.0-rc01 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawiono błąd kolejności parametru
mediumTopAppBarColors. (Ibe64a) - Naprawiliśmy błąd wprowadzony w
1.2.0-beta02wCardDefaults.cardColors, który nie aktualizowałcontentColorna podstawie wartości parametrucontainerColor. (Iee041, b/319671246) - Naprawiliśmy błąd w
disabledContentColor, który pojawił się w1.2.0-beta02, i wprowadziliśmy niewielką optymalizację. (I6dda1, b/318428829)
Wersja 1.2.0-beta02
10 stycznia 2024 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-beta02 Wersja 1.2.0-beta02 zawiera te zmiany.
Znany błąd
- Błąd w
IconButtonColorsdomyślnie przypisujedisabledContentColordo wartości alfa (0,38f)LocalContentColorzamiast do wartościcontentColorokreślonej przez użytkownika. Obejście tego problemu polega na wyraźnym ustawieniu parametrudisabledContentColor. Naprawimy to w kolejnej wersji.
Zmiany w interfejsie API
- Dodanie możliwości włączania karetki podpowiedzi w przypadku interfejsów API Plain
Tooltip. (Ibf767) - Nazwy
SwipeToDismissState,rememberSwipeToDismissiSwipeToDismissValuezostały zmienione na_SwipeToDismissBox_. (I68d6d)
Poprawki błędów
- Stała wartość dopełnienia na końcu
ListItem, aby była zgodna ze specyfikacją. (Ibd68b, b/305342674) - Kolor konturu karty z konturem jest teraz prawidłowo mapowany na kolor
OutlineVariant. (I75480, b/310979715) - Dynamiczne kolory są teraz pobierane z ról kolorów zdefiniowanych przez system. Poprawia to kontrast w przypadku treści dostępnych dla osób z niepełnosprawnościami i lepiej dopasowuje dynamiczne kolory do specyfikacji Material. (I1de96)
- Naprawiono obsługę przycisku
ModalBottomSheetna Androidzie T/13+, gdyandroid:enableOnBackInvokedCallback="true". (I728dc, b/306196110)
Wersja 1.2.0-beta01
13 grudnia 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-beta01 Wersja 1.2.0-beta01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Oznacz
TabIndicatorScopejako eksperymentalne. (I45c88) - Usunięcie wycofanych eksperymentalnych interfejsów API dla etykietki. (I438cb)
- Zmień nowe przeciążenia
TabRow, aby nie korzystały z podkompozycji. W rezultacie wskaźnikiTabRowsą tworzone w inny sposób z użyciem podanych modyfikatorów niestandardowych. (Ife741) - Wycofaj interfejsy API
DismissDirectioniDismissValue. Zostały one scalone wSwipeToDismissValue, którego wartości wskazują zarówno pozycję, jak i kierunekSwipeToDismissBox.DismissState.progressjest teraz oznaczony jakoFloatRangez zakresu od0.0do1.0. Wycofane funkcjeDismissStateSaver i Constructor zostały usunięte. KomponentSwipeToDismiss, obiekt stanu i obiekt domyślny zostały oznaczone jako eksperymentalne. (Ib54f2)
Poprawki błędów
- Domyślny wskaźnik dla
PullToRefreshto teraz otwarty grot strzałki zamiast pełnego trójkąta. (I67be3)
Wersja 1.2.0-alpha12
29 listopada 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha12 Wersja 1.2.0-alpha12 zawiera te zmiany.
Zmiany w interfejsie API
RangeSliderprzyjmuje teraz zakres Kotlin (np.0f..1f) zamiast niestandardowej klasy wartościFloatRange.SnapFlingBehavior.ktkorzysta teraz również z zakresu Kotlin. (I025cb)- Oznacz funkcje fabryczne Mark Modifier jako
@Stable. (Ib109f)
Wersja 1.2.0-alpha11
15 listopada 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha11 Wersja 1.2.0-alpha11 zawiera te zmiany.
Nowe funkcje
- Implementuje
PullToRefreshContaineriPullToRefreshState, które razem zapewniają implementację odświeżania przez przeciągnięcie w Material3. (I16456, b/261760718)
Zmiany w interfejsie API
- Oznacz
SwipeToDismissBoxDismissDirectioniDismissValuejako eksperymentalne. (I517b0) - Zmień nazwę
SwipeToDismissnaSwipeToDismissBox. Zmień nazwębackgroundnabackgroundContent, adismissContentna końcowe wyrażenie lambdacontent. (I7f4d3) - Udostępnij konstruktor dla
ChipElevationiSelectableChipElevation. (Ie0c48, b/308432421) - Dodaję
ModalBottomSheetProperties. Przenoszę elementsecurePolicydoModalBottomSheetProperties. DodawanieisFocusableishouldDismissOnBackPressdoModalBottomSheetProperties. Te nowe wartości logiczne pomagają określić, jak dolny arkusz modalny powinien obsługiwać zdarzenia IME. (Iea56f, b/278216859) - Zaktualizowaliśmy stany
RangeSlideriSlider, aby usunąćinitialOnValueChange, początkowe prefiksy i odpowiednie dokumenty kdoc. (I57d30) - Wycofaj klasę
ChipBorderi powiązane z nią wywołania funkcji. Zamiast tego zalecamy bezpośrednie używanie klasyBorderStroke. (I89cc2) - Interfejsy Foundation Tooltip API są teraz
@ExperimentalFoundationApi. (I30b0b) - Atrybuty
TabRowiScrollableTabRownie są już wycofywane. Nowe warianty Podstawowy i Dodatkowy są oznaczone jako eksperymentalne. (I0def6) - Filtry i elementy wejściowe korzystają teraz bezpośrednio z
BorderStroke. (I07a8d) SegmentedButtonkorzysta teraz bezpośrednio zBorderStroke. (I89b9b)- Zmieniliśmy nazwę ogólnej funkcji
AlertDialognaBasicAlertDialogi wycofaliśmy poprzednią funkcję. (Idbe52) - Zmieniliśmy nazwę interfejsów
SwipeToDismissnaSwipeDismissi przekształciliśmy nowe interfejsySwipeDismissw stabilne. (I14cbe) - Dodawanie
tonalElevationishadowElevationdo interfejsów API etykietek. Dodatkowo interfejsy APITooltipBox,PlainTooltipiRichTooltipzostały przywrócone do wersji eksperymentalnej, ponieważ zostały przypadkowo udostępnione jako stabilne. (If0f66, b/293939035) - Promowanie eksperymentalnych interfejsów API do wersji stabilnej. (Iea2c3)
- Usunięto adnotację
@ExperimentalMaterial3Apiz klikanych kart Material3. (I88dbf)
Poprawki błędów
- Rozwiązaliśmy problem, który powodował, że w określonych scenariuszach z zagnieżdżonymi układami Lookahead i Lazy aplikacja
SwipeToDismissulegała awarii. (Ica8d1, b/297226562)
Wersja 1.2.0-alpha10
18 października 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha10 Wersja 1.2.0-alpha10 zawiera te zmiany.
Zmiany w interfejsie API
- Promowanie wersji
BadgeiBadgedBoxdo wersji stabilnej. (I67f16, b/261565132) - Dodanie
securePolicyjako parametru doModalBottomSheet, aby użytkownicy mogli określać zachowanieWindowManager.LayoutParams.FLAG_SECURE. (Icdac8, b/296250262) - Dodano nowe przeciążenia funkcji
LinearProgressIndicatoriCircularProgressIndicator, które przyjmują funkcjęprogressjako lambdę. Powinny one działać lepiej niż poprzednie wersje. (I824e6, b/295616656) - Zmienia nazwę
StandardSizeClassesnaAllSizeClasses. (I8cb07) - Połącz funkcje obliczania klas rozmiarów okien. (Iad935)
Poprawki błędów
- Naprawiono błąd
DatePicker, który występował podczas szybkiego klikania przycisków strzałek nawigacji, gdy wyświetlany miesiąc znajdował się na skraju dopuszczalnego zakresu lat. (I46f36, b/290954897, b/297002119) - [Pasek nawigacyjny] Obsługa przezroczystego koloru wskaźnika. (Ie0a9b, b/267289987)
Wersja 1.2.0-alpha09
4 października 2023 roku
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha09 Wersja 1.2.0-alpha09 zawiera te zmiany.
Zmiany w interfejsie API
- Przeniesiono
ModalNavigationDraweriDismissibleNavigationDrawer, aby korzystać z nowych interfejsówAnchoredDraggableAPI.DrawerStateanimateTozostało zastąpione metodami open i close, a przesunięcie jest teraz udostępniane jako liczba zmiennoprzecinkowa zamiast obiektu stanu. Możesz uzyskać dostęp do przesunięcia bezpośrednio za pomocącurrentOffset. (I0a72c) - Dodaliśmy funkcje niekomponowalne, które umożliwiają bezpośrednie tworzenie elementów
DatePickerStateiDateRangePickerState. W razie potrzeby można ich używać zamiast funkcjirememberDatePickerStateirememberDateRangePickerState. (I70326, b/291524052) - Typy stałe i przewijane
TabRowsmają teraz warianty podstawowe i dodatkowe. Są one prawidłowo mapowane na kolor i zachowanie wskaźnika zgodnie z definicją w Material 3. PrimaryScrollableTabRowiSecondaryScrollableTabRowudostępniają teraz stan przewijania. (Iec8f5, b/260572337)- Dodaliśmy nowy parametr
sheetMaxWidth, który programiści mogą ustawić, aby określić maksymalną szerokość arkusza. Jeśli chcesz, aby arkusz zajmował całą szerokość ekranu, możesz przekazać wartość Dp.Unspecified. (Ifb7c9, b/266697696) - Przywrócenie interfejsów API
PlainTooltipBoxiRichTooltipBoxjako metod wycofanych. (I246fa)
Poprawki błędów
- Naprawiono błąd powodujący awarię podczas inicjowania
DatePickerza pomocąDatePickerFormatter, która ma określone szablony dat, które pozostają takie same po przekształceniu w wzorce dat (np. RR). (I01f29)
Wersja 1.2.0-alpha08
20 września 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha08 Wersja 1.2.0-alpha08 zawiera te zmiany.
Zmiana powodująca niezgodność w działaniu
ColorSchemejest teraz niezmienny, co sprawia, że aktualizowanie poszczególnych kolorów jest mniej wydajne, ale bardziej wydajne jest częstsze używanie kolorów. Uzasadnieniem tej zmiany jest fakt, że większość aplikacji nie ma aktualizowania poszczególnych kolorów jako głównego przypadku użycia. Jest to nadal możliwe, ale będzie wymagało większej liczby ponownych kompozycji niż wcześniej. W rezultacie znacznie zmniejszymy liczbę subskrypcji stanu w całym kodzie Material, co wpłynie na koszt inicjowania i działania w przypadku bardziej standardowych zastosowań. (Ic447d, b/297212873)- Podniesienie tonalne nie jest już animowane w różnych stanach interakcji, aby pasowało do specyfikacji. (Icdd12)
Zmiany w interfejsie API
- Dodano nowy element
BottomAppBar, który przyjmuje jako parametr elementBottomAppBarScrollBehavior, aby automatycznie go ukrywać podczas przewijania treści. Dodano teżFabPosition.EndOverlaymożliwość nakładania przycisku typu FAB na dolny pasek aplikacji w strukturze zamiast zakotwiczenia go nad nim. (Iecb47) - Dodaliśmy prosty komponent Etykieta, który bazuje na
BasicTooltipBoxi nie zamyka się po kliknięciu poza jego granicami. (I821f9)
Poprawki błędów
- Usunięto użycie
rememberSaveablew etykietkach. (Icc131, b/299500338) - Wprowadzono tymczasową flagę, która określa, czy komponent Scaffold ma mierzyć swoje elementy podrzędne podczas pomiaru czy podczas umieszczania. Domyślnie będzie to pomiar. Jeśli masz problemy z nowym działaniem, zgłoś je. (I0b354)
- Stała pozioma od krawędzi do krawędzi w
BottomSheetprzy użyciu prawidłowego pomiaru szerokości ekranu urządzenia. (I1df0c, b/299058752) - Rozwiązaliśmy błąd polegający na tym, że
ModalBottomSheetnie wywoływałonDismissedRequestpo zamknięciu go przez przesunięcie arkusza w dół. (Idfdd8)
Wersja 1.2.0-alpha07
6 września 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha07 Wersja 1.2.0-alpha07 zawiera te zmiany.
Nowe funkcje
- W
compose material 1.6.0-alpha05dodaliśmy obsługę automatycznego odbijania ikon. Szczegółowe informacje o automatycznym odbijaniu ikon znajdziesz w informacjach o wersji.
Zmiany w interfejsie API
SliderStateimplementujeDraggableState(I9b116)- Zmień kształt na wymagany parametr. Zmień nazwę
positionnaindexw funkcji pomocniczej kształtu. (I34941) - Aktualizuje
DatePickerformatWithSkeleton, aby uwzględnić mapę używaną jako pamięć podręczna w celu zwiększenia wydajności. (I3195f) - Dodano
BasicTooltipBoxdocompose.foundationi zaktualizowanoPlainTooltipBoxorazRichTooltipBox, aby używaćTooltipBoxz nowymi komponentamiPlainTooltipiRichTooltip. (I79e1d)
Poprawki błędów
dynamicLightColorSchemeidynamicDarkColorSchemezwracają teraz kolory o wyższej chromatyczności w przypadku ról powierzchni isurfaceContainer. (I5e901)- Rozwiązaliśmy problem polegający na tym, że niektóre komponenty korzystające z kompozycji podrzędnej (np.
BottomSheetScaffold) w komponencie Scaffold w komponencieLookaheadScopepróbowały odczytać swój rozmiar zbyt wcześnie. (I297b4, I871f1, b/295536718)
Wersja 1.2.0-alpha06
23 sierpnia 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha06 Wersja 1.2.0-alpha06 zawiera te zmiany.
Poprawki błędów
- Poprawiliśmy obliczenia
DropdownMenuioffset, aby przesunięcia wzdłuż osi X zależały wyłącznie od lokalnego kierunku układu, a przesunięcia wzdłuż osi Y nie były już odwracane, gdy menu znajduje się w pobliżu dolnej krawędzi ekranu. (Iccc74, b/294103942) - Poprawiliśmy obliczenia
DropdownMenuioffset, aby przesunięcia wzdłuż osi X zależały wyłącznie od lokalnego kierunku układu, a przesunięcia wzdłuż osi Y nie były już odwracane, gdy menu znajduje się w pobliżu dolnej krawędzi ekranu. (Ib87a2, b/294103942)
Wersja 1.2.0-alpha05
9 sierpnia 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha05 Wersja 1.2.0-alpha05 zawiera te zmiany.
Zmiany w interfejsie API
- Aktualizacje kolorów pola wyboru i
TriStateCheckbox.CheckboxDefaults.colors()disabledUncheckedColorwpływa teraz tylko na obramowanie pola wyboru. W szczególnych przypadkach, w których musisz ustawić kolor wewnętrznego pola, gdy jest ono wyłączone i niezaznaczone, wymagane jest utworzenie niestandardowej instancji elementuCheckboxColorsz odpowiednimi wartościami kolorów. (I77d17, b/291943198)
Wersja 1.2.0-alpha04
26 lipca 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha04 Wersja 1.2.0-alpha04 zawiera te zmiany.
Nowe funkcje
- Eksperymentalny interfejs Segmented Button API (Ifc8fb)
- Elementy dzielące mają teraz parametr umożliwiający kontrolowanie orientacji, dzięki czemu obsługują elementy dzielące w pionie. (I4c899, b/288438593)
Zmiany w interfejsie API
- Przenosimy zależność od gęstości na poziom komponentu. Dotyczy to tych komponentów:
SwipeToDismissi komponentów opartych na arkuszach. Użyj nowego przeciążenia, w którym gęstość jest parametrem. (I1846e) - Dodatkowe adnotacje określające dozwolone dane wejściowe funkcji kompozycyjnych (Ief234)
- Dodaj parametr ikony do przycisku segmentowego, podziel semantykę, aby przyciski segmentowe można było wybierać w celu implementacji pojedynczego wyboru i przełączać w celu implementacji wielokrotnego wyboru, odpowiednio za pomocą
SelectableSegmentedButtonRowiToggelableSegmentedButtonRow. (I38740) - Separator ma teraz nazwę
HorizontalDivider. Dodano funkcjęVerticalDivider. (I5975c) - Zmień użycie
ClosedFloatingPointRangena lżejszy typFloatRangew eksperymentalnych interfejsach Material3 API, aby zminimalizować automatyczne pakowanie. (I4aab5) - Dodano nowe wyrównanie do początku dla
FabPosition(Ib7aea, b/170592777)
Poprawki błędów
ModalBottomSheetszanuje lokalny kierunek układu. (Ib4f44, b/285628622)
Wersja 1.2.0-alpha03
21 czerwca 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha03 Wersja 1.2.0-alpha03 zawiera te zmiany.
Zmiany w zachowaniu
includeFontPaddingjest teraz domyślniefalsew typografii Material 3. Domyślny styl wysokości wiersza został też zmieniony naTrim.NoneiAlignment.Center, a doTextStylewTypographydodano wyraźnelineHeight(w sp). Jeśli chcesz dostosować te wartości, zapoznaj się z dokumentacją interfejsu API. Szczegółowe wyjaśnienie tych zmian znajdziesz w poście na blogu. (I6266f, Icabc3)
Nowe funkcje
- Dodano przeciążenie funkcji
RangeSlider, które jest wersją komponentu z zachowywaniem stanu. UtworzonoRangeSliderState, który zawiera wszystkie informacje o bieżącym aktywnym śladzie, pomiary komponentówRangeSlideroraz logikę przeciągania i gestów. (I8c270) - Pasek wyszukiwania obsługuje teraz cienie dzięki nowo dodanemu parametrowi
shadowElevation. (Ia5369, b/271040353) ColorSchemeobsługuje teraz noweSurfaceContainerrole.- Nakładkę tonalną wysokości terenu można teraz wyłączyć za pomocą kompozycji lokalnej
LocalTonalElevationEnabled. (Ic203c, b/277774590)
Zmiany w interfejsie API
- Otwórz konstruktory kolorów komponentów. (I8c4a6)
- Dodanie parametru focusable do obu interfejsów API etykietek, aby deweloperzy mogli określać, czy etykietka ma obsługiwać zdarzenia dotyku. Uważaj, ponieważ może to spowodować przerwanie automatycznego przechodzenia między elementami dostępności. (Ie32d8)
- Zoptymalizowana dostępność pod kątem wydajności i alokacji pamięci. (Iede48)
- Udostępnij
DefaultSizeClassesi utwórzStandardSizeClassesdlaWindowSizeClasses(I91838) - zmień
WindowWidth/HeightSizeClassna klasy wartości zmiennoprzecinkowych (Ie686e);
Poprawki błędów
- Parametr
contentWindowInsetskomponentu Scaffold uwzględnia teraz wykorzystane wstawki okna. Pamiętaj, że działanie dopełnienia treści na podstawie parametrówtopBaribottomBarpozostaje bez zmian, gdy są one podane. (I08b73, b/264601542) - Popraw wyrównanie środkowego górnego paska aplikacji, aby długi tytuł nie nakładał się na ikony działań ani ikonę nawigacji. (I4369f, b/236994621)
- Pozycje kart wymuszają teraz minimalną szerokość treści wynoszącą 24 dp. Zapewnia to dostępny docelowy element dotykowy dla wskaźników kart. (Id8861)
- Dynamiczne palety kolorów z
dynamicLightColorSchemeidynamicDarkColorSchemeobsługują teraz nowe role platformy. (I1252e) - Aktualizacja wyrównania powiadomienia z plakietką, aby nie było przycinane w przypadku kolizji z elementem nadrzędnym drugiego stopnia. (Idf75a)
Wersja 1.2.0-alpha02
24 maja 2023 r.
Publikacja androidx.compose.material3:material3-*:1.2.0-alpha02 Wersja 1.2.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaj parametr wstawień okna do
ModalBottomSheet.- Element
ModalBottomSheetmoże być teraz rysowany za paskiem stanu, gdy wartośćwindowInsetsjest ustawiona na zero. - Zaktualizowana domyślna funkcja
ModalBottomSheet, która nie obejmuje pasków systemowych, w tym paska nawigacyjnego - Obsługa wcięcia paska stanu jest zapewniana przez uchwyt przeciągania w trybie od krawędzi do krawędzi.
BottomSheetDefaultszawiera wstawki okien dlaBottomSheetWindow. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- Element
- Wycofaj
Indicatori dodajPrimary/SecondaryIndicator, aby dopasować je do specyfikacji M3.PrimaryIndicatordopasowuje się do szerokości treści karty, aSecondaryIndicatorzajmuje całą dostępną szerokość.SecondaryIndicatorjest odpowiednikiem wycofanego już parametruIndicatori może go bezpośrednio zastąpić. (I27604) - Dodaliśmy opcję przekazywania wartości
ScrollStatepodczas tworzenia elementuDropdownMenulubExposedDropdownMenu, aby kontrolować stan przewijania w pionie wyświetlanych elementów menu. (Ia0734, b/185304441) - Dodano przeciążenie funkcji
Slider, które jest wersją komponentu z zachowywaniem stanu. UtworzonoSliderState, który zawiera wszystkie informacje o bieżącym aktywnym śladzie, pomiary komponentówSlideroraz logikę przeciągania i gestów. (I124a5) - Zmiana nazwy usługi Semantyka z
isContainernaisTraversalGroup(I121f6) - Dodano zoptymalizowany element
TextStyle.merge(...)z pełną listą parametrów. (Iad234, b/246961787) - Udostępniono interfejsy
TooltipState,RichTooltipStateiPlainTooltipState. Dodano stany domyślneRichTooltipStateImpliPlainTooltipStateImpl. Dodano funkcjeremember*State, aby uzyskać te stany wdrożenia. UsuniętoTooltipSyncna rzeczTooltipDefault.GlobalMutatorMutex. (I7813d) - Zaktualizowano
DatePickerColors, aby uwzględnić dodatkowe opcje dostosowywania koloru separatora, nawigacji i pól wpisywania tekstu w selektorze daty. (I1a685, b/274626815) DatePickerStateiDateRangePickerStateto teraz publiczne interfejsy z domyślnymi implementacjami, które można pobrać za pomocąrememberDatePickerStateirememberDateRangePickerState. (I71c52)- Usunęliśmy
dateValidatorzDatePickeriDateRangePickeroraz wprowadziliśmy interfejsSelectableDates, który można ustawić w stanie, aby kontrolować, które daty lub lata można wybrać w interfejsie. (Ic2fc6) TimePickerusunięto ze stabilnego interfejsu API. W interfejsie API stanu oczekiwane są dalsze zmiany (I3f39a).ModalBottomSheetprzeniesiono tylko na Androida.ModalBottomSheetnie jest zalecane do użytku na komputerach, a funkcja nie jest aktywnie aktualizowana. (Ib3778)
Poprawki błędów
- Naprawiono działanie
AlertDialogodrzucania, aby pojawiało się pod działaniem potwierdzania, gdy działania były ułożone jeden nad drugim, aby zmieścić się w szerokości okna. Ta poprawka dostosowuje implementację do specyfikacji Material Design. (I029de, b/235454277) - Naprawiliśmy błąd w
ListItem, który powodował nieprawidłowe dopełnienie w przypadku elementów zamówienia z 3 wierszami. (I6e235) ModalBottomSheetmoże teraz wyświetlać klawiaturę IME (Idc508, b/262140644, b/268380384, b/272483584).
Wersja 1.2.0-alpha01
10 maja 2023 r.
Publikacja androidx.compose.material3:material3:1.2.0-alpha01 i androidx.compose.material3:material3-window-size-class:1.2.0-alpha01 Wersja 1.2.0-alpha01 zawiera te zmiany.
Wersja 1.1
Wersja 1.1.2
20 września 2023 r.
Publikacja androidx.compose.material3:material3:1.1.2 i androidx.compose.material3:material3-window-size-class:1.1.2 Wersja 1.1.2 zawiera te zatwierdzenia.
Poprawki błędów
- Naprawiono błąd, który powodował nieprawidłowe przekazywanie modyfikatora do 2 kompozycji. (b/282761472)
- Rozwiązaliśmy problem z funkcją
TimePickerState, która zwracała nieprawidłową liczbę godzin po zainicjowaniu z 23 godzinami. (b/278242122) - Poprawiono początkowy stan przełącznika w przypadku weryfikacji południa i minut. (b/269768197, b/282790635)
- Naprawiono błąd funkcji
state.hour, która zwracała nieprawidłową wartość dla godziny 23:00. (b/282761472, b/278242122)
Wersja 1.1.1
21 czerwca 2023 r.
Publikacja androidx.compose.material3:material3:1.1.1 i androidx.compose.material3:material3-window-size-class:1.1.1 Wersja 1.1.1 zawiera te zatwierdzenia.
Poprawki błędów
- Dodaje wywołanie
ModalBottomSheetbez parametruwindowInsetw celu zapewnienia kompatybilności binarnej. (Ib7959) - Dodaj parametr wstawień okna do
ModalBottomSheet.- Element
ModalBottomSheetmoże być teraz rysowany za paskiem stanu, gdy wartośćwindowInsetsjest ustawiona na zero. - Zaktualizowana domyślna funkcja
ModalBottomSheet, która nie obejmuje pasków systemowych, w tym paska nawigacyjnego - Obsługa wcięcia paska stanu jest zapewniana przez uchwyt przeciągania w trybie od krawędzi do krawędzi.
BottomSheetDefaultszawiera wstawki okien dlaBottomSheetWindow. (I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- Element
Wersja 1.1.0
10 maja 2023 r.
Publikacja androidx.compose.material3:material3:1.1.0 i androidx.compose.material3:material3-window-size-class:1.1.0 Wersja 1.1.0 zawiera te zmiany.
Główne funkcje wersji 1.1.0
Nowe komponenty Material Design 3
Ulepszenia istniejących komponentów Material Design 3.
Promocja eksperymentalnych interfejsów API do wersji stabilnej
Więcej informacji znajdziesz w tym poście na blogu.
Wersja 1.1.0-rc01
19 kwietnia 2023 r.
Publikacja androidx.compose.material3:material3:1.1.0-rc01 i androidx.compose.material3:material3-window-size-class:1.1.0-rc01 Wersja 1.1.0-rc01 zawiera te zmiany.
Zmiany w interfejsie API
TimePickerusunięto ze stabilnego interfejsu API. W interfejsie API stanu oczekiwane są dalsze zmiany (I3f39a).ModalBottomSheetprzeniesiono tylko na Androida.ModalBottomSheetnie jest zalecane do użytku na komputerach, a funkcja nie jest aktywnie aktualizowana. (Ib3778)
Wersja 1.1.0-beta02
5 kwietnia 2023 r.
Publikacja androidx.compose.material3:material3:1.1.0-beta02 i androidx.compose.material3:material3-window-size-class:1.1.0-beta02 Wersja 1.1.0-beta02 zawiera te zmiany.
Zmiany w interfejsie API
SheetStatema teraz opcjonalny parametrskipHiddenStaterememberStandardBottomSheetStatema teraz opcjonalny parametrskipHiddenStateBottomSheetScaffoldma teraz zdefiniowaną ukrytą kotwicę, ale jest ona domyślnie wyłączona.- Zaktualizowano dokumentację
SheetState.requireOffset - Nazwa usługi
BottomSheetDefaults.MinimizedShapezostała zmieniona naBottomSheetDefaults.HiddenShape(I839f4, b/273870234)
Poprawki błędów
- Nie przełączaj tarczy z godzin na minuty, gdy włączone jest eksplorowanie przez dotyk. (I717d0)
- Semantyka uchwytów przeciągania
ModalBottomSheetiBottomSheetScaffoldzostała scalona. (I05afb) - Modyfikator
BottomSheetScaffoldoraz parametrycontainerColoricontentColormają teraz wpływ tylko na treść. (I992cb) BottomSheetScaffold nestedScrollw przypadku treści arkusza obsługuje teraz szybkie przesunięcia. (I992cb)
Wersja 1.1.0-beta01
22 marca 2023 r.
Publikacja androidx.compose.material3:material3:1.1.0-beta01 i androidx.compose.material3:material3-window-size-class:1.1.0-beta01 Wersja 1.1.0-beta01 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaj parametr typu układu do funkcji kompozycyjnej
TimePicker. Umożliwia korzystanie z różnych układów w zależności od konfiguracji ekranu (Ia0e16). SearchBarDefaultszostał oznaczony jako eksperymentalny. (I65561)- Dodano wysokość cienia do
BottomSheetScaffold(I94e0f) - Dodaliśmy obsługę wyświetlania selektorów dat bez części nagłówkowej. Zmiany w interfejsie API umożliwiające przekazywanie nagłówka o wartości null podczas tworzenia selektora daty. Aby wyświetlić selektor bez nagłówka, możesz teraz przekazywać wartości null w przypadku nagłówka, tytułu i
showToggleMode = false. (Id3f3a, b/266132421, b/267194809)
Poprawki błędów
- Paski wyszukiwania automatycznie tracą fokus, gdy stają się nieaktywne. (I22a7c, b/261444487)
- Zaktualizowaliśmy
DateRangePicker, aby umożliwić wybór zakresu z tą samą datą rozpoczęcia i zakończenia. (I16529, b/272882497) - Pola tekstowe prawidłowo pozycjonują teraz elementy tekstowe, gdy rozmiar czcionki jest mniejszy niż oczekiwano. Może to spowodować zmianę o kilka pikseli w aplikacjach w zależności od ustawień czcionki i skryptu. (I8b8d0)
- Działania semantyczne na planszy dolnej mają teraz etykiety. (I277b0)
Wersja 1.1.0-alpha08
8 marca 2023 r.
Publikacja androidx.compose.material3:material3:1.1.0-alpha08 i androidx.compose.material3:material3-window-size-class:1.1.0-alpha08 Wersja 1.1.0-alpha08 zawiera te zmiany.
Nowe funkcje
- Dodaliśmy obsługę właściwości
BottomSheetScaffoldiBottomSheetScaffoldState. (I063d4)
Zmiany w interfejsie API
- Dodaliśmy funkcje do elementów
DatePickerStateiDateRangePickerState, które umożliwiają ustawianie dat po początkowym utworzeniu stanu, a także resetowanie wyborów przez ustawianie znaczników czasu o wartości null. Daty należy ustawiać ręcznie z ostrożnością. Nowa funkcjasetSelectionzgłosi wyjątek, jeśli podana data nie spełni warunku wstępnego (patrz dokumentacja). (Ifa645, b/268609314, b/270427389) - Zmieniliśmy nazwę stanu zwiniętego
SheetValuenaPartiallyExpanded, aby dokładniej i bardziej elastycznie opisywać zachowanie w tym stanie. (Ia1491) - Zaktualizowaliśmy nazwy parametrów
ListItemna _content zamiast _text. Domyślne metody pobierania wartości są teraz w odpowiednich przypadkach oznaczone jakoReadOnlyComposables. (I69a25) - Wprowadzenie interaktywnych interfejsów API Surface z wersji eksperymentalnej. (I90d59, b/261561812)
Poprawki błędów
- Rozwiązaliśmy problem, który powodował, że stan
ModalBottomSheetHalfExpandedbył obliczany nieprawidłowo, a arkusz wydawał się unosić. (I45e84, b/268411386) - Dodaj
confirmValueChangedo dotknięcia siatki ochronnej w przypadkuModalBottomSheet. (I2311a, b/270425759) - Przenieś działania semantyczne
BottomSheetna uchwyt przeciągania. (I158ba) ModalBottomSheetteraz przejmuje fokus po uruchomieniu i obsługuje przycisk Wstecz. (I4d2ab)ModalBottomSheet onDismissRequestjest teraz obsługiwane również podczas przewijania zagnieżdżonego. (I655c5, b/268433166)
Wersja 1.1.0-alpha07
22 lutego 2023 roku
Publikacja androidx.compose.material3:material3:1.1.0-alpha07 i androidx.compose.material3:material3-window-size-class:1.1.0-alpha07 Wersja 1.1.0-alpha07 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj funkcję kompozycyjną Time Input, która współpracuje z
rememberTimePickerState()i jest zgodna ze specyfikacją M3 dotyczącą wprowadzania czasu (Ia4fab). - Dodano interfejs Material 3
DateRangePickerAPI do wybierania zakresu dat. (I7a6c3, b/267194809) - Dodano obsługę trybu wprowadzania Material 3 do wybierania zakresów dat za pomocą interfejsu
DateRangePickerAPI. (Ifdbc4) - Kolory pól tekstowych można teraz dostosowywać:
- Kolory pola do wprowadzania danych i tekstu zastępczego w zależności od stanu zaznaczenia i błędu. Parametr
textColornosi teraz nazwęunfocusedTextColor, a parametrplaceholderColornosi teraz nazwęunfocusedPlaceholderColor. - Kolor kontenera wypełnionych pól tekstowych w stanie błędu z nowym parametrem
errorContainerColor.
- Kolory pola do wprowadzania danych i tekstu zastępczego w zależności od stanu zaznaczenia i błędu. Parametr
- Kolory pola tekstowego menu z rozwijaną listą zostały zaktualizowane o parametry obsługujące nowy interfejs API prefiksu i sufiksu. (I9c8b4, b/254284181, b/264766350)
Zmiany w interfejsie API
- Cofnięcie niektórych wersji interfejsu Slider API i usunięcie zbędnych przeciążeń suwaka, które są objęte nowym eksperymentalnym suwakiem z niestandardowym elementem sterującym i ścieżką. Promowanie klastra
RangeSliderw celu zapewnienia stabilności. (Ie8fbd) - Zmieniono nazwę funkcji
defaultElevationnaelevationw funkcjach wysokości elementu. (I0f872) - Te interfejsy API pól tekstowych Material 3 nie są już eksperymentalne:
TextField,OutlinedTextField,textFieldWithLabelPadding,textFieldWithoutLabelPadding,outlinedTextFieldPadding. (Ieb5c0, b/261561819) TimePickersis24Hourużywa ustawienia systemowego (I18856)- Usunięto eksperymentalną adnotację z interfejsów API platformy. (Ibb51e, b/261565765, b/261436953)
Poprawki błędów
- Domyślny kształt
ModalBottomSheetto teraz zawszeSheetDefaults.ExpandedShape. (I0dfca) - Ulepszenia ułatwień dostępu w przypadku komponentów Material 3
DatePickeriDateRangePicker. (I5087e) - Naprawiono błąd, w którym propagowane jest ograniczenie maksymalnej wysokości, co może powodować awarię. (I30d8c)
- Usunięto role semantyczne z obszarów klikalnych i możliwych do zaznaczenia. Zaktualizowano komponenty, które ich używały, aby ustawiać role za pomocą modyfikatora semantics (I793d9).
Wersja 1.1.0-alpha06
8 lutego 2023 r.
Publikacja androidx.compose.material3:material3:1.1.0-alpha06 i androidx.compose.material3:material3-window-size-class:1.1.0-alpha06 Wersja 1.1.0-alpha06 zawiera te zmiany.
Nowe funkcje
- Pola tekstowe obsługują teraz tekst przedrostka i przyrostka (Ia8578, b/179884561)
- Dodano funkcję
TimePicker, która wyświetla selektor czasu zgodny ze specyfikacją Material 3. Jest ona używana w połączeniu z funkcjąTimePickerStatei metodą wygodyrememberTimePickerState(I71910). - Pole wprowadzania daty jest teraz w trybie wyświetlania w
DatePicker. Dodano obsługę przełączania między selektorem daty a trybem wprowadzania daty. (Ieeff7) - Dodano interfejs API dla
RichTextTooltips. (I58ef3) - Implementacja dolnego arkusza modalnego w Material 3, w tym
ModalBottomSheetiModalBottomSheetDefaults. Wprowadza też elementySheetStateirememberSheetState, które można wykorzystać w przyszłych komponentach arkusza. (I0853a, b/244189383)
Zmiany w interfejsie API
- Stabilizacja interfejsu API
showSnackbar(I195c2, b/261424370) - Stabilizacja interfejsów API dla elementu pomocy i elementu z sugestią (Ibb67b, b/261424370)
- Przeniesiono interfejsy API
ListItem,ListItemDefaultsiListItemColorsdo wersji nieeksperymentalnej (I7e7fa, b/261438882) - Promowanie interfejsów
SliderPositions,SliderDefaults.ThumbiSliderDefaults.Trackdo wersji stabilnej oraz dodawanie nieeksperymentalnych interfejsówSlideriRangeSliderAPI, które zawierają niestandardowe miniatury i ścieżki. Wycofujemy też poprzednie interfejsy APISlideriRangeSlider. (Ie5ea6, b/261566890) - Udostępniono właściwość
Modifier.tooltipAnchor(), aby programiści mogli przekazywać ją do elementu zakotwiczonego i wskazywać, że po długim naciśnięciu ma się wyświetlić etykietka. Zaktualizowaliśmy interfejs APIPlainTooltipBox, aby nie dopuszczał wartości null w przypadku parametruTooltipState. Teraz ma on wartość domyślną. (Ie2fb7) ProgressIndicatorDefaults.circularTrackColorzostało oznaczone jako@Composable, aby zachować spójność. (Id29cc)- Przywróć funkcję pobierającą właściwość
LocalMinimuTouchTargetEnforcementi oznacz ją jako wycofaną, a następnie przekieruj doLocalMinimumInteractiveComponentEnforcement. (I60dd5)
Wersja 1.1.0-alpha05
26 stycznia 2023 r.
Publikacja androidx.compose.material3:material3:1.1.0-alpha05 i androidx.compose.material3:material3-window-size-class:1.1.0-alpha05 Wersja 1.1.0-alpha05 zawiera te zmiany.
Nowe funkcje
DatePickerDialogi pomoc dotycząca ułatwień dostępu.- Dodano niestandardową miniaturę i ścieżkę do
RangeSlider.
Aktualizacje zależności
Compose UIiCompose Materialzależą teraz od Lifecycle 2.6.0.
Wersja 1.1.0-alpha04
11 stycznia 2023 r.
Publikacja androidx.compose.material3:material3:1.1.0-alpha04 i androidx.compose.material3:material3-window-size-class:1.1.0-alpha04 Wersja 1.1.0-alpha04 zawiera te zmiany.
Nowe funkcje
- Początkowy interfejs
DatePickerAPI do wybierania pojedynczej daty za pomocą interfejsu kalendarza. Ten interfejs API nadal ulega zmianom. (I722b9) - Dodaliśmy obsługę zwykłych etykietek za pomocą
PlainTooltipBox. (I0cdfb) - Pasek wyszukiwania (Iad128)
SwipeToDismiss(I458a8, b/242889540)
Zmiany w interfejsie API
- Dodano właściwość semantyki
IsContainerna powierzchniach. Ta właściwość zostanie użyta w późniejszej zmianie, która określa kolejność przechodzenia na podstawie znaczenia semantycznego elementów, takich jak powierzchnie. (I63379) - Oznaczanie interfejsów API związanych z panelem nawigacyjnym jako stabilnych. (Iab01e, b/261439597)
- Dodaliśmy parametr koloru ścieżki dla okrągłych wskaźników postępu oraz parametr zakończenia linii dla okrągłych i liniowych wskaźników postępu. (Ie668c, b/216325962, b/222964817)
- Większa dopuszczalność wartości null zwracanego typu wycofanych i ukrytych funkcji (Ibf7b0)
- Dodaj
Modifier.minimumInteractiveComponentSize. Można go użyć do zarezerwowania co najmniej 48 dp, aby odróżnić interakcje dotykowe, jeśli element jest mniejszy. (I33f58, b/258495559) - Dodano eksperymentalny interfejs API dla funkcji
AlertDialog, która ma miejsce na treść. (Iec4a2)
Poprawki błędów
- Postęp wskaźników postępu jest teraz prawidłowo ograniczony do oczekiwanego zakresu. (I8a7eb, b/262262727)
Znany problem
- Podczas aktualizacji z wersji
androidx.compose.foundation:1.4.0-alpha03doandroidx.compose.foundation:1.4.0-alpha04może wystąpić błądjava.lang.NoSuchFieldError. Tutaj pierwotnie zgłoszono problem. Poprawka została przesłana i będzie dostępna w następnej aktualizacji Compose. Aby obejść ten problem, zaktualizuj bibliotekiandroidx.compose.materialiandroidx.compose.material3do najnowszej wersji(1.1.0-alpha04) lub zmień wersję bibliotekiandroidx.compose.foundationna 1.4.0-alpha03.
Wersja 1.1.0-alpha03
7 grudnia 2022 r.
Publikacja androidx.compose.material3:material3:1.1.0-alpha03 i androidx.compose.material3:material3-window-size-class:1.1.0-alpha03 Wersja 1.1.0-alpha03 zawiera te zmiany.
Zmiany w interfejsie API
- Zmieniliśmy nazwy interfejsów
consumedWindowInsets()naconsumeWindowInsets()iwithConsumedWindowInsets()naonConsumedWindowInsetsChanged()oraz udostępniliśmy modyfikatory publicznie. (Ie44e1) - Dodano nowe domyślne dopełnienie treści dla przycisku tekstowego z ikoną. (I8f662)
- Dodano wyłączone kolory paska nawigacyjnego i kolumny nawigacji. (Ia7892, b/258867034)
- Dodano interfejs Modifier API do wysyłania zapytań o informacje o przewijaniu elementów nadrzędnych. (I2ba9d, b/203141462)
- Używany w
Clickabledo prawidłowego opóźniania interakcji naciśnięcia, gdy gesty mogą stać się zdarzeniami przewijania. - Rozwiązaliśmy problem z nieprawidłowym opóźnianiem efektów falowania przez element
Clickables, gdy był używany w elemencieScrollable ViewGroup. - Zaktualizowano panele i arkusze, aby prawidłowo opóźniać naciśnięcia w przypadku, gdy gesty mogą stać się zdarzeniami przewijania.
Aktualizacje zależności
Compose UIiCompose Materialzależą teraz od biblioteki Lifecycle w wersji 2.5.1. (I05ab0, b/258038814)
Wersja 1.1.0-alpha02
9 listopada 2022 r.
Publikacja androidx.compose.material3:material3:1.1.0-alpha02 i androidx.compose.material3:material3-window-size-class:1.1.0-alpha02 Wersja 1.1.0-alpha02 zawiera te zmiany.
Zmiany w interfejsie API
awaitFirstDowniwaitForUpOrCancellationakceptują terazPointerEventPass, co zapewnia większą elastyczność (rozwiązuje też problem zExposedDropdownMenuBoxwyświetlającym menu podczas przewijania).(I7579a, b/212091796)- Dodano parametr
minLinesdo komponentów tekstowych material i material3,TextFieldiOutlinedTextField, który umożliwia ustawienie minimalnej wysokości komponentu w liczbie wierszy (I4af1d). - Wycofaj funkcję
TopAppBarDefaults smallTopAppBarColorsna rzecz nowej funkcjitopAppBarColors, której należy używać podczas tworzeniaTopAppBar. (Ie6cb9) - Dodano parametr
minLinesdo parametrówBasicTextiBasicTextField. Umożliwia ustawienie minimalnej wysokości tych komponentów w liczbie wierszy (I24294, b/122476634).
Poprawki błędów
- Przycinaj zawartość komponentów Material 3
IconButtoniIconToggleBottondo kształtu warstwy stanu komponentu (np. okrągłego). (I9da8f) - Aktualizuje średnie i duże górne paski aplikacji Material3, aby stosować ten sam kolor tła na całej powierzchni i umożliwiać zastępowanie domyślnych kolorów przezroczystymi wartościami kolorów. (I67659, b/249688556, b/250838918)
Wersja 1.1.0-alpha01
24 października 2022 r.
Publikacja androidx.compose.material3:material3:1.1.0-alpha01 i androidx.compose.material3:material3-window-size-class:1.1.0-alpha01 Wersja 1.1.0-alpha01 zawiera te zmiany.
Poprawki błędów
- Poprawki dotyczące górnego paska aplikacji, gdy tytuł jest stosowany z elementami TextStyle i Brush. (If667e)
Wersja 1.0
Wersja 1.0.1
9 listopada 2022 r.
Publikacja androidx.compose.material3:material3:1.0.1 i androidx.compose.material3:material3-window-size-class:1.0.1 Wersja 1.0.1 zawiera te zatwierdzenia.
Poprawki błędów
- Aktualizuje średnie i duże paski aplikacji Material3, aby stosować ten sam kolor tła na całej powierzchni i umożliwiać zastępowanie domyślnych kolorów przezroczystymi wartościami kolorów. (I67659, b/249688556, b/250838918)
Wersja 1.0.0
24 października 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0 i androidx.compose.material3:material3-window-size-class:1.0.0 Wersja 1.0.0 zawiera te zatwierdzenia.
Główne funkcje wersji 1.0.0
To pierwsza stabilna wersja Compose Material 3.
Motywy Material Design 3 i dynamiczne kolory Material You
Komponenty Material Design 3
- Plakietka
- Dolny pasek aplikacji
- Przyciski
- Przycisk typu FAB i rozszerzony przycisk typu FAB
- Karty
- Pole wyboru
- Chipsy
- Okna
- Linia podziału
- Menu
- Lista
- Pasek nawigacyjny
- Panel nawigacji
- Panel nawigacyjny
- Wskaźnik postępu
- Opcja
- Suwak
- Przełącz
- Karty
- Pola tekstowe
- Górny pasek aplikacji
- Ikona
- Tekst
- Platforma
- Układ
- Kolor treści
Klasa rozmiaru okna
material3-window-size-classto nowa biblioteka, która obsługuje klasy rozmiaru okna: zestaw opartych na opiniach punktów przerwania widocznego obszaru, które umożliwiają projektowanie, tworzenie i testowanie układów aplikacji o zmiennych rozmiarach. Możesz użyćcalculateWindowSizeClass, aby pobrać instancję klasy rozmiaru okna, która pozwala określić, jak powinien wyglądać interfejs, np. czy w przypadku większych rozmiarów okien ma być wyświetlany pasek nawigacyjny zamiast nawigacji u dołu. Więcej informacji i przykłady użycia znajdziesz w dokumentacji interfejsu API dotyczącejWindowSizeClass.Więcej informacji znajdziesz w tym poście na blogu.
Wersja 1.0.0-rc01
5 października 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-rc01 i androidx.compose.material3:material3-window-size-class:1.0.0-rc01 Wersja 1.0.0-rc01 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodano parametr slotu do obsługi interfejsu API pola tekstowego (Iaac0d, b/227146125)
Wersja 1.0.0-beta03
21 września 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-beta03 i androidx.compose.material3:material3-window-size-class:1.0.0-beta03 Wersja 1.0.0-beta03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
ExposedDropdownMenuDefaultsudostępnia teraz wartość dopełnienia elementów menu. (I34ee1)ExposedDropdownMenuBoxScopema teraz modyfikatorModifier.menuAnchor(), który należy przekazać do pola tekstowego, aby zapewnić prawidłowe działanie funkcji ułatwień dostępu. (I27fa3)- Dodanie 2 przeciążonych metod do bieżącego interfejsu Slider API, aby umożliwić użytkownikom przekazywanie suwaka lub ścieżki w celu wypełnienia suwaka. (I21c00)
Poprawki błędów
- Zaktualizowano mapowanie kolorów ciemnego motywu dla kontenera błędu na odcień 90 (Ic5612).
- Poprawka umożliwiająca ustawienie przezroczystego tła dla małych pasków aplikacji u góry w Material 3. (I645e2, b/245575782)
Wersja 1.0.0-beta02
7 września 2022 roku
Publikacja androidx.compose.material3:material3:1.0.0-beta02 i androidx.compose.material3:material3-window-size-class:1.0.0-beta02 Wersja 1.0.0-beta02 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Domyślne wstawki komponentów wprowadzone w komponentach m3 w wersji beta01 nie uwzględniają już wstawek IME.
- Komponent Scaffold Material3 ma teraz parametr
contentWindowInsets, który umożliwia określenie liczby wcięć do obsługi w przypadku miejsca na treść. (Icf11a, b/243713323) - Wycofuje eksperymentalną funkcję
SmallTopAppBarMaterial 3 i wprowadza jej odpowiednikTopAppBar. Przenieś swoje użycie na nową. (I74404, b/226918634) - Dodaje kontrolę nad zachowaniem paska aplikacji u góry podczas przesuwania i przyciągania. (I15c81)
- Usuwa startIndent z Divider, przenosi kolor na ostatni parametr. (If7be2)
Poprawki błędów
- Okna powinny informować użytkowników TalkBack o swoim wyświetleniu, wypowiadając słowo „Okno”. (I857ef)
Wersja 1.0.0-beta01
24 sierpnia 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-beta01 i androidx.compose.material3:material3-window-size-class:1.0.0-beta01 Wersja 1.0.0-beta01 zawiera te zatwierdzenia.
Dokumentacja API
Aby zobaczyć najnowsze motywy, komponenty i inne funkcje dostępne w Compose, zapoznaj się z omówieniem dokumentacji interfejsu API Compose Material 3.
Zmiany w interfejsie API
- Zaktualizowaliśmy górny pasek aplikacji Material 3, aby można było go w pełni zwinąć lub rozwinąć. Zaktualizowano też funkcję zachowania
TopAppBarDefaults, aby była funkcją kompozycyjną i zapewniała wartości domyślne dla stanu górnego paska aplikacji i specyfikacji animacji. (I642b3) - Zaktualizowano sygnatury komponentu FAB, aby pasowały do interfejsu API powierzchni (I3afaa).
- Dodano wstawki. Wbudowana obsługa górnych pasków aplikacji, szuflad, paska nawigacyjnego i kolumny nawigacji. Te komponenty, używane oddzielnie lub z komponentem Scaffold, automatycznie obsługują wcięcia dla programistów. Uwaga: ta zmiana nie dodaje automatycznej obsługi ikon paska stanu ani przezroczystości pasków stanu i nawigacji. Aby zapewnić najlepsze wrażenia, nadal rób to ręcznie. (I7e4e6, b/183161866)
- Zaktualizowane ustawienia domyślne komponentu, aby zmniejszyć powierzchnię interfejsu API i zwiększyć elastyczność oraz wydajność w przyszłości. (I31820)
- Zmieniliśmy kolejność parametrów karty i panelu nawigacyjnego, aby zachować spójność w ramach interfejsu API (I45d0b).
- Usunięto parametr
startIndentz komponentu Divider i przeniesiono kolor na ostatni parametr.(If7be2)
Wersja 1.0.0-alpha16
10 sierpnia 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha16 i androidx.compose.material3:material3-window-size-class:1.0.0-alpha16 Wersja 1.0.0-alpha16 zawiera te zatwierdzenia.
Nowe funkcje
- Możliwość określenia niestandardowej szerokości panelu nawigacyjnego. (Ia7f10)
Zmiany w interfejsie API
- Zmiana kolejności parametrów kart i ikony wiodącej, aby zachować spójność w interfejsie API (Ie2637)
- Oznaczono
BadgeDefaultsjako eksperymentalne. (I98ef3) - Usunięcie wycofanej funkcji panelu nawigacji. (I4f2db)
- Zmiana kolejności parametrów suwaka w Material 3, aby zachować spójność w interfejsie API (I0aee7)
- Zmiana kolejności parametrów
NavigationBariNavigationRailw celu zachowania spójności w interfejsie API (I51cda) - Zmień kolejność parametrów w Material 3, aby zachować spójność w całym interfejsie API. (If4ae1)
- Zmiana kolejności parametrów suwaka w Material 3, aby zachować spójność w interfejsie API (I62673)
- Zmiana nazwy parametru ikon na akcje, aby zachować spójność z górnym paskiem aplikacji (Id75be)
- Oznacz
BadgeiBadgedBoxjako eksperymentalne, ponieważ wyrównanie kotwicy jest w trakcie zmian. (I1712e, b/236524516) - Zmiana adnotacji
@ExperimentalMaterial3Apiw wariancie przycisku z ikoną na@OptIn(I070b5) - Treści w panelu nawigacyjnym zostały przeniesione do osobnego komponentu, aby można było określić jego niestandardową szerokość. (Ia7f10)
- Usuwa
DividerzMenuDefaultsiTabDefaults(I4e33c)
Wersja 1.0.0-alpha15
27 lipca 2022 roku
Publikacja androidx.compose.material3:material3:1.0.0-alpha15 i androidx.compose.material3:material3-window-size-class:1.0.0-alpha15 Wersja 1.0.0-alpha15 zawiera te zatwierdzenia.
Nowe funkcje
- Zezwalaj na przeciąganie górnego paska aplikacji z samego paska. (I65c00, b/205873416)
Zmiany w interfejsie API
- Aktualizacje interfejsów API
FilterChipiElevatedFilterChip, które usuwają gniazdoselectedIconi zachęcają do ponownego używania gniazdaleadingIcondo wyświetlania wybranego stanu. (Ie5dc2) - Dodaj role kolorów wariantów półprzezroczystych i konturów. (Id6d54)
- Popraw konwencje nazewnictwa w przypadku domyślnych ustawień kompozycyjnych. (I62b27)
- Oznacz
ListItemDefaultsiListItemColorsjako eksperymentalne. (I1f3ec) - Zmiany w interfejsie API górnego paska aplikacji, które lepiej odzwierciedlają znaczenie właściwości stanu. Oznacz też interfejs API górnego paska aplikacji jako eksperymentalny. (Ic0ad8)
- Kolory zaznaczenia tekstu zostały dodane do
TextFieldColors, aby zwiększyć wykrywalność. (Iba1b8) - Dodano
ButtonDefault.ButtonWithIconContentPaddingdo użycia z przyciskami zawierającymi ikonę. (I2bf9c) - Pola tekstowe zostały oznaczone jako eksperymentalne, aby zapewnić większą elastyczność w przyszłych zmianach interfejsu API. (I127b5)
- Usunięto adnotację
@ExperimentalMaterial3Apiz funkcjiCheckbox. (I5eefc) - Usunięto adnotację
@ExperimentalMaterial3Apiz funkcjiRadioButton. (I17e2a) - Usunęliśmy adnotację
@ExperimentalMaterial3Apiz nieinteraktywnych kart. (I9bd49) - Aktualizuje różne domyślne obiekty komponentów, aby uwzględniały kolory, kształty itp. (I96e11)
Poprawki błędów
- Usunięto z przykładowych elementów wejściowych nieprawidłowo działające ikony końcowe, aby uniknąć wprowadzania użytkowników w błąd w aplikacji katalogu. (I9846a)
Wersja 1.0.0-alpha14
29 czerwca 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha14 i androidx.compose.material3:material3-window-size-class:1.0.0-alpha14 Wersja 1.0.0-alpha14 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano implementację listy M3. Przykłady użycia znajdziesz w dokumentacji (Id7a20).
Zmiany w interfejsie API
- Zmiana nazwy parametru z values na value w
RangeSlider(I3b79a) - Zmiany w interfejsie API w implementacji
InputChip, aby obsługiwać stan, który można wybrać zgodnie ze specyfikacją Material Design. Dodatkowa obsługa kolorówFilterChipw przypadku wybranego stanu wyłączonego. (I55244, b/235792432) - Dodaj domyślny pływający przycisk działania
BottomAppBar(Ida4c8) - Dodano element
ColorScheme.surfaceColorAtElevation(Id41af) - Interfejsy w bibliotekach Compose są teraz tworzone przy użyciu domyślnych metod interfejsu jdk8 (I5bcf1).
- Klasy
WindowWidthSizeClassiWindowHeightSizeClassimplementują teraz interfejs Comparable, więc można je porównywać za pomocą operatorów (<, <=, >=, >) i innych interfejsów API. (I747d0)
Poprawki błędów
- Zaktualizuj przykładową plakietkę, aby podać bardziej przydatny opis treści. (I10b9d)
- Dodaje opcję używania rozmiaru czcionki systemowej w selektorze motywów katalogu Material 3. (I10605)
- Dodaliśmy przykładowy kod do plakietek i wskaźników nieokreślonego postępu. (I8fbe0)
Wersja 1.0.0-alpha13
1 czerwca 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha13 i androidx.compose.material3:material3-window-size-class:1.0.0-alpha13 Wersja 1.0.0-alpha13 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Obsługuje utrzymywanie pozycji górnego paska aplikacji po zmianie konfiguracji. (I10459, b/216160958)
Wersja 1.0.0-alpha12
18 maja 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha12 i androidx.compose.material3:material3-window-size-class:1.0.0-alpha12 Wersja 1.0.0-alpha12 zawiera te zatwierdzenia.
Poprawki błędów
- Kontener nadrzędny suwaka może mieć teraz szerokość 0. (b/231707291)
Wersja 1.0.0-alpha11
11 maja 2022 roku
Publikacja androidx.compose.material3:material3:1.0.0-alpha11 i androidx.compose.material3:material3-window-size-class:1.0.0-alpha11 Wersja 1.0.0-alpha11 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano
RangeSliderdo Material 3 (I18e38) - Dodaje obsługę
AssistChipiInputChipMaterial3 (I0d25a) - Dodaje obsługę
FilterChipiSuggestionChipMaterial3 (I9fdf3)
Zmiany w interfejsie API
- Zmieniono nazwę funkcji kompozycyjnej
TextFieldDefaults.BorderStroke, która rysuje obramowanie wOutlinedTextField, naTextFieldDefaults.BorderBox. (I5f295) - Przełączanie zmian wizualnych m3 (Iab30e)
- Zezwalaj na przekazywanie kolorów do standardowych przycisków z ikonami. (Ia2445)
Poprawki błędów
- Dodanie do komponentu Scaffold w bibliotece material3 sprawdzania za pomocą narzędzia Lint, aby upewnić się, że używane jest wewnętrzne dopełnienie (I72293, b/226951418)
Wersja 1.0.0-alpha10
20 kwietnia 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha10 i androidx.compose.material3:material3-window-size-class:1.0.0-alpha10 Wersja 1.0.0-alpha10 zawiera te zatwierdzenia.
Nowe funkcje
material3-window-size-classto nowa biblioteka, która obsługuje klasy rozmiaru okna: zestaw opartych na opiniach punktów przerwania widocznego obszaru, które umożliwiają projektowanie, tworzenie i testowanie układów aplikacji o zmiennych rozmiarach. Możesz użyćcalculateWindowSizeClass, aby pobrać instancję klasy rozmiaru okna, która pozwala określić, jak powinien wyglądać interfejs, np. czy w przypadku większych rozmiarów okien ma być wyświetlany pasek nawigacyjny zamiast nawigacji u dołu. Więcej informacji i przykłady użycia znajdziesz w dokumentacji APIWindowSizeClass. Więcej informacji o definicjach klas rozmiaru okna znajdziesz w publicznych wskazówkach dotyczących obsługi różnych rozmiarów ekranów.
Zmiany w interfejsie API
- Dodaje domyślne uniesienie FAB dla
BottomAppBar, usuwa końcową lambdę zBottomAppBarz FAB. (I92c47) - Dodaje komponenty Material3
FilledIconButton,FilledTonalIconButtoniOutlinedIconButton. (Ib2bda) - Aktualizuje interfejs API Material 3 Snackbar, aby akceptował wartości kolorów dla opcjonalnego działania i działania zamykającego. (Ibe4b4)
- Częściowe wykorzystanie (w dół LUB pozycja) zostało wycofane w
PointerInputChange. Aby w pełni wykorzystać zmianę, możesz użyćconsume(). Możesz użyćisConsumed, aby sprawdzić, czy ktoś inny wcześniej wykorzystał zmianę. PointerInputChange::copy()zawsze tworzy teraz płytką kopię. Oznacza to, że kopiePointerInputChangezostaną wykorzystane, gdy jedna z nich zostanie wykorzystana. Jeśli chcesz utworzyć niepowiązany elementPointerInputChange, użyj konstruktora. (Ie6be4, b/225669674)- Zmiany w interfejsie Cards API, które umożliwiają otrzymywanie kolorów kontenera i treści za pomocą interfejsu
CardColorsoraz obsługują stan wyłączony w przypadku kart, które można kliknąć. (I927df) - W polach tekstowych Material 3 parametr
backgroundColorzostał zmieniony nacontainerColor, aby zapewnić większą spójność z innymi komponentami. (I6fbd9)
Poprawki błędów
- Aktualizacje standardowego
IconButton, aby dostosować go do specyfikacji Material 3 (I09eab). - Przenieś wysokość górnego paska elementu Scaffold z biblioteki material3 do dopełnienia przekazywanego do treści, aby treść była renderowana pod górnym paskiem aplikacji. Jeśli
PaddingValuessą ignorowane, treść może być zasłonięta przez górny pasek. (I83cbc, b/217776202)
Wersja 1.0.0-alpha09
6 kwietnia 2022 roku
Publikacja androidx.compose.material3:material3:1.0.0-alpha09 Wersja 1.0.0-alpha09 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano interfejs API przełącznika Material 3 (I2c3ad)
Zmiany w interfejsie API
- Dodaliśmy obsługę rozwijanych menu z polami tekstowymi (tzw. „rozwijane menu z polami tekstowymi” lub „pola kombi”). (I1b832)
- Dodano parametr kształtu do MaterialTheme i podsystemu kształtu. (I37426)
- Dodano rozwinięty parametr do
ExtendedFloatingActionButton, aby kontrolować, czy FAB jest rozwinięty czy zwinięty, z animacjami między poszczególnymi stanami. Dodano przeciążenie rozszerzonego przycisku FAB dla rozszerzonych przycisków FAB z tekstem na końcu w przypadku rozszerzonych przycisków FAB bez ikony. (Iba7f1)
Wersja 1.0.0-alpha08
23 marca 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha08 Wersja 1.0.0-alpha08 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano obsługę pól tekstowych Material 3. (I795cc, b/199377790)
Zmiany w interfejsie API
- Dodaj domyślny separator menu (I01374)
- Dodano parametr koloru
surfaceTintdo klasyColorScheme. (I2f558)
Poprawki błędów
- Poprawka w przypadku przycisku Material3, aby odczytywać domyślną wartość stylu tekstu z motywu MaterialTheme. (Ie62fc)
Wersja 1.0.0-alpha07
9 marca 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha07 Wersja 1.0.0-alpha07 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Aktualizacje interfejsu Surface API Material 3, które przywracają przeciążone funkcje w przypadku klikalnych powierzchni, a także dodają funkcję obsługi powierzchni, które można wybrać i przełączać. (I4bf18)
- Wartości
LazyVerticalGridiLazyHorizontalGridsą teraz stabilne. (I307c0) LazyVerticalGrid/LazyHorizontalGridi wszystkie powiązane interfejsy API zostały przeniesione do podpakietu .grid. Zaktualizuj importy z androidx.compose.foundation.lazy na androidx.compose.foundation.lazy.grid. (I2d446)- Cofnięto poprzednią zmianę polegającą na poleganiu wyłącznie na widoku w przypadku
WindowInsetsControllerCompati ponownie wymagane jest okno, które jest niezbędne do zarządzania niektórymi flagami okna. WycofanoViewCompat.getWindowInsetsControllerna rzeczWindowCompat.getInsetsController, aby mieć pewność, że używane jest prawidłowe okno (np. jeśli widok znajduje się w oknie dialogowym). (I660ae, b/219572936) - Dodaliśmy nowy interfejs
LazyVerticalGridAPI do określania rozmiarów osi poprzecznej (I17723).
Poprawki błędów
- Aktualizacje interfejsu Card API w związku ze zmianami w interfejsie Surface API (I3c8b9)
Wersja 1.0.0-alpha06
23 lutego 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha06 Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodano element
NavigationDrawerItem, który reprezentuje pojedyncze miejsce docelowe w szufladach (Ic396f, b/218286829). - Interfejsy
PermanentNavigationDraweriDismissibleNavigationDrawerzostały dodane jako eksperymentalne interfejsy API. Są to szuflady odpowiednie dla urządzeń z dużym ekranem. (I5f8ab, b/218286829) - Dodano obsługę dolnego paska aplikacji Material 3 (Ic432a)
- Nazwa
NavigationDrawerzostała zmieniona naModalNavigationDrawer(I1807d, b/218286829) - Dodano klasę i tokeny suwaka Material 3 (I1ccee)
- Dodano implementację karty. Przykłady użycia znajdziesz w dokumentacji (Ie0146).
Poprawki błędów
- Rozwiązaliśmy problem polegający na tym, że nawigacja liniowa czytnika ekranu
TalkBackwybierała pusty tytuł górnego paska aplikacji. (Id4690) - Dodano:
IconSizedo listyFloatingActionButtonDefaults. (Ia71cf) - Rozwiązaliśmy problem z ukrytymi przyciskami
AlertDialog, gdy do tekstu dodano długi tekst z symbolemLazyColumn. (Ib2cc9, b/216663029)
Wersja 1.0.0-alpha05
9 lutego 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha05 Wersja 1.0.0-alpha05 zawiera te zatwierdzenia.
Nowe funkcje
Dodano komponenty Material Design 3
Zmiany w interfejsie API
- Wycofana funkcja
Surface, która przyjmuje wywołanie zwrotne onClick. Elementy klikalne należy tworzyć za pomocą tagówInteractionSourceiModifier.clickable(). (I211c6) - Dodaliśmy obsługę podniesienia po naciśnięciu i skupieniu w przypadku FAB. (Ibb584)
- Zmieniono interfejs
SurfaceAPI, aby otrzymywał element InteractionSource, który umożliwia kontrolowanie jego wyglądu w różnych stanach. (Iafbc8)
Poprawki błędów
- Dodano brakujące kolory trzeciorzędne w schematach kolorów dynamicznych (I456c4, b/214588434)
Wersja 1.0.0-alpha04
26 stycznia 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha04 Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Dodaliśmy
NonRestartableComposabledo metod, które są przeciążeniami istniejących metod bez złożonej logiki. Zmniejsza to liczbę sprawdzania przez kompilator zapamiętywania (równości) dla wszystkich parametrów, które są powtarzane w wywoływanej funkcji wewnętrznej. (I90490) - Dodano separator Material 3. (Ica5fc)
- Oznacz pola wyboru i przyciski opcji adnotacją eksperymentalnego interfejsu API. (Ie44bb)
- Dodaliśmy obsługę wskaźników postępu Material 3. (Iff232, b/205023841)
Poprawki błędów
- Aktualizowanie koloru wyłączonego kontenera
TextButton'sna przezroczysty (I6b248, b/213339737)
Wersja 1.0.0-alpha03
12 stycznia 2022 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha03 Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Poprawki błędów
- Dodaj
LocalIndicationdoMaterialThemeMaterialu 3. (I7ce4e) - Poprawienie zaokrąglenia narożników w przypadku pól wyboru (I38b03, b/175198975, b/202309440)
Aktualizacje zależności
- Teraz zależy od Kotlin
1.6.10.
Wersja 1.0.0-alpha02
1 grudnia 2021 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha02 Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodanie obsługi pól wyboru i przycisków opcji.
- Zaktualizowano, aby była zgodna z Kotlinem w wersji
1.6.0
Zmiany w interfejsie API
- Usuń szufladę z elementu Scaffold Materialu 3. (I04f51)
- Dodaje obsługę Material 3
Checkbox. (Id5542) - Dodaje obsługę Material 3
RadioButton. (I20334)
Poprawki błędów
- Zmniejsz promień fali
IconButtonz 40 dp do 20 dp. (I68bbe, b/206674345) - Szybka ścieżka ciągu portu dla
Textzmienia się zcompose.material(I30b03) - Naprawiono problem z przyciskiem, który był zawsze włączony. (Iea832, b/205335456)
Wersja 1.0.0-alpha01
27 października 2021 r.
Publikacja androidx.compose.material3:material3:1.0.0-alpha01 Wersja 1.0.0-alpha01 zawiera te zatwierdzenia.
Nowe funkcje
Motywy Material Design 3 i dynamiczne kolory Material You
Komponenty Material Design 3
- Przyciski
- Przycisk FAB i rozszerzony przycisk FAB
- Okna
- Pasek nawigacyjny
- Panel nawigacji
- Panel nawigacyjny
- Górny pasek aplikacji
- Plakietka
- Ikona
- Tekst
- Platforma
- Układ
- Kolor treści
Więcej informacji znajdziesz w sekcji Material Design 3 i Material You w przewodniku Material Theming w Compose.