Berita Produk

Material 3 Adaptive 1.2.0 stabil

2 menit membaca
Rob Orgiu
Developer Relations Engineer

Dengan senang hati kami umumkan bahwa Material 3 Adaptive 1.2.0 kini stabil.

Rilis ini terus dibangun berdasarkan fondasi versi sebelumnya, yang memperluas dukungan ke lebih banyak titik henti sementara untuk class ukuran jendela dan strategi baru untuk menempatkan panel tampilan secara otomatis.

Yang baru di Material 3 Adaptive 1.2.0

Rilis stabil ini dibangun berdasarkan dukungan WindowManager 1.5.0 untuk titik henti sementara besar dan sangat besar, serta memperkenalkan strategi reflow dan levitate baru untuk ListDetailPaneScaffold dan SupportingPaneScaffold

Class ukuran jendela baru: Besar dan Sangat besar

newwindow.png


WindowManager 1.5.0 memperkenalkan dua titik henti sementara baru untuk class ukuran jendela lebar guna mendukung jendela yang lebih besar daripada class ukuran jendela Diperluas. Titik henti sementara Besar (L) dan Sangat besar (XL) dapat diaktifkan dengan menambahkan parameter berikut ke panggilan currentWindowAdaptiveInfo() di codebase Anda:

currentWindowAdaptiveInfo(supportLargeAndXLargeWidth = true)

Flag ini memungkinkan library juga menampilkan titik henti sementara L dan XL kapan pun diperlukan.

Strategi adaptif baru: reflow dan levitate

Menata konten dan panel tampilan di jendela adalah tugas kompleks yang perlu mempertimbangkan banyak faktor, dimulai dengan ukuran jendela. Dengan library Material 3 Adaptive baru, dua teknologi baru dapat membantu Anda mencapai tata letak adaptif dengan upaya minimal.

Dengan reflow, panel akan ditata ulang saat ukuran jendela atau rasio aspek berubah, menempatkan panel kedua di samping panel pertama saat jendela cukup lebar, atau memindahkan panel kedua di bawah panel pertama saat jendela lebih tinggi. Teknik ini juga berlaku saat jendela menjadi lebih kecil: konten akan dipindahkan ke bagian bawah.

material.jpg

Memindahkan panel berdasarkan ukuran jendela

Meskipun reflow adalah opsi yang luar biasa dalam banyak kasus, mungkin ada situasi saat konten perlu ditambatkan ke sisi jendela atau dilevitasi di atasnya. Strategi levitate tidak hanya menambatkan konten, tetapi juga memungkinkan Anda menyesuaikan fitur seperti kemampuan untuk ditarik, kemampuan untuk diubah ukurannya, dan bahkan scrim latar belakang.


 

material2.jpg

Melevitasi panel dari samping ke tengah berdasarkan rasio aspek

Strategi flow dan levitate dapat dideklarasikan di dalam konstruktor Navigator menggunakan parameter adaptStrategies, dan kedua strategi dapat diterapkan ke scaffolds panel detail daftar dan pendukung:

val navigator = rememberListDetailPaneScaffoldNavigator<Nothing>(
        adaptStrategies = ListDetailPaneScaffoldDefaults.adaptStrategies(
            detailPaneAdaptStrategy = AdaptStrategy.Reflow(
                reflowUnder = ListDetailPaneScaffoldRole.List
            ),
            extraPaneAdaptStrategy = AdaptStrategy.Levitate(
                alignment = Alignment.Center
            )
        )
    )


 

Untuk mempelajari lebih lanjut cara memanfaatkan strategi adaptif baru ini, lihat situs Material dan kode contoh lengkap di GitHub.

Ditulis oleh:

Lanjutkan membaca