Compose Material 3 Adaptif

  
Gunakan library adaptif Material 3 untuk membuat UI adaptif yang akan menyesuaikan secara otomatis sesuai dengan konfigurasi jendela saat ini seperti class ukuran jendela atau postur perangkat. Library ini menyediakan penerapan scaffold default dan composable elemen penyusun yang diperlukan untuk membuat pengalaman kustom Anda sendiri.
Update Terbaru Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
12 Desember 2024 1.0.0 - - 1.1.0-alpha08

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada compose, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.

Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:

Groovy

dependencies {
    implementation "androidx.compose.material3.adaptive:adaptive:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha02"
}

Kotlin

dependencies {
    implementation("androidx.compose.material3.adaptive:adaptive:1.1.0-alpha02")
    implementation "androidx.compose.material3.adaptive:adaptive-layout:1.1.0-alpha02"
    implementation "androidx.compose.material3.adaptive:adaptive-navigation:1.1.0-alpha02"
}

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.

Laporkan masalah baru

Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.

Compose Material3 Adaptif Versi 1.1

Versi 1.1.0-alpha08

12 Desember 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha08 dirilis. Versi 1.1.0-alpha08 berisi commit ini.

Perubahan API

  • Memperkenalkan fungsi currentWindowDpSize. (I99125, b/296300441)
  • Mengekspos PaneScaffoldParentData dan ThreePaneScaffoldHorizontalOrder.toLtrOrder() (I2d6b7)
  • Hapus PaneScaffoldMotionScope dan ubah menjadi kolom di bagian PaneScaffoldTransitionScope. Ganti namanya juga menjadi PaneScaffoldMotionDataProvider dan hapus akses ke struktur data dasar PaneMotionData - sebagai gantinya, berikan metode pengambil dan looping untuk mengakses data. (Id8884)
  • Buat mekanisme penggantian untuk ThreePaneScaffold guna mendukung implementasi sideload untuk berbagai faktor bentuk. (I5280f)
  • Membuat status perluasan panel null secara default (Ia65f8, b/376394520)

Versi 1.1.0-alpha07

13 November 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha07 dirilis. Versi 1.1.0-alpha07 berisi commit ini.

Perubahan API

  • Menghapus penerapan handle tarik di library adaptif dan mendorong pengguna untuk menggunakan versi M3. Dan pada saat yang sama, perkenalkan pengubah untuk memberikan kemampuan tarik perluasan panel ke composable handle tarik yang disediakan. Sembunyikan juga DraggableState sebagai detail implementasi sehingga kita dapat mengubahnya nanti jika diperlukan. (Ib50cd)
  • Memindahkan titik entri penyesuaian gerakan panel dari fungsi scaffold ke AnimatedPane sesuai dengan masukan UXR. (I10f72)
  • Memperkenalkan dukungan ayun dan spesifikasi animasi kustom untuk perluasan panel. (Ie207d, b/362584341)

Perbaikan Bug

Versi 1.1.0-alpha06

30 Oktober 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha06 dirilis. Versi 1.1.0-alpha06 berisi commit ini.

Perubahan API

  • Menambahkan FloatRange ke PaneScaffoldTransitionScope.motionProgress. (Iac0dd)
  • Mengubah jenis parameter navigator menjadi jenis generik di scaffold yang dapat dinavigasi. (I1da6e)

Versi 1.1.0-alpha05

16 Oktober 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha05 dirilis. Versi 1.1.0-alpha05 berisi commit ini.

Perubahan API

  • Memperkenalkan class spesifikasi animasi untuk memastikan perilaku gerakan yang lebih konsisten dan kemampuan perluasan di masa mendatang. (I2d3cc)
  • Berikan jenis gerakan dan ganti nama currentXXXXX di PaneMotionData menjadi originXXXX. (I7c61a)

Versi 1.1.0-alpha04

2 Oktober 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha04 dirilis. Versi 1.1.0-alpha04 berisi commit ini.

Fitur Baru

  • Menambahkan dukungan kembali prediktif ke NavigableListDetailPaneScaffold dan NavigableSupportingPaneScaffold. (I4dc21, b/359616816)

Perubahan API

  • Menambahkan ThreePaneScaffoldState ke ThreePaneScaffoldNavigator. Metode navigasi telah dibuat suspend untuk mendukung navigasi dengan animasi. Menambahkan seekBack untuk mendukung status navigasi sebagian (misalnya, kembali prediktif). (I5a651, b/359616816)
  • Menambahkan MutableThreePaneScaffoldState untuk mengontrol transisi antar-nilai scaffold. ThreePaneScaffoldState yang ada telah dibuat hanya dapat dibaca. (Idb3c6)
  • Mengekspos implementasi gerakan panel default (I95a7b)
  • Mengaktifkan setelan anchor awal status perluasan panel (Ie41b3, b/362350560)

Perbaikan Bug

Versi 1.1.0-alpha03

18 September 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha03 dirilis. Versi 1.1.0-alpha03 berisi commit ini.

Versi 1.1.0-alpha02

4 September 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha02 dirilis. Versi 1.1.0-alpha02 berisi commit ini.

Fitur Baru

  • Penyesuaian gerakan (I0bf9c), (I80e66) didukung bagi pembuat untuk mengubah gerakan default selama perubahan status scaffold adaptif. Kreator dapat memilih dari serangkaian transisi masuk dan keluar default, atau menerapkan transisi kustom murni dengan info yang diberikan melalui cakupan gerakan baru.
  • Mengimplementasikan animasi memudar pada tuas tarik perluasan panel (46e3c69)
  • Membuat PaneExpansionState yang diingat dapat Disimpan (61ff76f)

