Compose Material 3
Update Terbaru | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
---|---|---|---|---|
8 Februari 2023 | 1.0.1 | - | - | 1.1.0-alpha06 |
Struktur
Compose adalah kombinasi 7 ID Grup Maven dalam androidx
. Setiap Grup
berisi subkumpulan fungsi yang ditargetkan, masing-masing dengan kumpulan catatan
rilisnya sendiri.
Tabel ini menjelaskan grup tersebut dan disertai link ke setiap kumpulan catatan rilis.
Grup | Deskripsi |
---|---|
compose.animation | Mem-build animasi di aplikasi Jetpack Compose untuk memperkaya pengalaman pengguna. |
compose.compiler | Mentransformasi fungsi @Composable dan mengaktifkan pengoptimalan dengan plugin compiler Kotlin. |
compose.foundation | Menulis aplikasi Jetpack Compose dengan elemen penyusun siap pakai dan memperluas dasar untuk mem-build bagian sistem desain Anda sendiri. |
compose.material | Mem-build UI Jetpack Compose dengan Komponen Desain Material siap pakai. Ini adalah titik entri pada tingkat yang lebih tinggi untuk Compose, yang dirancang untuk menyediakan komponen yang cocok dengan yang dijelaskan di www.material.io. |
compose.material3 | Mem-build UI Jetpack Compose dengan Komponen Desain Material 3, evolusi berikutnya dari Desain Material. Material 3 menyertakan tema dan komponen yang diperbarui serta fitur personalisasi Material You, seperti warna dinamis. Material 3 juga didesain agar selaras dengan gaya visual dan UI sistem Android 12 yang baru. |
compose.runtime | Elemen penyusun yang penting untuk model pemrograman dan pengelolaan status Compose, serta runtime inti untuk ditargetkan oleh Plugin Compose Compiler. |
compose.ui | Komponen dasar compose UI yang diperlukan untuk berinteraksi dengan perangkat, termasuk tata letak, gambar, dan input. |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada Compose, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk informasi selengkapnya.
Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle
bagi aplikasi atau modul Anda:
Groovy
dependencies { implementation "androidx.compose.material3:material3:1.1.0" implementation "androidx.compose.material3:material3-window-size-class:1.1.0" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.1.0") implementation("androidx.compose.material3:material3-window-size-class:1.1.0") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Untuk informasi dependensi selengkapnya, lihat Menambahkan dependensi build.
Masukan
Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.
Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.
Versi 1.1
Versi 1.1.0-alpha06
8 Februari 2023
androidx.compose.material3:material3:1.1.0-alpha06
dan androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
dirilis. Versi 1.1.0-alpha06 berisi commit ini.
Fitur Baru
- Kolom teks kini mendukung teks awalan dan akhiran (Ia8578, b/179884561)
- Menambahkan fungsi
TimePicker
untuk menampilkan pemilih waktu mengikuti spesifikasi Material 3, yang digunakan bersamaTimePickerState
dan metode yang mempermudah pekerjaanrememberTimePickerState
(I71910) - Input tanggal kini menjadi mode tampilan di
DatePicker
. Menambahkan dukungan untuk beralih antara mode pemilih tanggal dan input tanggal. (Ieeff7) - Menambahkan API untuk
RichTextTooltips
. (I58ef3) - Implementasi sheet bawah modal untuk Material 3, termasuk
ModalBottomSheet
danModalBottomSheetDefaults
. Selain itu, memperkenalkanSheetState
danrememberSheetState
yang dapat digunakan untuk komponen sheet pada masa mendatang. (I0853a, b/244189383)
Perubahan API
- Menstabilkan API
showSnackbar
(I195c2, b/261424370) - Menstabilkan API untuk chip panduan dan chip saran (Ibb67b, b/261424370)
- Mempromosikan
ListItem
,ListItemDefaults
, danListItemColors
API menjadi non-eksperimental (I7e7fa, b/261438882) - Mempromosikan
SliderPositions
,SliderDefaults.Thumb
, danSliderDefaults.Track
menjadi stabil serta menambahkanSlider
danRangeSlider
API non-eksperimental yang berisi thumb dan track kustom. Selain itu, menghentikan penggunaanSlider
danRangeSlider
API sebelumnya. (Ie5ea6, b/261566890) - Membuat
Modifier.tooltipAnchor()
menjadi publik, sehingga developer dapat meneruskannya ke anchor untuk menunjukkan tooltip yang harus ditampilkan saat menekan lama. MengupdatePlainTooltipBox
API agar tidak lagi membuatTooltipState
nullable dan kini memiliki default. (Ie2fb7) ProgressIndicatorDefaults.circularTrackColor
telah ditandai sebagai@Composable
demi konsistensi. (Id29cc)- Memulihkan pengambil properti
LocalMinimuTouchTargetEnforcement
dan menandainya sebagai tidak digunakan lagi dan mengalihkan keLocalMinimumInteractiveComponentEnforcement
. (I60dd5)
Versi 1.1.0-alpha05
26 Januari 2023
androidx.compose.material3:material3:1.1.0-alpha05
dan androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
dirilis. Versi 1.1.0-alpha05 berisi commit ini.
Fitur Baru
DatePickerDialog
dan dukungan aksesibilitas- Menambahkan thumb dan track Kustom ke
RangeSlider
.
Versi 1.1.0-alpha04
11 Januari 2023
androidx.compose.material3:material3:1.1.0-alpha04
dan androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
dirilis. Versi 1.1.0-alpha04 berisi commit ini.
Fitur Baru
DatePicker
API awal untuk memilih satu tanggal melalui UI kalender. API ini masih mengalami perubahan. (I722b9)- Menambahkan dukungan untuk tooltip biasa melalui
PlainTooltipBox
. (I0cdfb) - Kotak penelusuran (Iad128)
SwipeToDismiss
(I458a8, b/242889540)
Perubahan API
- Menambahkan properti semantik
IsContainer
di Platform. Properti ini akan digunakan dalam perubahan selanjutnya yang menentukan urutan traversal berdasarkan makna semantik elemen seperti platform. (I63379) - Menandai API terkait panel navigasi sebagai stabil. (Iab01e, b/261439597)
- Menambahkan parameter warna track untuk indikator progres melingkar, dan parameter ujung goresan untuk indikator progres melingkar dan linear. (Ie668c, b/216325962, b/222964817)
- Lebih banyak nullability jenis nilai yang ditampilkan dari fungsi tersembunyi yang tidak digunakan lagi (Ibf7b0)
- Menambahkan
Modifier.minimumInteractiveComponentSize
. Ini dapat digunakan untuk menyimpan setidaknya 48.dp untuk membedakan interaksi sentuh jika elemen akan berukuran lebih kecil. (I33f58, b/258495559) - Menambahkan API eksperimental untuk composable
AlertDialog
yang memiliki slot konten. (Iec4a2)
Perbaikan Bug
- Progres untuk indikator progres kini dikaitkan dengan benar ke rentang yang diharapkan. (I8a7eb, b/262262727)
Masalah Umum
- Saat mengupdate dari
androidx.compose.foundation:1.4.0-alpha03
keandroidx.compose.foundation:1.4.0-alpha04
, Anda mungkin mengalami errorjava.lang.NoSuchFieldError
. Masalah awalnya dilaporkan di sini. Perbaikan telah dikirim dan akan tersedia di update Compose berikutnya. Sebagai solusi, update libraryandroidx.compose.material
danandroidx.compose.material3
ke versi terbaru (1.1.0-alpha04) atau downgradeandroidx.compose.foundation
ke 1.4.0-alpha03.
Versi 1.1.0-alpha03
7 Desember 2022
androidx.compose.material3:material3:1.1.0-alpha03
dan androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
dirilis. Versi 1.1.0-alpha03 berisi commit ini.
Perubahan API
- Mengganti nama
consumedWindowInsets()
menjadiconsumeWindowInsets()
danwithConsumedWindowInsets()
menjadionConsumedWindowInsetsChanged()
, dan membuat Pengubah menjadi publik. (Ie44e1) - Menambahkan padding konten default baru untuk tombol teks dengan ikon yang akan digunakan. (I8f662)
- Menambahkan warna yang dinonaktifkan untuk menu navigasi dan kolom samping. (Ia7892, b/258867034)
- Menambahkan Modifier API untuk mengkueri info scroll ancestor. (I2ba9d, b/203141462)
- Digunakan di
Clickable
untuk menunda interaksi tekan dengan benar, saat gestur dapat menjadi peristiwa scroll. - Memperbaiki
Clickables
yang tidak menunda ripple dengan benar, saat digunakan di dalamScrollable ViewGroup
. - Mengupdate Panel Samping dan Sheet untuk menunda penekanan dengan benar jika gestur dapat menjadi peristiwa scroll.
Update Dependensi
Compose UI
danCompose Material
sekarang bergantung pada Lifecycle 2.5.1. (I05ab0, b/258038814)
Versi 1.1.0-alpha02
9 November 2022
androidx.compose.material3:material3:1.1.0-alpha02
dan androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
dirilis. Versi 1.1.0-alpha02 berisi commit berikut ini.
Perubahan API
awaitFirstDown
danwaitForUpOrCancellation
kini menerimaPointerEventPass
untuk fleksibilitas yang lebih besar (juga perbaikanExposedDropdownMenuBox
yang menampilkan menu saat men-scroll).(I7579a, b/212091796)- Menambahkan parameter
minLines
ke dalam material dan material3 Text,TextField
, danOutlinedTextField
yang memungkinkan penetapan tinggi minimum komponen dalam jumlah baris (I4af1d) - Menghentikan fungsi
TopAppBarDefaults smallTopAppBarColors
dan menggantinya dengan fungsitopAppBarColors
baru yang harus digunakan saat membuatTopAppBar
. (Ie6cb9) - Menambahkan parameter
minLines
keBasicText
danBasicTextField
. Perubahan ini memungkinkan untuk menyetel tinggi minimum composable ini dalam jumlah baris (I24294, b/122476634)
Perbaikan Bug
- Memotong konten Material3
IconButton
danIconToggleBotton
ke bentuk lapisan status komponen (mis. bentuk melingkar). (I9da8f) - Mengupdate panel aplikasi atas Material3 Medium dan Large untuk menerapkan warna latar belakang yang sama di seluruh platformnya, dan untuk memungkinkan setelan penggantian warna default dengan nilai warna transparan. (I67659, b/249688556, b/250838918)
Versi 1.1.0-alpha01
24 Oktober 2022
androidx.compose.material3:material3:1.1.0-alpha01
dan androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Perbaikan Bug
- Perbaikan pada panel aplikasi atas saat judul diterapkan dengan TextStyle dan Brush. (If667e)
Versi 1.0
Versi 1.0.1
9 November 2022
androidx.compose.material3:material3:1.0.1
dan androidx.compose.material3:material3-window-size-class:1.0.1
dirilis. Versi 1.0.1 berisi commit ini.
Perbaikan Bug
- Mengupdate panel aplikasi atas Material3 Medium dan Large untuk menerapkan warna latar belakang yang sama di seluruh platformnya, dan untuk memungkinkan setelan penggantian warna default dengan nilai warna transparan. (I67659, b/249688556, b/250838918)
Versi 1.0.0
24 Oktober 2022
androidx.compose.material3:material3:1.0.0
dan androidx.compose.material3:material3-window-size-class:1.0.0
dirilis. Versi 1.0.0 berisi commit ini.
Fitur utama versi 1.0.0
Ini adalah rilis stabil pertama Compose Material 3!
Tema Desain Material 3 dan warna dinamis Material You
Komponen Desain Material 3
- Badge
- Bottom App Bar
- Tombol
- FAB dan FAB yang diperluas
- Kartu
- Kotak centang
- Chip
- Dialog
- Pemisah
- Menu Dropdown
- Daftar
- Menu navigasi
- Panel navigasi
- Kolom samping navigasi
- Indikator Progres
- Tombol Pilihan
- Penggeser
- Ganti
- Tab
- Kolom Teks
- Panel aplikasi atas
- Ikon
- Teks
- Permukaan
- Tata Letak
- Warna konten
Class Ukuran Jendela
material3-window-size-class
adalah library baru yang menyediakan dukungan untuk class ukuran jendela: sekumpulan titik henti sementara area pandang tidak berubah yang dapat Anda gunakan untuk mendesain, mengembangkan, dan menguji tata letak aplikasi yang dapat diubah ukurannya. Anda dapat menggunakancalculateWindowSizeClass
untuk mengambil instance class ukuran jendela yang dapat digunakan untuk menentukan tampilan UI, seperti menampilkan kolom samping navigasi, bukan navigasi bawah untuk ukuran jendela yang lebih besar. Untuk informasi selengkapnya dan contoh penggunaan, lihat dokumentasi referensi API untukWindowSizeClass
.Lihat postingan blog ini untuk detail selengkapnya.
Versi 1.0.0-rc01
5 Oktober 2022
androidx.compose.material3:material3:1.0.0-rc01
dan androidx.compose.material3:material3-window-size-class:1.0.0-rc01
dirilis. Versi 1.0.0-rc01 berisi commit berikut ini.
Perubahan API
- Menambahkan parameter slot untuk mendukung teks ke API kolom teks (Iaac0d, b/227146125)
Versi 1.0.0-beta03
21 September 2022
androidx.compose.material3:material3:1.0.0-beta03
dan androidx.compose.material3:material3-window-size-class:1.0.0-beta03
dirilis. Versi 1.0.0-beta03 berisi commit berikut ini.
Perubahan API
ExposedDropdownMenuDefaults
kini mengekspos nilai padding untuk item menu. (I34ee1)ExposedDropdownMenuBoxScope
kini memiliki pengubahModifier.menuAnchor()
yang harus diteruskan ke kolom teks untuk perilaku aksesibilitas yang tepat. (I27fa3)- Menambahkan dua metode overload untuk Slider API saat ini agar pengguna dapat meneruskan thumb atau track untuk mengisi penggeser. (I21c00)
Perbaikan Bug
- Mengupdate pemetaan warna tema gelap untuk On Error Container ke tone 90 (Ic5612)
- Perbaikan untuk memungkinkan penyetelan latar belakang transparan untuk panel aplikasi atas Material 3 kecil. (I645e2, b/245575782)
Versi 1.0.0-beta02
7 September 2022
androidx.compose.material3:material3:1.0.0-beta02
dan androidx.compose.material3:material3-window-size-class:1.0.0-beta02
dirilis. Version 1.0.0-beta02 berisi commit berikut ini.
Perubahan API
- Inset komponen default yang diperkenalkan dalam komponen m3 pada versi beta01 tidak lagi memperhitungkan inset IME.
- Komponen Material3 Scaffold sekarang memiliki parameter
contentWindowInsets
, yang memungkinkan untuk menentukan jumlah inset yang harus ditangani untuk slot konten. (Icf11a, b/243713323) - Tidak lagi menggunakan fungsi
SmallTopAppBar
Material 3 eksperimental dan memperkenalkan fungsiTopAppBar
yang setara. Harap migrasikan penggunaan Anda ke yang baru. (I74404, b/226918634) - Menambahkan kontrol terhadap perilaku snap dan ayunkan jari untuk panel aplikasi atas. (I15c81)
- Menghapus startIndent dari Pembagi, memindahkan warna ke parameter terakhir. (If7be2)
Perbaikan Bug
- Menyetel Dialog agar dapat mengidentifikasi pengguna talkback dengan mengucapkan kata Dialog saat ditampilkan. (I857ef)
Versi 1.0.0-beta01
24 Agustus 2022
androidx.compose.material3:material3:1.0.0-beta01
dan androidx.compose.material3:material3-window-size-class:1.0.0-beta01
dirilis. Versi 1.0.0-beta01 berisi commit ini.
Referensi API
Untuk melihat tema, komponen, dan composable terbaru lainnya yang tersedia, lihat ringkasan Referensi API Compose Material 3.
Perubahan API
- Mengupdate panel aplikasi atas Material 3 agar langsung disetel dari status diciutkan sepenuhnya menjadi diperluas sepenuhnya. Selain itu, memperbarui fungsi perilaku
TopAppBarDefaults
menjadi Composable dan memberikan nilai default untuk status panel aplikasi atas dan spesifikasi animasi. (I642b3) - Memperbarui tanda tangan komponen FAB agar sesuai dengan API platform (I3afaa)
- Menambahkan dukungan Build-in inset untuk Panel aplikasi atas, panel samping, menu navigasi, dan kolom samping. Saat digunakan secara terpisah atau dengan Scaffold, komponen ini akan otomatis menangani inset untuk developer. Catatan: Perubahan ini tidak menambahkan penanganan otomatis ikon status bar dan transparansi status dan menu navigasi. Terus lakukan secara manual untuk memastikan pengalaman dari tepi ke tepi yang terbaik. (I7e4e6, b/183161866)
- Mengupdate default komponen untuk memperkecil platform API guna meningkatkan performa dan fleksibilitas di masa mendatang. (I31820)
- Mengurutkan ulang parameter sheet panel navigasi dan chip untuk mempertahankan konsistensi dalam API (I45d0b)
- Menghapus
startIndent
dari Pembagi dan memindahkan warna menjadi parameter terakhir.(If7be2)
Versi 1.0.0-alpha16
10 Agustus 2022
androidx.compose.material3:material3:1.0.0-alpha16
dan androidx.compose.material3:material3-window-size-class:1.0.0-alpha16
dirilis. Versi 1.0.0-alpha16 berisi commit ini.
Fitur Baru
- Mendukung penetapan lebar kustom pada panel navigasi. (Ia7f10)
Perubahan API
- Mengurutkan ulang parameter tab ikon Utama dan Tab untuk menjaga konsistensi dalam API (Ie2637)
- Menandai
BadgeDefaults
sebagai eksperimental. (I98ef3) - Menghapus fungsi panel navigasi yang tidak digunakan lagi. (I4f2db)
- Mengurutkan ulang parameter Penggeser di Material 3 untuk mempertahankan konsistensi dalam API (I0aee7)
- Mengurutkan ulang parameter
NavigationBar
danNavigationRail
untuk mempertahankan konsistensi dalam API (I51cda) - Mengurutkan ulang parameter di Material 3 untuk mempertahankan konsistensi di seluruh API. (If4ae1)
- Mengurutkan ulang parameter Penggeser di Material 3 untuk mempertahankan konsistensi dalam API (I62673)
- Mengganti nama parameter ikon menjadi tindakan agar konsisten dengan panel aplikasi atas (Id75be)
- Menandai
Badge
danBadgedBox
sebagai eksperimental karena perataan anchor masih masuk. (I1712e, b/236524516) - Mengubah anotasi
@ExperimentalMaterial3Api
pada varian tombol ikon menjadi@OptIn
(I070b5) - Memisahkan konten panel navigasi ke composable-nya sendiri untuk mendukung penentuan lebar kustom di composable. (Ia7f10)
- Menghapus
Divider
dariMenuDefaults
danTabDefaults
(I4e33c)
Versi 1.0.0-alpha15
27 Juli 2022
androidx.compose.material3:material3:1.0.0-alpha15
dan androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
dirilis. Versi 1.0.0-alpha15 berisi commit ini.
Fitur Baru
- Mengizinkan penarikan panel aplikasi atas dari panel itu sendiri. (I65c00, b/205873416)
Perubahan API
- Update pada
FilterChip
API danElevatedFilterChip
API untuk menghapus slotselectedIcon
dan mempromosikan penggunaan kembalileadingIcon
untuk menampilkan status yang dipilih. (Ie5dc2) - Menambahkan peran warna varian scrim dan outline. (Id6d54)
- Memperbaiki konvensi penamaan untuk default composable. (I62b27)
- Menandai
ListItemDefaults
danListItemColors
sebagai eksperimental. (I1f3ec) - Perubahan pada API panel aplikasi atas untuk lebih mencerminkan makna properti statusnya. Selain itu, menandai API panel aplikasi atas sebagai eksperimental. (Ic0ad8)
- Warna pemilihan teks kini telah ditambahkan ke
TextFieldColors
agar lebih mudah ditemukan. (Iba1b8) - Menambahkan
ButtonDefault.ButtonWithIconContentPadding
untuk digunakan dengan tombol yang berisi ikon. (I2bf9c) - Kolom teks telah ditandai sebagai eksperimental untuk memungkinkan fleksibilitas yang lebih besar pada perubahan API mendatang. (I127b5)
- Menghapus anotasi
@ExperimentalMaterial3Api
dari fungsiCheckbox
. (I5eefc) - Menghapus anotasi
@ExperimentalMaterial3Api
dari fungsiRadioButton
. (I17e2a) - Menghapus anotasi
@ExperimentalMaterial3Api
dari Kartu non-interaktif. (I9bd49) - Memperbarui berbagai objek default komponen untuk menyertakan warna, bentuk, dll. (I96e11)
Perbaikan Bug
- Menghapus ikon tambahan yang tidak berfungsi dari sampel chip input untuk menghindari kebingungan pengguna di aplikasi katalog. (I9846a)
Versi 1.0.0-alpha14
29 Juni 2022
androidx.compose.material3:material3:1.0.0-alpha14
dan androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
dirilis. Versi 1.0.0-alpha14 berisi commit ini.
Fitur Baru
- Menambahkan implementasi daftar M3, lihat dokumentasi untuk contoh penggunaan (Id7a20)
Perubahan API
- Mengubah nama parameter dari values menjadi value di
RangeSlider
(I3b79a) - Perubahan API pada implementasi
InputChip
untuk mendukung status yang dapat dipilih sesuai spesifikasi Desain Material. Dukungan tambahan pada warnaFilterChip
untuk status nonaktif yang dipilih. (I55244, b/235792432) - Menambahkan FAB default
BottomAppBar
(Ida4c8) ColorScheme.surfaceColorAtElevation
ditambahkan (Id41af)- Antarmuka di library Compose kini dibuat menggunakan metode antarmuka default jdk8 (I5bcf1)
WindowWidthSizeClass
danWindowHeightSizeClass
kini menerapkan Comparable, sehingga dapat dibandingkan menggunakan operator (<, <=, >=, >) dan API lainnya. (I747d0)
Perbaikan Bug
- Memperbarui contoh badge untuk memberikan deskripsi konten yang lebih bermakna. (I10b9d)
- Menambahkan opsi untuk menggunakan ukuran font sistem ke alat pilih tema katalog Material 3. (I10605)
- Menambahkan kode contoh untuk Badge dan indikator progres tidak tentu. (I8fbe0)
Versi 1.0.0-alpha13
1 Juni 2022
androidx.compose.material3:material3:1.0.0-alpha13
dan androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
dirilis. Versi 1.0.0-alpha13 berisi commit ini.
Perubahan API
- Mendukung mempertahankan posisi panel aplikasi atas di perubahan konfigurasi. (I10459, b/216160958)
Versi 1.0.0-alpha12
18 Mei 2022
androidx.compose.material3:material3:1.0.0-alpha12
dan androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
dirilis. Versi 1.0.0-alpha12 berisi commit ini.
Perbaikan Bug
- Induk penggeser kini dapat memiliki lebar 0. (b/231707291)
Versi 1.0.0-alpha11
11 Mei 2022
androidx.compose.material3:material3:1.0.0-alpha11
dan androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
dirilis. Versi 1.0.0-alpha11 berisi commit ini.
Fitur Baru
- Menambahkan
RangeSlider
ke Material 3 (I18e38) - Menambahkan dukungan
AssistChip
danInputChip
Material3 (I0d25a) - Menambahkan dukungan
FilterChip
danSuggestionChip
Material3 (I9fdf3)
Perubahan API
- Mengganti nama composable
TextFieldDefaults.BorderStroke
yang menggambar goresan batas diOutlinedTextField
menjadiTextFieldDefaults.BorderBox
. (I5f295) - Mengalihkan perubahan visual m3 (Iab30e)
- Mengizinkan penerusan warna ke tombol ikon standar. (Ia2445)
Perbaikan Bug
- Menambahkan pemeriksaan lint ke material3/Scaffold untuk memastikan bahwa padding bagian dalam sedang digunakan (I72293, b/226951418)
Versi 1.0.0-alpha10
20 April 2022
androidx.compose.material3:material3:1.0.0-alpha10
dan androidx.compose.material3:material3-window-size-class:1.0.0-alpha10
dirilis. Versi 1.0.0-alpha10 berisi commit ini.
Fitur Baru
material3-window-size-class
adalah library baru yang menyediakan dukungan untuk class ukuran jendela: sekumpulan titik henti sementara area pandang tidak berubah yang dapat Anda gunakan untuk mendesain, mengembangkan, dan menguji tata letak aplikasi yang dapat diubah ukurannya. Anda dapat menggunakancalculateWindowSizeClass
untuk mengambil instance class ukuran jendela yang dapat digunakan untuk menentukan tampilan UI, seperti menampilkan kolom samping navigasi, bukan navigasi bawah untuk ukuran jendela yang lebih besar. Untuk informasi selengkapnya dan contoh penggunaan, lihat dokumentasi referensi API untukWindowSizeClass
. Untuk informasi definisi class ukuran jendela selengkapnya, lihat panduan publik terkait mendukung berbagai ukuran layar.
Perubahan API
- Menambahkan elevasi FAB default untuk
BottomAppBar
, menghapus lambda akhir dariBottomAppBar
dengan FAB. (I92c47) - Menambahkan Material3
FilledIconButton
,FilledTonalIconButton
, danOutlinedIconButton
. (Ib2bda) - Mengupdate Material 3 Snackbar API untuk menerima nilai warna bagi tindakan opsional dan tindakan menutup. (Ibe4b4)
- Konsumsi parsial (posisi OR turun) tidak digunakan lagi di
PointerInputChange
. Anda dapat menggunakanconsume()
untuk sepenuhnya memakai perubahan. Anda dapat menggunakanisConsumed
untuk menentukan apakah orang lain sudah pernah memakai perubahan tersebut sebelumnya. PointerInputChange::copy()
kini selalu membuat shallow copy. Ini berarti bahwa salinanPointerInputChange
akan dipakai setelah salah satu salinan tersebut digunakan. Jika Anda ingin membuatPointerInputChange
yang tidak terikat, gunakan konstruktor. (Ie6be4, b/225669674)- Perubahan pada API Cards untuk menerima warna penampung dan konten melalui antarmuka
CardColors
, dan untuk mendukung status dinonaktifkan untuk kartu yang dapat diklik. (I927df) - Parameter
backgroundColor
telah diganti namanya menjadicontainerColor
di kolom teks Material 3 agar lebih konsisten dengan komponen lain. (I6fbd9)
Perbaikan Bug
- Mengupdate ke
IconButton
standar untuk menyesuaikannya dengan spesifikasi Material3. (I09eab) - Memindahkan tinggi panel atas material3 Scaffold ke dalam padding yang diteruskan ke konten, sehingga konten dapat dirender di bawah panel aplikasi atas. Jika
PaddingValues
diabaikan, konten mungkin akan tertutup oleh panel atas. (I83cbc, b/217776202)
Versi 1.0.0-alpha09
6 April 2022
androidx.compose.material3:material3:1.0.0-alpha09
dirilis. Versi 1.0.0-alpha09 berisi commit berikut ini.
Fitur Baru
- Menambahkan Material 3 Switch API (I2c3ad)
Perubahan API
- Menambahkan dukungan untuk menu drop-down dengan kolom teks (alias 'menu dropdown yang ditampilkan' atau 'kotak kombinasi'). (I1b832)
- Menambahkan parameter bentuk ke subsistem MaterialTheme dan Shape. (I37426)
- Menambahkan parameter yang diperluas ke
ExtendedFloatingActionButton
untuk mengontrol apakah FAB diperluas atau diciutkan, dengan animasi di antara setiap status. Menambahkan Overload FAB yang diperpanjang untuk FAB yang diperluas dengan teks tambahan untuk ExtendedFAB tanpa ikon. (Iba7f1)
Versi 1.0.0-alpha08
23 Maret 2022
androidx.compose.material3:material3:1.0.0-alpha08
dirilis. Versi 1.0.0-alpha08 berisi commit ini.
Fitur Baru
- Menambahkan dukungan untuk kolom teks Material 3. (I795cc, b/199377790)
Perubahan API
- Menambahkan pembagi default untuk menu (I01374)
- Menambahkan parameter warna
surfaceTint
ke classColorScheme
. (I2f558)
Perbaikan Bug
- Memperbaiki Tombol Material3 untuk membaca nilai gaya teks defaultnya dari MaterialTheme. (Ie62fc)
Versi 1.0.0-alpha07
9 Maret 2022
androidx.compose.material3:material3:1.0.0-alpha07
dirilis. Versi 1.0.0-alpha07 berisi commit ini.
Perubahan API
- Update pada Material 3 Surface API yang menghadirkan kembali fungsi kelebihan beban untuk Platform yang dapat diklik, serta menambahkan fungsi untuk mendukung Platform yang dapat dipilih dan diganti. (I4bf18)
LazyVerticalGrid
danLazyHorizontalGrid
kini stabil. (I307c0)LazyVerticalGrid/LazyHorizontalGrid
dan semua API terkait dipindahkan ke sub-paket .grid. Update impor Anda dari androidx.compose.foundation.lazy ke androidx.compose.foundation.lazy.grid. (I2d446)- Mengembalikan perubahan sebelumnya yang hanya mengandalkan View untuk
WindowInsetsControllerCompat
, dan sekali lagi memerlukan Window yang diperlukan untuk mengelola beberapa flag jendela.ViewCompat.getWindowInsetsController
tidak digunakan lagi dan diganti denganWindowCompat.getInsetsController
untuk memastikan bahwa Window yang benar digunakan (seperti jika View ada dalam dialog). (I660ae, b/219572936) - Menambahkan
LazyVerticalGrid
API baru untuk menentukan ukuran sumbu silang (I17723)
Perbaikan Bug
- Update pada Card API untuk mengikuti perubahan di Platform API (I3c8b9)
Versi 1.0.0-alpha06
23 Februari 2022
androidx.compose.material3:material3:1.0.0-alpha06
dirilis. Versi 1.0.0-alpha06 berisi commit ini.
Perubahan API
NavigationDrawerItem
ditambahkan yang mewakili satu tujuan dalam panel samping (Ic396f, b/218286829)PermanentNavigationDrawer
danDismissibleNavigationDrawer
telah ditambahkan sebagai API eksperimental. Keduanya adalah panel samping yang cocok untuk perangkat layar besar. (I5f8ab, b/218286829)- Menambahkan dukungan panel aplikasi bawah Material 3 (Ic432a)
NavigationDrawer
diganti namanya menjadiModalNavigationDrawer
(I1807d, b/218286829)- Menambahkan class dan token Penggeser Material 3 (I1ccee)
- Menambahkan implementasi Tab, lihat dokumentasi untuk contoh penggunaan (Ie0146)
Perbaikan Bug
- Memperbaiki masalah saat navigasi linier pembaca layar
TalkBack
memilih judul panel aplikasi atas yang kosong. (Id4690) - Menambahkan
IconSize
keFloatingActionButtonDefaults
. (Ia71cf) - Perbaikan bug untuk tombol
AlertDialog
yang tersembunyi saat teks panjang ditambahkan denganLazyColumn
. (Ib2cc9, b/216663029)
Versi 1.0.0-alpha05
9 Februari 2022
androidx.compose.material3:material3:1.0.0-alpha05
dirilis. Versi 1.0.0-alpha05 berisi commit ini.
Fitur Baru
Menambahkan komponen Desain Material 3
- Menu dropdown
- Kartu
Perubahan API
- Fungsi
Surface
yang tidak digunakan lagi dan menggunakan callback onClick. Platform yang dapat diklik harus dibuat denganInteractionSource
danModifier.clickable()
. (I211c6) - Menambahkan dukungan elevasi yang ditekan dan difokuskan untuk FAB. (Ibb584)
- Mengubah
Surface
API untuk menerima InteractionSource yang memungkinkan mengontrol tampilannya dalam berbagai status. (Iafbc8)
Perbaikan Bug
- Menambahkan warna tersier yang hilang dalam skema warna dinamis (I456c4, b/214588434)
Versi 1.0.0-alpha04
26 Januari 2022
androidx.compose.material3:material3:1.0.0-alpha04
dirilis. Versi 1.0.0-alpha04 berisi commit ini.
Perubahan API
- Menambahkan
NonRestartableComposable
ke metode yang membebani metode yang ada tanpa logika yang kompleks. Tindakan ini akan mengurangi pemeriksaan memoisasi yang dihasilkan compiler (sama dengan) untuk semua parameter yang diulang dalam fungsi internal yang dipanggil. (I90490) - Menambahkan pemisah Material 3. (Ica5fc)
- Menandai Checkbox dan RadioButton dengan anotasi API eksperimental. (Ie44bb)
- Menambahkan dukungan untuk indikator progres Material 3. (Iff232, b/205023841)
Perbaikan Bug
- Memperbarui warna penampung
TextButton's
yang dinonaktifkan agar menjadi transparan (I6b248, b/213339737)
Versi 1.0.0-alpha03
12 Januari 2022
androidx.compose.material3:material3:1.0.0-alpha03
dirilis. Versi 1.0.0-alpha03 berisi commit ini.
Perbaikan Bug
- Menambahkan
LocalIndication
keMaterialTheme
Material 3. (I7ce4e) - Memperbaiki radius sudut yang diterapkan untuk Kotak centang (I38b03, b/175198975, b/202309440)
Update Dependensi
- Sekarang bergantung pada Kotlin
1.6.10
.
Versi 1.0.0-alpha02
1 Desember 2021
androidx.compose.material3:material3:1.0.0-alpha02
dirilis. Versi 1.0.0-alpha02 berisi commit ini.
Fitur Baru
- Menambahkan dukungan untuk kotak centang dan tombol pilihan.
- Diupdate agar kompatibel dengan Kotlin
1.6.0
Perubahan API
- Menghapus panel samping dari scaffold Material 3. (I04f51)
- Menambahkan dukungan
Checkbox
Material 3. (Id5542) - Menambahkan dukungan
RadioButton
Material 3. (I20334)
Perbaikan Bug
- Mengurangi radius ripple
IconButton
dari 40 dp menjadi 20 dp. (I68bbe, b/206674345) - Jalur cepat string port untuk perubahan
Text
daricompose.material
(I30b03) - Memperbaiki error tombol hardcode agar selalu aktif. (Iea832, b/205335456)
Versi 1.0.0-alpha01
27 Oktober 2021
androidx.compose.material3:material3:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Fitur Baru
Tema Desain Material 3 dan warna dinamis Material You
Komponen Desain Material 3
- Tombol
- FAB dan FAB yang diperluas
- Dialog
- Menu navigasi
- Panel navigasi
- Kolom samping navigasi
- Panel aplikasi atas
- Badge
- Ikon
- Teks
- Permukaan
- Tata Letak
- Warna konten
Untuk informasi selengkapnya, lihat bagian Desain Material 3 dan Material You di panduan Tema Material dalam Compose.