Compose Material 3
| Najnowsza aktualizacja | Wersja stabilna | Wersja kandydująca do publikacji | Wersja beta | Wersja alfa |
|---|---|---|---|---|
| 17 czerwca 2026 r. | 1.4.0 | - | - | 1.5.0-alpha22 |
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 informacje o grupach i linki do poszczególnych zestawów informacji o wersji.
| Grupa | Opis |
|---|---|
| compose.animation | tworzyć animacje w aplikacjach Jetpack Compose, aby zwiększać komfort 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 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 w Compose, który udostępnia komponenty zgodne z tymi 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. Został zaprojektowany tak, aby pasować do nowego stylu wizualnego Androida 12 i interfejsu systemu. |
| compose.runtime | Podstawowe elementy modelu programowania i zarządzania stanem w Compose oraz podstawowe środowisko wykonawcze, do którego jest kierowana 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 artykule Repozytorium Maven Google.
Dodaj zależności dotyczące potrzebnych artefaktów w pliku build.gradle aplikacji lub modułu:
Groovy
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-alpha22" } 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-alpha22") } 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 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ą zwalniane. 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ą zwalniane. Wersja 1.0.0-alpha07 zawiera te zmiany.
Zmiany w interfejsie API
- Udostępnianie interfejsów API pakietu nawigacyjnego w wersji nieeksperymentalnej (If62af)
Poprawki błędów
- Domyślne używanie wstawek w przypadku 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ą zwalniane. Wersja 1.0.0-alpha06 zawiera te zmiany.
Zmiany w interfejsie API
- Dodaj
containerColoricontentColordoNavigationSuiteScaffoldDefaults. (I64e3a, b/331993720) - Dodawanie funkcji
itemColorsdoNavigationSuiteDefaults. (Idf719, b/328480012) - Sprawdź, czy
NavigationSuiteScopejest szczelnie zamknięty. (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ą zwalniane. 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ą zwalniane. 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ą zwalniane. Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zmiana nazwy pakietu z navigation-suite na navigationsuite (I7eff7)
- Komponenty Material3, które w swoim interfejsie API udostępniały wartość
MutableInteractionSource, zostały zaktualizowane tak, aby udostępniać 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 w komponencie. Ustawienie wartości null powoduje, że niektóre komponenty nigdy nie przydzielająMutableInteractionSource, a inne tworzą 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ą zwalniane. Wersja 1.0.0-alpha02 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaj wartość „Brak”
NavigationSuiteType(If8cb1, b/313688598)
Poprawki błędów
- Naprawiono wypełnianie całego ekranu przez komponent nawigacji, 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ą zwalniane. Wersja 1.0.0-alpha06 zawiera te zatwierdzenia.
Nowe funkcje
- Dodaliśmy dodatkowe opcje zachowania w przypadku
ThreePaneScaffoldNavigatorprzechodzenia 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ą zwalniane. 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ą zwalniane. Wersja 1.0.0-alpha04 zawiera te zatwierdzenia.
Nowe funkcje
- Dodano obsługę od krawędzi do krawędzi w szkieletach 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ą zwalniane. Wersja 1.0.0-alpha03 zawiera te zatwierdzenia.
Zmiany w interfejsie API
- Zmień role rusztowania na aliasy
ThreePaneScaffoldRole. (I65bd1) - Utwórz klasę bazową dla ról szkieletowych (I4784d)
- Usuń niepotrzebny parametr z treści
AnimatedPane(Ibc73b) - Zmienia nazwę
collectWindowSizeAsStatei zwraca zamiast niej surowe wartości (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ą zwalniane. 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
- Nie można przełączać paneli, 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 Material3 adaptive pane scaffold:
Interfejsy API komponentu adaptacyjnego Material3:
- Podstawowe interfejsy API panelu
Compose Material3 w wersji 1.5
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)
- Przenieś interfejsy API Expressive
FloatingToolbardo wersji nieeksperymentalnej. (I5a4d8, b/497887216) - Usuń wycofany element
transformOriginStatez elementuDropdownMenuPopupPositionProvider. (I0d5b0, b/505481611) - Zaktualizowano funkcje
pinnedScrollBehaviorienterAlwaysScrollBehavior, aby akceptowały wartośćScrollableState, która 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 wartośćScrollableState, która 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 pojedynczej klasy. WprowadzaMenuAnchorPositionScope, które zawiera informacje, których można użyć do tworzenia niestandardowych kandydatów na osiach X i Y. (I21f2b, b/505481611) - Promowanie interfejsów API
ButtonGroupdo wersji stabilnej. Usunięto wycofane eksperymentalne interfejsy API wprowadzone w wersji 1.5.0-alpha. (Idaf96, b/497876828)
Poprawki błędów
- Naprawiliśmy błąd, który powodował, że animacja kompresji
ButtonGroupnieprawidłowo obsługiwała asymetryczne wypełnienia przycisków lub kierunki układu od prawej do lewej i mogła powodować awarięIllegalArgumentExceptionprzy określonych gęstościach wyświetlania. (I35074, b/516743181) - Poprawienie mechanizmu obsługi błędów w trybie wprowadzania 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 API 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 interfejsuanimateWidthAPI bez 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ą parametrurememberBottomSheetState. 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 tagu eksperymentalnego dla interfejsów
PullToRefreshDefaults.loadingIndicatorColoriPullToRefreshDefaults.loadingIndicatorContainerColor(Ib9d15, b/513225663) - Zaktualizowaliśmy parametry
SelectableChipColors, aby były publiczne (I559e0, b/512576750). - Dodaj parametr
horizontalArrangementdoMenuItems(Ie8088, b/497891817) - Oznacz funkcję przycisku ponownego oznaczania
contentPaddingForjako eksperymentalną. (I07d3e, b/500355872) - Wprowadziliśmy
roundedShapeitonalColors()wTextFieldDefaultsiOutlinedTextFieldDefaults, które są konfiguracjami wizualnymi stylu ekspresyjnego. (Id9185, b/448728288) - Wycofano typ
TextFieldLabelPosition.Attachedi wprowadzono podtypyInsideiCutout, co zapewnia większe możliwości dostosowywania, np. umieszczanieOutlinedTextFieldz etykietą wewnątrz. 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 się 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 BottomSheet, 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 karetka etykietki pojawiała się po niewłaściwej stronie, gdy etykietka była odwracana z powodu krawędzi ekranu. (Idc314, b/479224210)
- Wprowadziliśmy
rememberBottomSheetStatejako ujednolicony interfejs API stanuBottomSheet. Wycofano interfejsyrememberModalBottomSheetStateirememberStandardBottomSheetStatena rzecz nowego ujednoliconego interfejsu API. (I2724e, b/500005697) - Usunięto wycofane eksperymentalne interfejsy API
WideNavigationRail(Iaadd6, b/497891040) - Przeniesienie interfejsów API
SplitButtondo wersji nieeksperymentalnej. (I4d395, b/497876691) - Wycofaj interfejsy API
DropdownMenuItemz zaznaczonymi i wybranymi parametrami, które mająsupportingTextjako końcową lambdę. ZakressupportingTextzostał przeniesiony i jest teraz parametrem bezpośrednio po zakresietrailingIcon. (Icaf79, b/503047115)
Poprawki błędów
- Zaktualizowanie modułu obsługi przewidywanego przejścia wstecz w panelu nawigacji, aby można było cofać, gdy panel się otwiera, a nie tylko wtedy, gdy jest w pełni otwarty (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 połączona z podanymi stylami tekstu, jeśli nie mają one wyraźnie 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 eksperymentalnej wersji Expressive (Ie509c, b/497892373)
- Promuj interfejsy API przycisków z funkcjami ekspresyjnymi. 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 Typography (I8b3b3, b/500356360)
- Przywróć promocje
MaterialShapesiLoadingIndicatordo wersji stabilnej. (I30e69, b/497876695, b/497877850)
Poprawki błędów
- Naprawiono błąd 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 awarię w
Modifier.animateFloatingActionButtonspowodowaną zaokrąglaniem gęstości int vs float (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 trybie precyzyjnego wskaźnika (I58d8c, b/496938250, b/500356640)
- Rozwiązaliśmy problem z blokowaniem fokusu klawiatury w selektorze daty, który nie jest oknem. Naprawiliśmy też problem z kolejnością 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. Dodano możliwość konfigurowania efektów falowania, które będą rysowane z wyglądem pierścienia ostrości, zamiast wskaźnika ostrości opartego na nieprzezroczystości. 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) - Promowanie
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 zakotwiczenia. 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
- Zaktualizowano komponenty material3, aby obsługiwały wskazania pierścienia ostrości w przestrzeni (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ą
TopAppBarScrollBehaviori powiązane z nią metody do wersji stabilnej. Te interfejsy API nie wymagają już zgody na@ExperimentalMaterial3Api. (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 konstruktorTypography, który akceptuje domyślny atrybutFontFamilydo zastosowania do wszystkich atrybutówTextStylesw skali. (I3f6f1, b/236358112) - Promowanie eksperymentalnych interfejsów API do 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 domyślną funkcję
DropdownMenuItemTrailingLabeli zoptymalizowane pod kątem wskaźnika wypełnienia interfejsu w przypadku menu segmentowych (I28977, b/485937388). - Dodaliśmy do okien dopełnienie, gdy
ComposeMaterial3Flags.isPrecisionPointerComponentSizingEnabledma wartość „true”, orazAlertDialogDefaults.IconSizedla ikony. (Ib9652, b/485932651) - Zoptymalizowano wewnętrzne obliczenia minimalnego rozmiaru
BasicTextField. W razie potrzeby możesz je wyłączyć w sekcjiComposeFoundationFlags#isBasicTextFieldMinSizeOptimizationEnabled. (I70ade) - Zmieniono 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
isAtTopwTopAppBarDefaults.pinnedScrollBehavioriTopAppBarDefaults.enterAlwaysScrollBehaviorzostał zmieniony naisAtStart(If7323, b/405129274).
Poprawki błędów
- Komponenty
BottomSheetobsługują terazMaterialTheme.motionSchemepodczas zagnieżdżonego przewijania i gestów przeciągania. (I5fe22, b/452071842, b/384959324) - Usunięto błąd polegający na tym, że do elementu z ikoną
selectedLeadingIcon, która nie jest obecnie wyświetlana, dodawano dopełnienie etykiety ikony (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)
- Wprowadzamy samodzielny komponent arkusza statycznego. (I0ef95, b/455862212, b/350779977, b/444176963, b/336349080)
Zmiany w interfejsie API
MaterialThemezostało przekształcone tak, aby używać pojedynczegoCompositionLocaldla danych motywu. Do lokalizacji kompozycji można teraz uzyskać dostęp za pomocąMaterialTheme.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ą. Usuń też wycofanie
TextButtonContentPaddingiTextButtonWithIconContentPadding. (I67283) - Wprowadzenie parametru wyłączającego obsługę przycisku Wstecz z
BottomSheet(Iff81e, b/483763626) - Przejście z eksperymentalnego schematu ruchu na standardowy (If822f, b/484003769)
- Dodano parametry „enabled” i „threshold” do elementu
PullToRefreshBoxw Material3. (I5610b, b/369044003) - Zastąp
horizontalSpacingtekstemhorizontalArrangementw plikachFilterChipiElevatedFilterChip. DodanohorizontalArrangementdoFilterChipDefaults. (If3d6a, b/304853782) - Ulepszyliśmy 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. DodanohorizontalArrangementdoAssistChipDefaults. (I15cec, b/304853782) - Dodaj getter 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
contentPaddingihorizontalArrangementdoInputChipiElevatedInputChip. Dodaj wartości domyślnehorizontalArrangementicontentPaddingdoInputChipDefaults. (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 material3. 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 zainicjowania 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 tymczasowo obejść błąd, 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 ustawieniu wartości „true” sprawi, że elementTextButtonbędzie miał prawidłowe specyfikacje dopełnienia. (Ib986e) - Dodano parametr
indicatorPaddingdlaWideNavigationRailItem. (I3d5dc) - Dodaj parametry
contentPaddingihorizontalArrangementdoSuggestionChipiElevatedSuggestionChip. Dodaj wartości domyślnehorizontalArrangementiContentPaddingdoSuggestionChipDefaults. UtwórzChipArrangementzajęcia. (Ida874, b/304853782) - Zaktualizuj pozycje menu, które można wybrać, aby zawierały parametr tekstu pomocniczego. wycofać poprzednie interfejsy API, które nie zawierały parametru tekstu pomocniczego; Dodaj też zalecane domyślne rozmiary ikon początkowych i końcowych. (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 dostępna 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
BottomSheetScaffold sheetPeekHeightna 0 wyłącza kotwicępartiallyExpanded.PartiallyExpanded– kotwica jest zachowywana w pierwszym przebiegu układu, aby umożliwić obliczenie układu. (Ia33a4, b/465158677) SheetState#targetValuepreferuje 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 wyśrodkowania pionowego 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
contentPaddingihorizontalSpacingdoAssistChipiElevatedAssistChip. Dodaj wartości domyślneHorizontalSpacingiContentPaddingdoAssistChipDefaults. (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 na interfejsie API 23 (I67a94, b/452713222)
DatePicker - 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, który powodował, że selektor
TimePickerAM/PM nie 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, który powodował, że tytuł
TopAppBarmógł nakładać się 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 wielu formatach za pomocą leniwych siatek. (I2b109, b/462137656)
- Dostępne są teraz elementy listy ekspresywnej Material, które obsługują interakcje i stylizację segmentową. Do
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
contentPaddingihorizontalSpacingdoFilterChipiElevatedFilterChip. Dodaj wartości domyślneHorizontalSpacingiContentPaddingdoFilterChipDefaults. (Iec6e3, b/455596578)
Poprawki błędów
- Ustawienie wartości
BottomSheetScaffold sheetPeekHeightna 0 wyłą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 (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óć wszystkie klawisze strzałek zmieniające wartości suwaka, aby naprawić problem z zablokowaniem 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 aktualizacji menu z wyrażeniami. Obejmuje to nową pozycję menu z możliwością przełączania, pozycję menu z możliwością wyboru, grupy menu i menu wyskakujące. Zawiera też nowe domyślne wartości menu ekspresywnego w
MenuDefaults. (I5cdd4, b/417731597, b/448646125, b/448646896, b/448646891) 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) - Usunięto 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 rozwijania menu na pływającym pasku narzędzi. (Ife952, b/422781172)
- Naprawiono przycinanie wskaźnika elementu
WideNavigationRail, jeśli jego szerokość jest większa ze względu na większy rozmiar etykiety. (I9d740, b/444728723) - Zaktualizowano przyciski końcowe przycisku dzielonego, aby optycznie wyśrodkować ikonę 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ć surowe, niezweryfikowane dane wejściowe od użytkownika. Dotychczasowe właściwości godziny i minuty pozostają bez zmian i reprezentują ostatni znany prawidłowy czas. (I09d74, b/394612017)
Poprawki błędów
- Usunęliśmy błąd polegający na tym, ż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 zapewnia natychmiastowe wyemitowanie
PressInteraction.Pressna urządzeniuawaitFirstDown, co daje natychmiastową informację wizualną. (If9e25, b/308501482) - Rozwiązaliśmy problem polegający na tym, że podczas przewijania kursor
Tooltipnie zmieniał kierunku. FunkcjaTooltipBoxwywołuje teraz rekompozycję, 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 bez zmian. (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) - Zmieniono
initialIsExpandednainitialIsShowingi 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ę klawiaturową w siatce wyboru roku w selektorze daty. (I02363, b/422425720, b/446814683)
- Poprawiono nawigację 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ł zaznaczenie 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
Textprzeciążenia funkcji kompozycyjnych akceptujące lambdęColorProducer, która umożliwia 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: po zamknięciu menu nie można już ustawić na nim fokusu, można je zamknąć klawiszem Esc, a po otwarciu fokus jest ustawiany na jego zawartości. (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źnika 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 dla 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)
SwipeToDismissBoxwraca teraz do ustalonegotargetValue, jeśli nie ma innych punktów zakotwiczenia.BottomSheetScaffoldteraz wraca do rozwiniętegotargetValue, jeśli nie ma innych kotwic. (I73d5e, b/428856426)- Poprawiono odstępy przycisków w
AlertDialog, gdy są ułożone pionowo. (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 o zawieszeniu 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 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 ustawienia regionalnego 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ązanie problemu
LinearProgressIndicator, który powodował, że wskaźnik przystanku 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 sięga do jego końca. (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 odwoływać się do niej ręcznie.
Zamiast tego zalecamy pobranie pliku XML z obiektem rysowalnym wektorowo 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 korzystają teraz z nowej funkcji
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 do wpisywania haseł
Ulepszenia istniejących komponentów Material Design 3
- Tekst obsługuje teraz
autoSize- Tekst z ciągiem znaków string
- Tekst z 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ę one 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ła przypadkowo przeniesiona do wersji stabilnej, a jej eksperymentalna adnotacja została usunięta w aosp/3701846. Oznaczanie go jako wewnętrznego. W wersji 1.5.0-alpha (I9182a) pozostanie ona w wersji eksperymentalnej dostępnej publicznie.
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 symbolem
ExperimentalMaterial3ExpressiveApilubExperimentalMaterial3ComponentOverrideApizostały usunięte. Aby nadal korzystać z tych funkcji, przejdź na interfejs1.5.0-alpha. (Ie4ae0) - W najbliższej wersji te ustabilizowane 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 o zawieszeniu 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 kształtem. (Ic5e61)
Poprawki błędów
- Zapewnia, że
DatePickerużywa własnego ustawienia regionalnego 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ązanie problemu
LinearProgressIndicator, który powodował, że wskaźnik przystanku 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 sięga do jego końca. (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 funkcji dismissRequest po kliknięciu zasłony. (I8e715)- Dodaj obsługę
trackCornerSizedo ścieżkiRangeSlider. (Iec529)
Zmiany w interfejsie API
- Wymagany parametr
railExpandeddlaWideNavigationRailItem, dodanomodalContentColordlaWideNavigationRailColorsi przeniesionoWideNavigationRailDefaults.modalContainerShapedoModalWideNavigationRailDefaults.containerShape. (Id60c5) - Przenieś parametr nowej funkcji kolorów
WideNavigationRailna ostatnie miejsce i wycofaj starą funkcję. (Iac7f7) PullToRefreshto teraz stabilny interfejs API (I18537)- Zmiany w interfejsie
DatePickersAPI. Usunęliśmy domyślną datę zakończenia null dlaDateRangePickeri wprowadziliśmy obowiązek jej przekazywania. W dokumentacji interfejsu API wyjaśniliśmy też, jak w przypadku reprezentacji daty używana jest północ UTC, a najnowsze metody pobierające i ustawiające, które korzystają z interfejsów API java.time, oznaczyliśmy na razie jako eksperymentalne. (I121b3, b/427952972) - Przenieś interfejs API parametru ikony
tint: ColorProducerdo wersji nieeksperymentalnej. (Ia0133) - Usunęliśmy eksperymentalne adnotacje z
DatePicker,DateRangePickeroraz ich stanów, klas i typów pomocniczych. (I0e4e0, b/391848485) - Zmieniono domyślną wartość focusable na false, aby poprawić fokus ułatwień dostępu, i dodano parametr
hasActiondoTooltipBox. (I62998) - Wprowadzenie do wersji produkcyjnej 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 obliczania 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) - Zaktualizuj działanie funkcji
SwipeToDismiss, aby obserwować stan rozliczony zamiast bieżącego. Przywraca dotychczasowe działanie, w którym działanie elementu zakotwiczonego jest wyłączane tylko wtedy, gdy komponent jest w stanie zamkniętym. (3844e07, b/425006844) - Menu wyskakujące
ExposedDropdownMenumożna teraz otworzyć za pomocą klawiatury. Menu jest teraz dostępne z poziomu 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 z wyróżnioną treścią wyśrodkowaną (I6f6d3).
Zmiany w interfejsie API
- Wdrażanie zastąpień XR na pasku narzędzi pionowych (Ia1604)
- Dodano funkcje programowego przewijania do
CarouselState(I12f8e) - Dodaj
ComponentOverridedo subskrypcjiModalWideNavigationRail(I4f440) - Dodaj
ComponentOverridedo subskrypcjiWideNavigationRail(I6354f) - Tworzę klucz
ComponentOverridedla chmuryHorizontalFloatingToolbar(I51116) - Tworzę klucz
ComponentOverridedla chmuryShortNavigationBar(I30e24) SwipeToDismissBoxStateodwołania doconfirmValueChangezostały oznaczone jako nieaktualne. Użytkownicy powinni zamiast tego korzystać z wywołania zwrotnegoSwipeToDismissBoxAPIonDismissed. (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 FAB przekazywanym do komponentu
FloatingToolbarnie stosował prawidłowo cienia. (Icdcc9, b/423336922) - Wszystkie karuzele domyślnie korzystają teraz z roli semantycznej Karuzela. (I7af12)
- Naprawiono nieprawidłowy ruch suwaka, gdy stan suwaka został zaktualizowany za pomocą
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, lokalna kompozycja. Umożliwia to dostęp do schematu ruchu motywu z poziomuCompositionLocalConsumerModifierNodesza 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 Tekst M3 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 polegający na nieprawidłowym położeniu symboli
SnackbariFloatingActionButton, gdy włączona była opcja od krawędzi do krawędzi. Scaffold prawidłowo stosuje teraz poziome wcięcia do tych komponentów. (Ib7c30, b/244400727) - Napraw ruch
BottomSheet, aby był częściowo rozwinięty.BottomSheetużywa teraz efektu szybkiegoMotionSchemepodczas ukrywania lub zwijania oraz domyślnego efektu przestrzennego podczas rozwijania. (Ifa46f, b/416063171) ColorSchemekonstruktor bez ról kontenera powierzchni został oznaczony jako ukryty i nie jest już zalecany do użycia. (Ia7237)- Usunęliśmy wymaganie
CircularWavyProgressIndicatorSize.minDimension > 0, które 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 z funkcją
toShape()wRoundedPolygon, która buforuje ścieżkę i powoduje problem, gdy wykonywanych jest 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 klasie
TooltipScopemetodę uzyskiwanialayoutCoordinateselementu zakotwiczenia. Wycofujemy metodędrawCaret, ponieważ programiści mogą używać tej nowej metody do uzyskiwania granic elementu zakotwiczenialayoutCoordinatesi tworzenia odpowiedniego kształtu zawierającego karetkę. (Ia2e12, b/329470609) - Dodano
java.timeobsługę selektorów daty: wprowadzono przeciążeniarememberDatePickerState/rememberDateRangePickerState, które akceptują obiekty java.time (np. początkoweLocalDate,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: typy liniowe wczytują się teraz o ok. 8,5% szybciej i wykorzystują o ok. 11% mniej pamięci, a typy okrągłe są o ok. 47% szybsze i wykorzystują o ok. 39% mniej pamięci. (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 element kompozycyjny
AppBarRow, 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łączyć. 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 użytkownikom podawanie górnych wcięć w przypadku rozwiniętego zachowania.
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/avataró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 od prawej do lewej spowodowane przez
LookaheadScope. (Ieb152, b/408118041) - Naprawiono awarię dolnego
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 przeciągania (I0ed0d)
- Dodano nowe funkcje
NavigationSuiteScaffoldiNavigationSuiteScaffoldLayout, które obsługują nowe typy układów, oraz opcjonalną treść głównego działania. (Ib262a, b/353144478) - Wycofaj parametr
Modifier.weightz parametrem wypełnienia wButtonGroup. Dodawanie wersji bez wypełnienia. (Id32bb) - Zmień nazwę komponentu
xSmall-ixLarge-IconButton, aby domyślnie wymawiaćextra. (Ib6e0f) - Dodanie nowych funkcji
NavigationSuite,NavigationSuiteItemiNavigationSuiteColors, które obsługują nowe typy układów. (I203d6) - Dodaj nowe funkcje
NavigationSuiteTypesinavigationSuiteType, które uwzględniają te opcje układu (If68f9).
Poprawki błędów
ColorScheme.contentColorForodwzorowuje terazsurfaceDimnaonSurface. (I8891a)- Zaktualizowaliśmy
DateInputTextFieldimplementację, aby rozwiązać problem, który powodował, że pole do wprowadzania danych nie odzwierciedlało daty ustawionej programowo. (I6c8d1, b/401143451) - Poprawiono kolejność zaznaczania w usłudze 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 wielkie litery w przypadku właściwości kompozycyjnych w obiektach domyślnych dla przycisku i przycisku przełączania. Dodaj metody w
ToggleButtonDefaultsiButtonDefaultsdotyczące zalecanego dopełnienia treści, kształtów, rozmiaru ikony, odstępów między ikonami i stylu tekstu w zależności od wysokości kontenera. (Iea69e) - Usunięto z
FloatingToolbarwycofane eksperymentalne funkcje i stałe. (I8f339) - Komponenty wysokości 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ącego małego dopełnienia treści. (I19bfe)
- Metody
TabRowiScrollableTabRowzostały wycofane na rzecz ich wersji podstawowych i dodatkowych. Wiersze na kartach 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) - Zmiany w interfejsie
TowRowsTopAppBarAPI. Usunęliśmy parametrexpandedlambda i dodaliśmy osobne parametry dla wysokości po rozwinięciu i zwinięciu. (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ę one w nowym oknie.SearchBarState, aby kontrolować stan paska wyszukiwania.TopSearchBar– dodawanie obsługi wcięć i zachowania przewijania.- Nowe przeciążenie funkcji
InputField, które korzysta z funkcjiSearchBarState(Ie0723, b/261496232, b/283311462, b/350916229, b/352872248)
Zmiany w interfejsie API
- Obsługa zmiany kształtu narożników 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łączonego wariantu
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 stosuje to do głównej treści. (I26420) FloatingToolbarsteraz obserwują usługę eksploracji dotykowej (np. TalkBack) i utrzymują pasek narzędzi rozwinięty i widoczny, gdy usługa jest włączona. (I02172)- Naprawiono błąd powodujący 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
- Dodaliśmy większą elastyczność w dostosowywaniu wyglądu pól wyboru dzięki nowemu interfejsowi API. Ten interfejs API udostępnia parametry Stroke, które pozwalają lepiej kontrolować sposób renderowania znacznika wyboru i obrysu pola wyboru. (I65a88)
- Dodano
TwoRowsTopAppBarAPI, bardziej konfigurowalną alternatywę dla średnich i dużych pasków aplikacji, która umożliwia tworzenie 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 możliwość dostosowania wysokości w każdym 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) - Dodano przeciążenia 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 ekranu) 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. Wprowadzamy też przeciążenia funkcjiNavigationSuiteScaffoldiNavigationSuiteScaffoldLayout, które mają parametr stanu. (I6a8c9, b/328674235)
Poprawki błędów
- Przenieś zajęcia
IconButtonColorsiIconToggleButtonColorszIconButtonDefaults.ktz powrotem doIconButton.kt. (I3c233)
Wkład zewnętrzny
SliderState#isDraggingjest teraz publiczny. (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
- Dodaliśmy
displayCutoutdo grupy odcięć, 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ą działać 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 Material 2 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
- Zmiany w interfejsie
TopAppBarAPI. Zmień nazwy średnich i dużych górnych pasków aplikacji z podtytułem na*FlexibleTopAppBar. Ujednoliciliśmy warianty kolorów w jednej funkcjiTopAppBarDefault.topAppBarColors()i dodaliśmy parametr kolorusubtitle, który można zastosować w przypadku podanego komponentu kompozycyjnego napisów (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 jednego koloru kontenera. (I9a054) - Dodano i użyto nowej eksperymentalnej adnotacji
ExperimentalMaterial3ComponentOverrideApi(Ia1eaf) Modifier.indicatorLineprzyjmuje teraz kształt pola tekstowego, aby obsługiwać przycinanie. (I8c5f3, b/380704151)- Zmiana nazwy eksperymentalnych funkcji
FloatingAppBarnaFloatingToolbar(I1dbf8) - Dodano nowy element
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 polecenia (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 informacyjnego, który powodował, że po zamknięciu paska informacyjnego włączał się komunikat, gdy funkcja
TalkBackbyła włączona. (/I9db53)
Wkład zewnętrzny
- Ujednolicone
BasicTooltipw foundation iBasicTooltip/Tooltipw 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/targetw przypadku wyliczenia, 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 logicznych. (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 ponownego komponowania. (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 wdrożenie będzie zgodne 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
- Przedstawienie 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łączania. (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 filtra został zmieniony z podstawowego na
OnSurfaceContainerzgodnie ze specyfikacją. Wszystkie kolory obramowania filtra zostały zmienione z obramowania na wariant obramowania 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 umożliwić natychmiastowe wpisanie tekstu. Zmiana powoduje dodanie parametru
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ę
TextFieldLabelScopeprogressnalabelMinimizedProgress TextFieldLabelPositionDefaultzmieniono nazwę naAttached. Usunięto elementy interfejsu. (If75c6)- Rozwiązaliśmy problem z
DatePickerw trybie wprowadzania danych, 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żywanie ustawień regionalnych w
DatePickeriDateRangePickerpodczas ustawiania ich bezpośrednio za pomocąDatePickerStatelubDateRangePickerState. Pamiętaj, że jeśli ustawisz ustawienia regionalne 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ślnymi ustawieniami regionalnymi platformy. (I37073, b/326490763, b/321657276) - Plakietka
SheetState.isAnimationRunningjest teraz widoczna. (I9a3d7) DatePickerColorsmają teraz pierwszeństwo przed wszystkimi kolorami, które są z nimi sprzeczne i zdefiniowanymi 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 użycie wariantów przycisków dostarczonych 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. (I30ce9)
Poprawki błędów
- Przyciski
DatePickeriDateRangePickerprawidłowo aktualizują teraz wyświetlany miesiąc, gdy są ustawiane za pomocą stanudisplayedMonthMillis. (If9e47, b/333414302) ModalBottomSheetodsuwa teraz treści od 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ązanie problemu 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 poprawić użyteczność, kontrast kolorów i spójność w systemie (Ibc297). Aby przywrócić poprzednie działanie, skopiuj domyślne kolory i zmieńselectedTextColornaMaterialTheme.colorScheme.onSurface.- Komponenty Material 3 korzystają teraz z nowej funkcji
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 kolorów
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ąreverseLayout. (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, które są 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 Material
SecureTextFieldiOutlinedSecureTextFieldw przypadku pól do wpisywania hasła. (I7e22d) - Dodano zakres do etykiet pól tekstowych, aby można było wysyłać zapytania o postęp animacji. (If5ec8)
- Dodaje obsługę
MotionEvent.CLASSIFICATION_DEEP_PRESSw etykietkach. (I62e6a) isAfternoonwTimePickerStatejest teraz w interfejsie rozszerzeniem zamiast zmiennej. Zmieniliśmy jego 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) - Dodano parametry
amplitudeiwaveSpeeddo nieokreślonych wariantów parametrówLinearWavyProgressIndicatoriCircularWavyProgressIndicator. (I2a0c5) - Obsługa zmiany kształtu przycisku ikony w zależności od tego, czy jest on naciśnięty lub zaznaczony. (Ibc781)
- Aktualizacja klasy typografii w celu obsługi podkreślonych skal typów. (Ifa13c)
SplitButtonprzekształcenia kształtu na podstawie stanu domyślnego lub wciśniętego, Usunięto interfejs APIAnimatedTrailingButton, ponieważ interfejs APITrailingButtonmoże oferować te same dostosowania (I95066).- Dodaj modyfikator, aby animować wyświetlanie i ukrywanie przycisku FAB, np. podczas przewijania treści. (I8338d)
- Dodawanie połączonych kształtów grupy przycisków i odstępów do
ButtonGroupDefaults, które będą używane w przykładzie. (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
Scaffoldpodrzędnych funkcji kompozycyjnych. Kolejność totopBar,bottomBar, fab, content, snackbar. (I5936b) - Rozwiązaliśmy problem w przypadku elementów
DatePickeriDateRangePicker, który polegał na tym, że w niektórych ustawieniach regionalnych i szablonach 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łnienia 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ą teraz wyświetlany miesiąc, gdy są ustawiane 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ązanie problemu 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żywanego 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 nawigacji (
ModalDrawerSheetiDismissibleDrawerSheet) obsługuje teraz przewidywane przejście wstecz w przypadku U+ jako funkcję opcjonalną (Ie5b0b) DropdownMenuobsługuje teraz niestandardowe kolory, kształty, 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 zwiększyć dostępność przez dodanie odstępu i wskaźnika zatrzymania. (I21451) - Dodano domyślny karet do rozbudowanego dymku z podpowiedzią. Obsługuje on rysowanie niestandardowego karetu na podstawie elementu zakotwiczonego
LayoutCoordinates. (Ifd42c) Zmiany powodujące niezgodność - Nowe interfejsy API do odświeżania przez przeciągnięcie:
- Uproszczono
PullToRefreshState, aby 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
PullToRefreshState. Jest on obsługiwany przez nowy elementPullToRefreshBoxlubModifier.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
- Uproszczono
- 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) - Zaktualizowaliśmy kolory suwaka i
ProgressIndicatorzgodnie z nowymi specyfikacjami dotyczącymi kontrastu elementów nietekstowych. (I26807) - Komponenty korzystają teraz z
SurfaceContainerwariantów. Komponenty, które wcześniej obliczały kolor za pomocąSurfaceiTonalElevation, domyślnie używają teraz rólSurfaceContainer, na które nie ma wpływu podniesienie tonalne. (b/304584161) - Role podstawowe powierzchni i kontenera powierzchni 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 pierwszym elementem w kolejności przechodzenia semantycznego, a po nim następuje 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 „Przeciągnij, aby odświeżyć”, aby włączanie było wartością logiczną zamiast funkcji lambda. Obsługa wyrównania treści wPullToRefreshBox(I75679)- Utworzenie
TooltipScopezapieczętowanego interfejsu i wewnętrznej implementacji do użycia wTooltipBoxi etykiecie. (I3833e) - Dodaliśmy 2 nowe modyfikatory:
CarouselItemScopeimaskCliporazmaskBorder, aby ułatwić dodawanie kształtu i obramowania 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 materialu. (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 znaku
DpSizezamiastCaretProperties. UsuwamCaretProperties. Zmień nazwęCaretScopenaTooltipScope. (Id9a76) - Zaktualizowano interfejs API do pobierania linków w tekście w stylu Material. W szczególności usunęliśmy metody z
TextDefaultsdo tworzenia tematycznychLinkAnnotationsi parsowania kodu HTML z tematycznymi linkami. Zamiast tego dodaliśmy do funkcji kompozycyjnej Text parametrTextLinkStyles, który umożliwia stylowanie linków. (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:
- Uproszczono
PullToRefreshState, aby 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
PullToRefreshState. Jest on obsługiwany przez nowy elementPullToRefreshBoxlubModifier.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)
- Uproszczono
Zmiany w interfejsie API
- Pole
RippleConfiguration#isEnabledzostało usunięte, 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ę nad paskiem stanu, gdy włączony jest tryb od krawędzi do krawędzi; Treści w arkuszu dolnym mogą teraz wykorzystywać wcięcia okna, co pozwala wyświetlać treści 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ć skuteczność. (I991e0)- Link tekstowy ma teraz opcję stylu stanu naciśnięcia oprócz normalnego stylu, stylu po najechaniu kursorem i stylu po zaznaczeniu.
TextDefaultsmetody otrzymały argumentpressedStyle, który to potwierdza. (Ic473f, b/139312671)
Poprawki błędów
- Punkty zaczepienia paska nawigacyjnego są teraz zgodne z szerokością
drawerContent. (Ibc72f, b/245355396) OutlinedTextFieldgórny odstęp od 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 też 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ókiBasicTooltipw Foundation nie zostanie ustabilizowany. (Icda29) - Dodano obiekt
TextDefaults, który zawiera metody tworzenia obiektuLinkAnnotationi parsowania ciągu znaków z tagami HTML, które stosują atrybutMaterialThemedo linków (I98532, b/139312671). ExposedDropdownMenuBoxScopenie zezwala już na podklasy. Menu rozwijane mają teraz atrybutMenuAnchorType, który należy przekazać domenuAnchor, aby zapewnić lepszą dostępność. Zamiast przekazywać wartośćfocusabledo funkcjiExposedDropdownMenu, która została wycofana, używaj tej metody.menuAnchorma nowy parametr do kontrolowania stanuenabled. (I55ee6, b/257209915, b/308840226)- Naprawiliśmy kolor obramowania elementu
OutlinedButton, gdy jest on 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 został wycofany. 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)- Usunięto 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 ikonie, 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 górnych pasków aplikacji podczas przewijania treści. Rozwiązaliśmy problem, który powodował, że
MediumTopAppBarobcinał tytuły 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)SwipeToDismissBox,SwipeToDismissBoxDefaults,SwipeToDismissBoxStateiSwipeToDismissBoxValuesą teraz oznaczone jako stabilne. (I5f000)- Usunięto wycofane wyliczenia
DismissDirectioniDismissValueoraz interfejsy API. (I89ccd) - Dodano eksperymentalny tag do
CarouselStateobiektu towarzyszącegoCarouselStatekaruzeli. (I94154) - Wycofaliśmy
LocalMinimumInteractiveComponentEnforcementi wprowadziliśmyLocalMinimumInteractiveComponentSize, aby go zastąpić. (I7a7ac) - Konstruktor
SearchBarColorsjest teraz publiczny. (I769ca) - Dodano parametr
gesturesEnableddo listySwipeToDismissBox. (Idc59f, b/324170119) - Usunięto interfejsy API pól tekstowych, które został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 niezgodność w wyglądzie
- 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 podczas pracy z edytowalnymi polami tekstowymi powinien mieć wartośćfalse. (I4184c, b/323694447, b/278609042)
Zmiany w interfejsie API
- Oznaczenie
ScaffoldSubcomposeInMeasureFixzostało usunięte. (Ie2a4b) - Urządzenie
NavigationRailItemColorsjest teraz oznaczone jako@Immutable. (If6112, b/327660613) - Urządzenie
NavigationBarItemColorsjest teraz oznaczone jako@Immutable. (I42a30, b/298064514) - Zmiana kolejności parametrów w komponencie Slider Track. (I9f315)
- Usługa
ExposedDropdownMenujest teraz wdrażana przy użyciuPopup. 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 powierzchni i kontenera powierzchni zostały nieznacznie zmodyfikowane, dzięki czemu w motywach jasnym i ciemnym mają więcej odcieni. (I677a5)
- Zaktualizowaliśmy kolory suwaka i
ProgressIndicatorzgodnie z nowymi specyfikacjami dotyczącymi 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
- Przywracanie stabilności stanów suwaka. Ustawiam
State.onValueChangeFinishedjako wartość ponownie. Zawijanie elementuonValueChangeFinishedw elementrememberUpdatedState. (I82ab2, b/322269951) - Komponenty Navigation korzystają teraz z nowych ról
SurfaceContainer.DrawerDefaultsudostępnia teraz osobne atrybutystandardContainerColorimodalContainerColor.DrawerDefaults.ModalDrawerElevationto teraz0.dp. (I7fbac) - Usuwamy
@Stableze stanów urządzeniaSlider, 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
SurfaceContainerwariantów. Komponenty, które wcześniej obliczały kolor za pomocą powierzchni 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 kolor nieaktywnego, wyłączonego kontenera
ElevatedFilterChipbył czarny. (I400e6, b/322407043) - Naprawianie wskaźnika postępu bez określenia czasu oczekiwania, gdy postęp wynosi 0 (Id6582)
- Rozwiązano problem z elementami
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 przy zagnieżdżaniu elementu
DateRangePickerlub wyświetlaniu dowolnego selektora dat na małych ekranach z większymi czcionkami elementDatePickerDialogwyświetla swoje przyciski. (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 wyłącza wybrane ś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. Nieaktywne elementyFilledIconButtonmają teraz kolor konteneraSurfaceContainerHighest. (I792c9) - Aktualizuje kolor kontenera
TimePickeri kolor 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ć predykcyjne cofanie na urządzeniach z Androidem U+ (Iccf32, b/281967264, b/304850357) - Zaktualizowano Compose M3
SearchBar, aby obsługiwać przewidywane przejście wstecz w U+ (I657f8) - Zaktualizowano suwak, aby zwiększyć dostępność przez dodanie odstępu i wskaźnika zatrzymania. (I3058e)
- Zaktualizowaliśmy
ProgressIndicator, aby zwiększyć dostępność przez dodanie odstępu i wskaźnika 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
- Zabawny post
drawStopIndicatorjest teraz publiczny. (I3f59f) - Oznacz funkcję
DatePickerformatWithSkeletonjako wewnętrzną (Ic65dc). DropdownMenuobsługuje teraz niestandardowe kolory, kształty, 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, aby udostępniać 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 w komponencie. Ustawienie wartości null powoduje, że niektóre komponenty nigdy nie przydzielająMutableInteractionSource, a inne tworzą 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 rozchodzenia się fali na poziomie poszczególnych komponentów lub poddrzew za pomocą stałych wartości. Może to być np. zmiana koloru komponentu, nad którym nie masz kontroli, lub wyłączenie efektu fali dla komponentu. 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ącreateRippleModifierNode. (I7b5d6, b/298048146) - Dodaje nowy interfejs API ripple 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 elementRippleTheme. (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 sytuacjach w połączeniu zLookaheadScope. (Ie6401) - Wyrównanie plakietki jest dostosowywane tak, aby była bliżej środka treści elementu zakotwiczenia w stosunku do prawego górnego rogu. (I18a28)
- Rozwiązaliśmy problem z ułatwieniami dostępu w przypadku elementu
DateRangePicker, w którym tekst „Miesiąc–Rok” był przekazywany jako element, z którym można wejść w interakcję, użytkownikom czytnika ekranu, Switch Access i Voice Access. (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
State.onValueChangeFinishedjako wartość ponownie. Zawijanie elementuonValueChangeFinishedw elementrememberUpdatedState. (Ie8fd0, b/322269951) - Usuwamy
@Stableze stanów urządzeniaSlider, 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 widoku i Compose. Było to związane ze zmianą mającą na celu poprawę wydajności. Obejście: używajTabRowzTabRowDefaults.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 od prawej do lewej, automatyczne ukrywanie podczas przewijania)
- Aktualizacja wizualna kart
- Plakietka (aktualizacja wyrównania)
Promocja eksperymentalnych interfejsów API do wersji stabilnej
Ulepszenia 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) - Naprawiono błąd w elemencie
disabledContentColorwprowadzony w wersji1.2.0-beta02i dodano 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) parametruLocalContentColorzamiast do wartościcontentColorokreślonej przez użytkownika. Obejście 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 wszystkich elementów
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 obramowania karty z obramowaniem jest teraz prawidłowo mapowany na
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)
- Rozwiązano problem z obsługą przycisku
ModalBottomSheetw systemie Android T/13+ w przypadkuandroid: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ęto wycofane eksperymentalne interfejsy API do wyświetlania etykietek. (I438cb)
- Zmień nowe przeciążenia
TabRow, aby nie korzystały z podkompozycji. Dzięki temu wskaźnikiTabRowmożna tworzyć w inny sposób, korzystając z niestandardowych modyfikatorów. (Ife741) - Wycofanie interfejsów API
DismissDirectioniDismissValue. Zostały one scalone wSwipeToDismissValue, którego wartości wskazują zarówno pozycję, jak i kierunekSwipeToDismissBox. Wartość w poluDismissState.progressjest teraz oznaczona jakoFloatRangepomiędzy0.0a1.0. Wycofane funkcje Saver i Constructor zostały usunięte.DismissStateSwipeToDismisskomponent, obiekt stanu i obiekt domyślny zostały oznaczone jako eksperymentalne. (Ib54f2)
Poprawki błędów
- Domyślnym wskaźnikiem dla
PullToRefreshjest 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.ktużywa teraz też zakresu Kotlin. (I025cb)- Oznacz funkcje fabryczne modyfikatora 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ę funkcji „przeciągnij, aby odświeżyć” w Material 3. (I16456, b/261760718)
Zmiany w interfejsie API
- Oznacz
SwipeToDismissBoxDismissDirectioniDismissValuejako eksperymentalne. (I517b0) - Zmień nazwę
SwipeToDismissnaSwipeToDismissBox. Zmień nazwębackgroundnabackgroundContent, adismissContentna końcową lambdęcontent. (I7f4d3) - Udostępnij publicznie konstruktor dla
ChipElevationiSelectableChipElevation. (Ie0c48, b/308432421) - Dodaję
ModalBottomSheetProperties. PrzenoszęsecurePolicydoModalBottomSheetProperties. DodawanieisFocusableishouldDismissOnBackPressdoModalBottomSheetProperties. Te nowe wartości logiczne pomagają określić, jak modalny arkusz dolny 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 zalecaj bezpośrednie używanie klasyBorderStroke. (I89cc2) - Interfejsy Foundation Tooltip API są teraz
@ExperimentalFoundationApi. (I30b0b) - Atrybuty
TabRowiScrollableTabRownie są już wycofane. 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 z usługiBorderStroke. (I89b9b)- Zmieniliśmy nazwę ogólnej funkcji
AlertDialognaBasicAlertDialogi wycofaliśmy poprzednią funkcję. (Idbe52) - Zmień nazwę interfejsów API
SwipeToDismissnaSwipeDismissi przekształć nowe interfejsy APISwipeDismissw stabilne. (I14cbe) - Dodano elementy
tonalElevationishadowElevationdo interfejsów API etykietek. Dodatkowo interfejsy APITooltipBox,PlainTooltipiRichTooltipzostały ponownie oznaczone jako eksperymentalne, 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 dochodziło do awarii
SwipeToDismiss. (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 zdefiniować zachowanie dlaWindowManager.LayoutParams.FLAG_SECURE. (Icdac8, b/296250262) - Dodano nowe przeciążenia funkcji
LinearProgressIndicatoriCircularProgressIndicator, które przyjmują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
DatePickerawarię, która występowała podczas szybkiego klikania przycisków strzałek nawigacyjnych, gdy wyświetlany miesiąc znajdował się na początku lub końcu dozwolonego 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ów APIAnchoredDraggable.DrawerStateanimateTozostało zastąpione metodami open i close, a przesunięcie jest teraz udostępniane jako liczba zmiennoprzecinkowa zamiast obiektu stanu. Możesz uzyskać do niego dostęp bezpośrednio na stroniecurrentOffset. (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) - W przypadku typów stałych i przewijanych
TabRowsdostępne są teraz warianty podstawowe i dodatkowe. Są one prawidłowo zmapowane 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
- Naprawienie problemu z awarią, gdy
DatePickerjest inicjowany za pomocąDatePickerFormatter, który 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 zachowaniu
ColorSchemejest teraz niezmienny, co sprawia, że indywidualne aktualizacje kolorów są mniej wydajne, ale częstsze używanie kolorów jest bardziej wydajne. Powodem tej zmiany jest to, że większość aplikacji nie ma aktualizowania poszczególnych kolorów jako głównego zastosowania. Jest to nadal możliwe, ale będzie wymagało większej liczby ponownych kompozycji niż wcześniej. 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)- Tonal Elevation nie animuje już różnych stanów interakcji, aby dopasować się do specyfikacji. (Icdd12)
Zmiany w interfejsie API
- Dodano nowy komponent
BottomAppBar, który przyjmuje jako parametr komponentBottomAppBarScrollBehavior, aby automatycznie go ukrywać podczas przewijania treści. Dodano teżFabPosition.EndOverlaymożliwość nakładania przycisku typu FAB na dolny pasek aplikacji w widoku, zamiast umieszczania 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 przypadku etykietek. (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łe poziome wypełnienie ekranu od krawędzi do krawędzi w
BottomSheetdzięki użyciu prawidłowego pomiaru szerokości ekranu urządzenia. (I1df0c, b/299058752) - Rozwiązaliśmy błąd polegający na tym, że funkcja
ModalBottomSheetnie wywoływała funkcjionDismissedRequest, gdy była zamykana 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 odzwierciedlania ikon. Szczegółowe informacje znajdziesz w informacjach o wersji.
Zmiany w interfejsie API
SliderStateimplementujeDraggableState(I9b116)- Zmień kształt, aby był wymaganym parametrem. Zmień nazwę
positionnaindexw funkcji pomocniczej kształtu. (I34941) - Aktualizuje
DatePickerformatWithSkeleton, aby zawierał 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, który powodował, że niektóre komponenty korzystające z kompozycji podrzędnej (np.
BottomSheetScaffold) w komponencie Scaffold wLookaheadScopezbyt wcześnie próbowały odczytać swój rozmiar. (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
DropdownMenuwoffset, aby przesunięcia w osi X zależały wyłącznie od lokalnego kierunku układu, a przesunięcia w osi Y nie były już odwracane, gdy menu znajduje się w pobliżu dolnej krawędzi ekranu. (Iccc74, b/294103942) - Poprawiliśmy obliczenia
DropdownMenuwoffset, aby przesunięcia w osi X zależały wyłącznie od lokalnego kierunku układu, a przesunięcia w 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. PolecenieCheckboxDefaults.colors()disabledUncheckedColorma teraz wpływ tylko na obramowanie pola wyboru. W szczególnych przypadkach, w których musisz ustawić kolor wewnętrznego pola, gdy jest ono wyłączone i odznaczone, 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ą dzielniki pionowe. (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) - Element dzielący nosi 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
ModalBottomSheetuwzględnia kierunek układu lokalnego. (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
- W typografii Material 3 znak
includeFontPaddingjest domyślnie zastępowany znakiemfalse. 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 tym poście na blogu. (I6266f, Icabc3)
Nowe funkcje
- Dodano przeciążenie dla funkcji
RangeSlider, która 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
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 programiści mogli określać, czy etykietka ma obsługiwać zdarzenia dotyku. Pamiętaj, że może to spowodować przerwanie automatycznego przechodzenia fokusu ułatwień dostępu. (Ie32d8)
- Zoptymalizowana dostępność pod kątem wydajności i przydziału 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 wcięcia okna. Pamiętaj, że gdy te parametry są podane, działanie dopełnienia treści na podstawie parametrówtopBaribottomBarpozostaje bez zmian. (I08b73, b/264601542) - Popraw wyrównanie górnego paska aplikacji, aby długi tytuł nie nakładał się na ikony działań ani ikonę nawigacji. (I4369f, b/236994621)
- Pozycje kart mają 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 odznaką, 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.- Półprzezroczysta nakładka dla
ModalBottomSheetmoże być teraz rysowana za paskiem stanu, gdy wartośćwindowInsetsjest ustawiona na zero - Zaktualizowana domyślna funkcja
ModalBottomSheet, która nie obejmuje pasków systemowych, w tym nawigacji - 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)
- Półprzezroczysta nakładka dla
- 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 wycofanej już właściwościIndicatori może ją 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 dla funkcji
Slider, która 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. DodanoRichTooltipStateImpliPlainTooltipStateImpldla stanów domyślnych. Dodano funkcjeremember*State, aby uzyskać te stany wdrożenia. UsuniętoTooltipSyncna rzeczTooltipDefault.GlobalMutatorMutex. (I7813d) - Zaktualizowaliśmy
DatePickerColors, aby uwzględnić dodatkowe opcje dostosowywania kolorów separatora, nawigacji i pól wprowadzania 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).ModalBottomSheetprzeniesione tylko na Androida. ProtokółModalBottomSheetnie jest zalecany do użytku na komputerach, a jego funkcjonalność nie jest już aktywnie rozwijana. (Ib3778)
Poprawki błędów
- Poprawiliśmy 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 oknie dialogowym. Ta poprawka dostosowuje implementację do specyfikacji Material Design. (I029de, b/235454277) - Rozwiązanie błędu w
ListItem, który powodował używanie nieprawidłowego dopełnienia w przypadku 3-wierszowych elementów zamówienia. (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łowe godziny po zainicjowaniu z wartością 23 godzin. (b/278242122) - Poprawiono początkowy stan przełącznika w przypadku weryfikacji południa i minut. (b/269768197, b/282790635)
- Naprawiono błąd, w którym funkcja
state.hourzwracała nieprawidłową wartość o godzinie 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 funkcji
ModalBottomSheetbez parametruwindowInsetw celu zapewnienia kompatybilności binarnej. (Ib7959) - Dodaj parametr wstawień okna do
ModalBottomSheet.- Półprzezroczysta nakładka dla
ModalBottomSheetmoże być teraz rysowana za paskiem stanu, gdy wartośćwindowInsetsjest ustawiona na zero - Zaktualizowana domyślna funkcja
ModalBottomSheet, która nie obejmuje pasków systemowych, w tym nawigacji - 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)
- Półprzezroczysta nakładka dla
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).ModalBottomSheetprzeniesione tylko na Androida. ProtokółModalBottomSheetnie jest zalecany do użytku na komputerach, a jego funkcjonalność nie jest już aktywnie rozwijana. (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 parametrskipHiddenState- Użytkownik
BottomSheetScaffoldma teraz zdefiniowaną ukrytą kotwicę, która jest domyślnie wyłączona. - Zaktualizowano dokumentację:
SheetState.requireOffset BottomSheetDefaults.MinimizedShapezmieniła nazwę naBottomSheetDefaults.HiddenShape(I839f4, b/273870234)
Poprawki błędów
- Nie przełączaj tarczy z godzin na minuty, gdy włączone jest czytanie dotykiem. (I717d0)
- Semantyka uchwytów przeciągania
ModalBottomSheetiBottomSheetScaffoldzostała scalona. (I05afb) - Parametry modyfikatora
BottomSheetScaffold,containerColoricontentColormają teraz wpływ tylko na treści. (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. Możesz teraz przekazywać wartość null w przypadku nagłówka, tytułu i
showToggleMode = false, aby wyświetlać selektor bez nagłówka. (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. W zależności od ustawień czcionki i skryptu może to spowodować zmianę o kilka pikseli w aplikacjach. (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 funkcję do elementów
DatePickerStateiDateRangePickerState, która umożliwia 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 zachowaniem 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 to terazReadOnlyComposablesw odpowiednich przypadkach. (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 testu dotykowego ekranu ochronnego dlaModalBottomSheet. (I2311a, b/270425759) - Przenieś działania semantyczne
BottomSheetdo uchwytu przeciągania. (I158ba) ModalBottomSheetjest teraz aktywowany przy 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 komponent Time Input, który współpracuje z
rememberTimePickerState()i jest zgodny ze specyfikacją M3 dla wprowadzania czasu (Ia4fab). - Dodano interfejs API Material 3
DateRangePickerdo 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 stanu 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 stanu błędu. Parametr
- Kolory pola tekstowego menu rozwijanego 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 suwakiem i ścieżką. Promowanie wersji
RangeSliderjako stabilnej. (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 Material 3
DatePickeriDateRangePicker. (I5087e) - Usunięto błąd, w którym ograniczenie maksymalnej wysokości jest propagowane i może powodować awarię. (I30d8c)
- Usunięto role semantyczne z powierzchni, które można klikać i wybierać. 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 prefiksu i sufiksu (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ą pomocnicząrememberTimePickerState(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 modalnej planszy dolnej w Material 3, w tym
ModalBottomSheetiModalBottomSheetDefaults. Wprowadza też komponentySheetStateirememberSheetState, które można wykorzystać w przyszłych komponentach arkusza. (I0853a, b/244189383)
Zmiany w interfejsie API
- Stabilizacja interfejsu API
showSnackbar(I195c2, b/261424370) - Ustabilizowanie interfejsów API dla elementu wspomagającego i elementu z sugestią (Ibb67b, b/261424370)
- Przeniesiono interfejsy API
ListItem,ListItemDefaultsiListItemColorsdo wersji nieeksperymentalnej (I7e7fa, b/261438882) - Promowanie wersji
SliderPositions,SliderDefaults.ThumbiSliderDefaults.Trackdo stabilnych oraz dodawanie nieeksperymentalnych interfejsów APISlideriRangeSlider, które zawierają niestandardowe miniatury i ścieżki. Wycofujemy też poprzednie interfejsy APISlideriRangeSlider. (Ie5ea6, b/261566890) - Udostępniono właściwość
Modifier.tooltipAnchor(), aby deweloperzy mogli przekazywać ją do elementu zakotwiczonego, aby wskazać, że etykietka ma być wyświetlana po długim naciśnięciu. Zaktualizowaliśmy interfejs APIPlainTooltipBox, aby nie zezwalał już na wartość 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ść semantyczną
IsContainerw przestrzeniach. 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 kołowych wskaźników postępu oraz parametr zakończenia linii dla kołowych 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 zgłoszono pierwotnie problem. Poprawka została przesłana i będzie dostępna w następnej aktualizacji Compose. Aby rozwiązać ten problem, zaktualizuj bibliotekiandroidx.compose.materialiandroidx.compose.material3do najnowszej wersji (1.1.0-alpha04) lub przywróć starszą wersję bibliotekiandroidx.compose.foundation(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. (Ie44e1) - Dodaj nowe domyślne dopełnienie treści dla przycisku tekstowego z ikoną. (I8f662)
- Dodano wyłączone kolory paska nawigacyjnego i paska bocznego. (Ia7892, b/258867034)
- Dodaliśmy 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 z naciśnięciem, gdy gesty mogą stać się zdarzeniami przewijania. - Rozwiązaliśmy problem z nieprawidłowym opóźnianiem efektów falowania przez element
Clickables, gdy jest 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 wersji 2.5.1 biblioteki Lifecycle. (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 zExposedDropdownMenuBox, które wyświetlało 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 wierszach (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 paski aplikacji Material 3, 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 użyciem 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 Material 3, 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 FAB i rozszerzony przycisk FAB
- Karty
- Pole wyboru
- Chips
- Okna
- Separator
- Menu
- Lista
- Pasek nawigacyjny
- Panel nawigacji
- Panel nawigacji
- Wskaźnik postępu
- Opcja
- Suwak
- Przełącz
- Karty
- Pola tekstowe
- Górny pasek aplikacji
- Ikona
- SMS
- Surface
- 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 okna wyświetlać pasek nawigacyjny zamiast nawigacji u dołu. Więcej informacji i przykłady użycia znajdziesz w dokumentacji interfejsu API dlaWindowSizeClass.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 w przypadku małych górnych pasków aplikacji 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 w 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 dialogowe powinny informować użytkowników korzystających z czytnika ekranu 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
Najnowsze motywy, komponenty i inne funkcje kompozycyjne dostępne w Compose znajdziesz w omówieniu dokumentacji API Compose Material 3.
Zmiany w interfejsie API
- Zaktualizowano 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 paska stanu i paska nawigacyjnego. Aby uzyskać najlepszy efekt, 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)
- Zmiana kolejności parametrów komponentu i arkusza panelu nawigacyjnego, aby zachować spójność w interfejsie API (I45d0b).
- Usunięto parametr
startIndentz elementu 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 ikon wiodących, aby zachować spójność w ramach interfejsu API (Ie2637)
- Oznaczono
BadgeDefaultsjako eksperymentalne. (I98ef3) - Usunięcie wycofanej funkcji panelu nawigacji. (I4f2db)
- Zmiana kolejności parametrów suwaka w Material 3 w celu zachowania spójności w interfejsie API (I0aee7)
- Zmiana kolejności parametrów
NavigationBariNavigationRailw celu zachowania spójności w interfejsie API (I51cda) - Zmieniono 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 działania, aby była zgodna z górnym paskiem aplikacji (Id75be)
- Oznacz
BadgeiBadgedBoxjako eksperymentalne, ponieważ wyrównanie kotwicy jest nadal w trakcie zmian. (I1712e, b/236524516) - Zmień adnotacje
@ExperimentalMaterial3Apiw wariancie przycisku z ikoną na@OptIn(I070b5) - Treści w szufladzie nawigacyjnej zostały przeniesione do osobnego komponentu, aby można było określić 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 konturowych. (Id6d54)
- Popraw konwencje nazewnictwa 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) - Dodanie
ButtonDefault.ButtonWithIconContentPaddingdo użycia z przyciskami zawierającymi ikonę. (I2bf9c) - Pola tekstowe zostały oznaczone jako eksperymentalne, aby zapewnić większą elastyczność w przypadku przyszłych zmian w interfejsie 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
InputChip, aby obsługiwać stan, który można wybrać zgodnie ze specyfikacją Material Design. Dodatkowa obsługa kolorów wFilterChipdla 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 szczegółowy 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
- Element 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
TextFieldDefaults.BorderStroke, która rysuje obramowanie wOutlinedTextField, naTextFieldDefaults.BorderBox. (I5f295) - Zmiany wizualne dotyczące przełącznika M3 (Iab30e)
- Zezwalanie na przekazywanie kolorów do standardowych przycisków z ikonami. (Ia2445)
Poprawki błędów
- Dodanie do elementu material3/Scaffold kontroli 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 okna wyświetlać 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 publicznym przewodniku po obsłudze różnych rozmiarów ekranu.
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 Material 3 Snackbar API, aby akceptował wartości kolorów dla opcjonalnego działania i działania zamykającego. (Ibe4b4)
- Częściowe wykorzystanie (obniżenie lub pozycja) zostało wycofane w
PointerInputChange. Aby w pełni wykorzystać zmianę, możesz użyćconsume(). Za pomocąisConsumedmożesz sprawdzić, czy ktoś inny wcześniej wykorzystał zmianę. PointerInputChange::copy()zawsze tworzy teraz płytką kopię. Oznacza to, że po wykorzystaniu jednej kopiiPointerInputChangezostaną wykorzystane kolejne kopie. Jeśli chcesz utworzyć niepowiązany obiektPointerInputChange, użyj konstruktora. (Ie6be4, b/225669674)- Zmiany w interfejsie Cards API umożliwiające otrzymywanie kolorów kontenera i treści za pomocą interfejsu
CardColorsoraz obsługę stanu wyłączenia w przypadku kart, które można kliknąć. (I927df) - Parametr
backgroundColorzostał zmieniony nacontainerColorw polach tekstowych Material 3, aby zapewnić większą spójność z innymi komponentami. (I6fbd9)
Poprawki błędów
- Aktualizacje standardowego elementu
IconButton, aby dostosować go do specyfikacji Material 3. (I09eab) - Przenieś wysokość górnego paska komponentu Scaffold z biblioteki material3 do dopełnienia przekazywanego do treści, aby treść była renderowana pod górnym paskiem aplikacji. Jeśli
PaddingValueszostaną zignorowane, 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 systemu MaterialTheme i podsystemu Shape. (I37426)
- Dodano rozwinięty parametr do
ExtendedFloatingActionButton, aby kontrolować, czy przycisk 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
- Dodaliśmy 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 Material 3 Surface API, które przywracają przeciążone funkcje klikalnych powierzchni, a także dodają funkcję obsługi powierzchni, które można zaznaczać 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 do 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. gdy widok znajduje się w oknie dialogowym). (I660ae, b/219572936) - Dodano 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). - Dodaliśmy interfejsy
PermanentNavigationDraweriDismissibleNavigationDrawerjako 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 elementu
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
TalkBacknawigacja liniowa czytnika ekranu wybierała pusty tytuł górnego paska aplikacji. (Id4690) - Dodano:
IconSizedo listyFloatingActionButtonDefaults. (Ia71cf) - Naprawiliśmy błąd ukrytych przycisków
AlertDialog, który występował, gdy do tekstu dodawano 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. Klikalne powierzchnie należy tworzyć za pomocą elementuInteractionSourceiModifier.clickable(). (I211c6) - Dodaliśmy obsługę podniesienia po naciśnięciu i skupieniu w przypadku FAB. (Ibb584)
- Zmieniono interfejs API
Surface, 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ędowe 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 zapamiętywania (równości) generowanych przez kompilator 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)
- Dodano obsługę wskaźników postępu Material 3. (Iff232, b/205023841)
Poprawki błędów
- Aktualizowanie wyłączonego koloru 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 stosowanego 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
- Dodaliśmy obsługę 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 szkieletu Material 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 nawigacji
- Górny pasek aplikacji
- Plakietka
- Ikona
- SMS
- Surface
- Układ
- Kolor treści
Więcej informacji znajdziesz w sekcji Material Design 3 i Material You w przewodniku po Material Theming w Compose.