Perubahan API

  • Menambahkan API perluasan panel yang tidak ada ke scaffold (Ic5bc0)
  • Mengganti nama ThreePaneScaffoldDestinationItem.content menjadi contentKey. Argumen jenis default rememberListDetailPaneScaffoldNavigator dan rememberSupportingPaneScaffoldNavigator diubah dari Nothing menjadi Any. (I58749)
  • Menandai ThreePaneScaffoldState sebagai stabil (I64aec)
  • Membuat parameter handle tarik diberi cakupan (Ic0aa2)

Versi 1.1.0-alpha01

21 Agustus 2024

androidx.compose.material3.adaptive:adaptive-*:1.1.0-alpha01 dirilis. Versi 1.1.0-alpha01 berisi commit ini.

Fitur Baru

  • Memperkenalkan dukungan perluasan panel dari scaffold adaptif.

Perubahan API

  • Memperkenalkan API perluasan panel kepada publik (I301d6)
  • Memperkenalkan ThreePaneScaffoldState untuk mengontrol transisi nilai panel. Menambahkan overload ListDetailPaneScaffold dan SupportingPaneScaffold yang menerima status ini. (I5db3b)
  • Memperkenalkan kunci perluasan panel dan antarmuka penyedia kunci (Id621f)

Perbaikan Bug

  • Memperbaiki penghitungan partisi yang salah saat engsel yang dikecualikan ada. (9dfd483)

Compose Material3 Adaptive Versi 1.0

Versi 1.0.0

4 September 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0 dirilis. Versi 1.0.0 berisi commit ini.

Fitur utama 1.0.0

Versi 1.0.0-rc01

21 Agustus 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-rc01 dirilis. Versi 1.0.0-rc01 berisi commit ini.

Perbaikan Bug

  • Memperbaiki penghitungan partisi yang salah saat engsel yang dikecualikan ada. (9dfd483)

Versi 1.0.0-beta04

26 Juni 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta04 dirilis. Versi 1.0.0-beta04 berisi commit ini.

Perbaikan Bug

  • Memperbaiki masalah saat batas engsel diperbarui, tata letak tidak diperbarui sebagaimana mestinya. (71e9cf1)

Versi 1.0.0-beta03

12 Juni 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta03 dirilis. Versi 1.0.0-beta03 berisi commit ini.

Perbaikan Bug

  • Memperbaiki error yang disebabkan oleh resolusi dependensi yang salah di versi beta02.

Versi 1.0.0-beta02

29 Mei 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta02 dirilis. Versi 1.0.0-beta02 berisi commit ini.

Versi 1.0.0-beta01

14 Mei 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-beta01 dirilis. Versi 1.0.0-beta01 berisi commit ini.

Versi 1.0.0-alpha12

1 Mei 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha12 dirilis. Versi 1.0.0-alpha12 berisi commit ini.

Perubahan API

  • Menambahkan info isFlat ke HingeInfo (Ie0516, b/333784198)
  • Membuat API adaptif menjadi non-eksperimental (I1d038)
  • Membuat API tata letak adaptif menjadi non-eksperimental (Id23df)
  • Mengubah BackNavigationBehavior dari enum menjadi class nilai (Id8757)

Perbaikan Bug

  • Mengubah fraksi transisi menjadi lambda (I6f5a9)
  • Memperbaiki masalah status awal SizeTracker (18326a9)
  • Menyertakan daftar engsel dalam pemeriksaan kesetaraan Posture (6687137)

Versi 1.0.0-alpha11

17 April 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha11 dirilis. Versi 1.0.0-alpha11 berisi commit ini.

Perubahan API

  • Membuat antarmuka cakupan disegel. (Iefa57)
  • Memperkenalkan AnimatedPaneScope. (I62d73, b/332750742)
  • Buat AdaptStrategy tertutup dan stabil. (Ia28b2)
  • Memperkenalkan metode salinan PaneScaffoldDirective. (I9291f)
  • Menandai ThreePaneScaffoldScope sebagai eksperimental. (I9d527)
  • Menyediakan API scaffold yang mudah digunakan dan mendukung navigasi. (I263f0, b/321010778)

Versi 1.0.0-alpha10

3 April 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha10 dirilis. Versi 1.0.0-alpha10 berisi commit ini.

Perubahan API

  • Membuat lebar pilihan default menjadi adaptif dan dapat disesuaikan. (Ic3abc)
  • Mengganti nama fungsi penghitungan perintah scaffold. (I10855)
  • Menghapus padding dan inset dari API scaffold. (I786f8)
  • Menambahkan metode ingat navigator tanpa jenis generik. (I607c3)

Versi 1.0.0-alpha09

20 Maret 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha09 dirilis. Versi 1.0.0-alpha09 berisi commit ini.

Perubahan API

  • Tambahkan kolom transisi status ke ThreePaneScaffoldScope. (I3d917)
  • Mengurutkan ulang parameter scaffold. (I4dff5)
  • Berikan nilai default parameter pengubah AnimatedPane. (I77dd7)

Perbaikan Bug

  • Menyertakan ukuran pengatur jarak ke dalam gerakan panel. (a3174ca)

Versi 1.0.0-alpha08

6 Maret 2024

androidx.compose.material3.adaptive:adaptive-*:1.0.0-alpha08 dirilis. Versi 1.0.0-alpha08 berisi commit ini.

Fitur Baru

  • Terapkan geser yang tertunda saat beralih panel. (I1a38e)

Perubahan API

  • Menghapus antarmuka ThreePaneScaffoldState. (I63f23)

Versi 1.0.0-alpha07

21 Februari 2024