Wear Compose

  
Menulis aplikasi Jetpack Compose untuk perangkat Wearable dengan memberikan fungsi guna mendukung perangkat, ukuran, bentuk, dan gestur navigasi tertentu perangkat wearable.
Update Terbaru Rilis Stabil Kandidat Rilis Rilis Beta Rilis Alfa
27 Juli 2022 1.0.0 - - 1.1.0-alpha02

Mendeklarasikan dependensi

Untuk menambahkan dependensi pada Wear, 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.wear.compose:compose-foundation:1.1.0-alpha03"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material:1.1.0-alpha03"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.1.0-alpha03"

    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

Kotlin

dependencies {
    implementation("androidx.wear.compose:compose-foundation:1.1.0-alpha03")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material:1.1.0-alpha03")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.1.0-alpha03")

    // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material.
    // androidx.wear.compose:compose-material is designed as a replacement
    // not an addition to androidx.compose.material:material.
    // If there are features from that you feel are missing from
    // androidx.wear.compose:compose-material please raise a bug to let us know.
}

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.

Versi 1.1

Versi 1.1.0-alpha02

27 Juli 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha02, androidx.wear.compose:compose-material:1.1.0-alpha02, dan androidx.wear.compose:compose-navigation:1.1.0-alpha02 dirilis. Versi 1.1.0-alpha02 berisi commit ini.

Fitur Baru

  • Kami telah mengalihkan dependensi Compose untuk Wear OS pada library Compose inti dari 1.2.0 ke 1.3.0-alpha0X

Perubahan API

  • Menambahkan overload untuk mengubah bentuk chip (I02e87)

Perbaikan Bug

  • Kami telah menganimasikan visibilitas vinyet saat menampilkan/menyembunyikan Dialog, agar konsisten dengan animasi penskalaan yang ada. (Ida33e)
  • Kami telah memperbaiki bug yang memungkinkan pembagian dengan nol untuk beberapa perilaku ayunkan jari pada saat men-scroll. (I86cb6)
  • Memperbaiki bug di ChipDefaults.childChipColor() untuk memastikan bahwa warna latar belakang yang dinonaktifkan sepenuhnya transparan. (I2b3c3, b/238057342)

Versi 1.1.0-alpha01

29 Juni 2022

androidx.wear.compose:compose-foundation:1.1.0-alpha01, androidx.wear.compose:compose-material:1.1.0-alpha01, dan androidx.wear.compose:compose-navigation:1.1.0-alpha01 dirilis. Versi 1.1.0-alpha01 berisi commit ini.

Perubahan API

  • Parameter contentDescription pemilih sekarang hanya digunakan untuk opsi Pemilih yang dipilih dan menggunakan String nullable (sebelumnya, perlu meneruskan pemetaan dari opsi ke deskripsi konten, tetapi hanya opsi yang dipilih yang digunakan). (Ife6a7)
  • Kami telah membuat peningkatan aksesibilitas ke Pemilih sehingga layar multi-pemilih dapat dinavigasi dengan pembaca layar dan deskripsi konten dapat diakses (I64edb)

Perbaikan Bug

  • Kami telah memperbarui aturan profil dasar pengukuran yang dikemas dengan library Wear Compose (I9c694)
  • Kami telah mengoreksi arah gradien untuk Chip dalam mode kanan ke kiri. Arah sebelumnya kiri atas->kanan bawah, dan sekarang kanan atas->kiri bawah. (Ic2e77)
  • Kami telah memperbarui gradien default untuk Chip/ToggleChip/Card agar sesuai dengan spesifikasi UX terbaru. ChipDefaults.gradientBackgroundChipColors telah diperbarui agar dimulai dari 50% primer, bukan 32,5%. CardDefaults.cardBackgroundPainter telah diperbarui agar dimulai dari 30% primer dan berakhir pada 20% onSurfaceVariant (sebelumnya 20% ke 10% onSurfaceVariant). ToggleChip.toggleChipColors berubah dari gradien linear 75% permukaan ke 32,5% primer menjadi 0% permukaan ke 50% primer. (I43bbd)
  • Kami telah menambahkan warna latar belakang (MaterialTheme.color.surface) di belakang Chip/ToggleChips yang memiliki latar belakang gradien untuk memastikan bahwa warna tersebut terlihat benar jika warna terang digunakan di belakangnya. (Ibe1a4, b/235937657)
  • Item Pemilih sekarang selalu rata tengah, yang memperbaiki bug saat menyetel gradientRatio ke nol menyebabkan efek samping dari perubahan perataan. (I712b8)

Versi 1.0

Versi 1.0.0

27 Juli 2022

androidx.wear.compose:compose-foundation:1.0.0, androidx.wear.compose:compose-material:1.0.0, dan androidx.wear.compose:compose-navigation:1.0.0 dirilis. Versi 1.0.0 berisi commit berikut ini.

Fitur utama 1.0.0

  • Ini adalah rilis stabil pertama Compose untuk Wear OS (baca selengkapnya).
  • Compose untuk Wear OS dibuat berdasarkan library Compose inti yang menyediakan komponen khusus perangkat wearable tambahan dan, jika sesuai, implementasi alternatif komponen Compose inti yang disesuaikan untuk perangkat wearable.
  • Untuk daftar komponen utama di Wear Compose, lihat catatan rilis untuk (Compose untuk Wear OS Beta01).

Perbaikan Bug

  • Kami telah menganimasikan visibilitas vinyet saat menampilkan/menyembunyikan Dialog, agar konsisten dengan animasi penskalaan yang ada. (Ida33e)
  • Kami telah memperbaiki bug yang memungkinkan pembagian dengan nol untuk beberapa perilaku ayunkan jari pada saat men-scroll. (I86cb6)
  • Memperbaiki bug di ChipDefaults.childChipColor() untuk memastikan bahwa warna latar belakang yang dinonaktifkan sepenuhnya transparan. (I2b3c3, b/238057342)

Versi 1.0.0-rc02

22 Juni 2022

androidx.wear.compose:compose-foundation:1.0.0-rc02, androidx.wear.compose:compose-material:1.0.0-rc02, dan androidx.wear.compose:compose-navigation:1.0.0-rc02 dirilis. Versi 1.0.0-rc02 berisi commit berikut ini.

Perbaikan Bug

  • Kami telah mengoreksi arah gradien untuk Kartu dalam mode kanan ke kiri (RTL). Arah sebelumnya kiri atas->kanan bawah, dan sekarang kanan atas->kiri bawah. (Ic2e77)
  • Kami telah memperbarui gradien default untuk Chip/ToggleChip/Card agar sesuai dengan spesifikasi UX terbaru. ChipDefaults.gradientBackgroundChipColors telah diperbarui agar dimulai dari 50% primer, bukan 32,5%. CardDefaults.cardBackgroundPainter telah diperbarui agar dimulai dari 30% primer dan berakhir pada 20% onSurfaceVariant (sebelumnya 20% ke 10% onSurfaceVariant). ToggleChip.toggleChipColors berubah dari gradien linear permukaan 75% ke 32,5% primer menjadi 0% permukaan ke 50% primer. (I43bbd)
  • Kami telah menambahkan warna latar belakang (MaterialTheme.color.surface) di belakang Chip/ToggleChips yang memiliki latar belakang gradien untuk memastikan bahwa warna tersebut terlihat benar jika warna terang digunakan di belakangnya. (Ibe1a4, b/235937657)
  • Kami telah memperbarui aturan profil dasar pengukuran yang dikemas dengan library Wear Compose (I9c694)

Versi 1.0.0-rc01

15 Juni 2022

androidx.wear.compose:compose-foundation:1.0.0-rc01, androidx.wear.compose:compose-material:1.0.0-rc01, dan androidx.wear.compose:compose-navigation:1.0.0-rc01 dirilis. Versi 1.0.0-rc01 berisi commit berikut ini.

Perubahan API

  • Antarmuka di library Compose kini dibuat menggunakan metode antarmuka default jdk8 (I5bcf1)

Perbaikan Bug

  • Kami telah menghapus panggilan eksplisit ke fillMaxWidth() di header daftar karena tidak diperlukan dan dapat menimbulkan masalah jika ScalinglazyColumn memiliki gabungan komponen ListHeader() dan Chip() karena lebarnya cenderung membesar/mengecil saat item ListHeader di-scroll ke dalam/ke luar tampilan. (I37144, b/235074035)
  • Kami telah memperbaiki bug di ScalingLazyColumn yang dapat menyebabkan item daftar tidak tergambar dengan benar hingga di-scroll jika item daftar ke-0 cukup besar (termasuk padding) (Ic6159, b/234328517)
  • Kami telah melakukan penyesuaian kecil di easing ScalingLazyColumn karena item mencapai tepi layar untuk menyesuaikan dengan pembaruan spesifikasi UX. Nilai lama CubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f) -> nilai baru CubicBezierEasing(0.3f, 0f, 0.7f, 1f). Untuk mempertahankan perilaku lama, Anda dapat mengganti scalingParams dari ScalingLazyColumn (Ie375c)
  • Kami telah menambahkan padding ke CompactChip untuk memastikan bahwa ukuran target ketuknya minimal setinggi 48 dp untuk memenuhi panduan aksesibilitas Material. Hal ini dapat memengaruhi tata letak yang Anda pakai menggunakan CompactChips karena akan menggunakan ruang tambahan. (I3d57c)

Versi 1.0.0-beta03

1 Juni 2022

androidx.wear.compose:compose-foundation:1.0.0-beta03, androidx.wear.compose:compose-material:1.0.0-beta03, dan androidx.wear.compose:compose-navigation:1.0.0-beta03 dirilis. Versi 1.0.0-beta03 berisi commit ini.

Fitur Baru

  • Kami telah membuat ScalingLazyColumn berfungsi dalam mode @Preview Compose. (I3b3b6, b/232947354)

Perubahan API

  • Kami telah mengubah nilai default untuk properti ScalingLazyColumn.horizontalAlignment dari Start menjadi CenterHorizontally untuk memastikan bahwa saat item daftar tidak mengisi seluruh lebar kolom, item daftar tersebut akan disejajarkan untuk visibilitas maksimum. Untuk beralih kembali ke perilaku sebelumnya, tetapkan horizontalAlignment = Alignment.Start.(I9ed4b)

Masalah Umum

  • Tinggi area ketuk/sentuh CompactChip lebih kecil daripada panduan aksesibilitas Material. Masalah ini akan diperbaiki pada rilis berikutnya (15 Juni). Jika Anda menggunakan CompactChip, hal ini akan memengaruhi tata letak karena CompactChips kini akan memiliki padding tambahan di atas dan di bawah. Harap sesuaikan dan uji tata letak Anda atau lihat komentar bug untuk mengetahui solusi saat menggunakan perilaku yang sudah ada. (b/234332135)

Perbaikan Bug

  • Demo baru untuk menganimasikan penambahan atau penghapusan teks awal di TimeText. (I16d75)
  • Menambahkan pengujian untuk HorizontalPageIndicator.PagesState (I64ed0)
  • Memperbarui TimeText lebih dekat dengan spesifikasi UX (Ib7ea1)

Versi 1.0.0-beta02

18 Mei 2022

androidx.wear.compose:compose-foundation:1.0.0-beta02, androidx.wear.compose:compose-material:1.0.0-beta02, dan androidx.wear.compose:compose-navigation:1.0.0-beta02 dirilis. Versi 1.0.0-beta02 berisi commit ini.

Fitur Baru

  • Pemilih sekarang selalu merespons peristiwa scroll bahkan saat dalam mode hanya baca. Dengan demikian, pengguna tidak perlu mengetuk Pemilih terlebih dahulu sebelum dapat men-scroll. Dalam mode hanya baca, opsi selain yang saat ini dipilih akan dikaburkan oleh shim di gradientColor. (I72925)
  • Kami telah mengubah perilaku UX Chip/ToggleChip/CompactChip/SplitToggleChip agar berhenti melakukan fillMaxWidth secara default. Sebaliknya, perilaku ini akan menyesuaikan kontennya. Untuk mempertahankan perilaku sebelumnya, cukup tambahkan modifier = Modifier.fillMaxWidth() (I60a2c, b/232206371)

Perbaikan Bug

  • Konstruktor CurvedTextStyle yang menggunakan TextStyle kini juga mematuhi fontWeight (Ini dapat ditambahkan ke konstruktor dan metode penyalinan dalam revisi API mendatang) (Ieebb9)
  • Peningkatan fitur geser tepi. Saat Modifier.edgeSwipeToDismiss digunakan dan geser ke kiri dipicu dari area tepi, gestur ini tidak lagi memicu geser-untuk-menutup saat arah geser berubah ke kanan. Sebelumnya, Anda dapat memicu geser-untuk-menutup dengan menggeser ke kiri, lalu menggeser ke kanan. (I916ea)
  • HorizontalPageIndicator kini menampilkan hingga 6 halaman di layar. Jika total ada lebih dari 6 halaman, indikator akan menunjukkan setengah ukuran di sisi kiri atau kanan, dengan transisi yang lancar antar-halaman. (I2ac29)
  • Meningkatkan perilaku snap default pada ScalingLazyColumn dan Picker (I49539)
  • Peningkatan fitur geser tepi. Saat Modifier.edgeSwipeToDismiss digunakan, geser-untuk-menutup hanya dipicu saat sentuhan pertama mendarat di tepi dan digeser ke kanan. Sebelumnya, Anda dapat memicu geser-untuk-menutup dengan menggeser dari bagian mana pun pada layar jika tindakan scroll mencapai bagian awal. (I8ca2a)

Versi 1.0.0-beta01

11 Mei 2022

androidx.wear.compose:compose-foundation:1.0.0-beta01, androidx.wear.compose:compose-material:1.0.0-beta01, dan androidx.wear.compose:compose-navigation:1.0.0-beta01 dirilis. Versi 1.0.0-beta01 berisi commit ini.

Yang ada di Compose untuk Wear OS 1.0

1.0.0-beta01 Compose untuk Wear OS menandai pencapaian penting karena library selesai dan API terkunci.

Komponen Wear Compose Material dalam rilis 1.0 meliputi:

  • Tema Material - digunakan sebagai pengganti Compose untuk MaterialTheme Seluler, menyediakan warna, bentuk, dan tipografi untuk mem-build komponen di perangkat Wearable yang mengimplementasikan panduan UX Desain Material Wear.
  • Button, CompactButton, dan ToggleButton - Tombol menawarkan satu slot untuk mengambil ikon, gambar, atau teks pendek (maks. 3 karakter). Berbentuk lingkaran dengan ukuran yang disarankan untuk tombol default, besar, atau kecil. CompactButton menawarkan satu slot untuk mengambil konten apa pun (ikon, gambar, atau teks) dan berbentuk lingkaran dengan ukuran latar belakang ekstra kecil. CompactButton memiliki padding transparan opsional di sekitar latar belakang yang meningkatkan area yang dapat diklik. ToggleButton adalah tombol yang menawarkan satu slot untuk mengambil konten apa pun (teks singkat, ikon, atau gambar) dan memiliki status aktif/nonaktif (dicentang/tidak dicentang) dengan warna dan ikon yang berbeda untuk menunjukkan apakah kotak dicentang atau tidak
  • Kartu - digunakan untuk menampilkan informasi tentang aplikasi seperti notifikasi. Desain yang fleksibel untuk berbagai kasus penggunaan dengan AppCard dan TitleCard memberikan berbagai tata letak dan dukungan untuk gambar sebagai konten kartu atau latar belakang.
  • Chip - komponen berbentuk stadion yang serupa dengan tombol, tetapi dengan area yang lebih besar dan beberapa slot untuk memungkinkan label, label sekunder, dan ikon. Dengan berbagai ukuran dan dengan dukungan untuk gambar sebagai latar belakang.
  • ToggleChips dan SplitToggleChips - Chip dengan status dicentang/tidak dicentang dan penambahan slot ToggleControl untuk menampilkan ikon seperti tombol akses atau tombol pilihan untuk menampilkan status komponen yang dicentang. Selain itu, SplitToggleChip memiliki dua area yang dapat diketuk, satu dapat diklik dan satu lagi dapat diganti.
  • CircularProgressIndicator - Indikator progres Material Wear dengan dua variasi. Yang pertama mengekspresikan proporsi penyelesaian tugas yang sedang berlangsung dan mendukung celah di jalur melingkar antara sudut awal dan akhir. Yang kedua menunjukkan progres yang tidak tentu untuk waktu tunggu yang tidak ditentukan.
  • curvedText - membentuk bagian dari DSL untuk mendeskripsikan CurvedLayouts, serta curvedRow dan curvedColumn, untuk menata letak komponen di sekitar perangkat melingkar. Lihat Wear Component Foundation di bawah ini untuk detail CurvedLayout dan CurvedModifier lebih lanjut (memainkan peran yang mirip dengan Pengubah di dunia non-curved dan memungkinkan konfigurasi berbagai aspek tata letak, padding, gradien, dll.).
  • Dialog, Pemberitahuan, dan Konfirmasi - Dialog menampilkan dialog layar penuh, melapisi konten lainnya, dan mendukung geser-untuk-menutup. Satu slot diperlukan yang diharapkan menjadi konten dialog Material Wear yang bersifat dogmatis seperti Pemberitahuan atau Konfirmasi. Pemberitahuan adalah konten dialog opini dengan slot untuk ikon, judul, dan pesan. Notifikasi memiliki overload untuk dua tombol negatif dan positif yang ditampilkan secara berdampingan atau slot untuk satu atau beberapa chip yang ditumpuk secara vertikal. Konfirmasi adalah konten dialog opini yang menampilkan pesan selama durasi tertentu. Class ini memiliki slot untuk ikon atau gambar (yang dapat dianimasikan).
  • HorizontalPageIndicator - menampilkan posisi halaman horizontal dengan cara yang sesuai dengan faktor bentuk perangkat Wearable. Didesain untuk mengambil layar penuh dan menampilkan indikator melengkung pada perangkat bulat. Dapat digunakan dengan penampil halaman Accompanist.
  • Ikon - Implementasi Wear dari Ikon yang mengambil warna dan alfa dari Tema Material Wear. Untuk ikon yang dapat diklik, lihat Tombol atau Chip.
  • Pemilih - menampilkan daftar item yang dapat di-scroll untuk dipilih. Secara default, item akan diulang ‘tanpa batas’ di kedua arah. Dapat ditampilkan dalam mode hanya baca untuk menyembunyikan opsi yang tidak dipilih.
  • PositionIndicator - menampilkan posisi scroll atau indikasi posisi lainnya dengan cara yang sesuai dengan faktor bentuk Wearable. Didesain untuk mengambil layar penuh dan menampilkan indikator melengkung pada perangkat bulat.
  • Scaffold - mengimplementasikan struktur tata letak visual Desain Material dasar. Komponen ini menyediakan API untuk menyusun beberapa komponen Material Wear (seperti TimeText, PositionIndicator, dan Vignette) yang membuat layar, memastikan strategi tata letak yang tepat untuk layar tersebut dan mengumpulkan data yang diperlukan sehingga komponen ini akan bekerja sama dengan benar.
  • ScalingLazyColumn - komponen daftar scrolling/fisheye scroll yang membentuk bagian penting dari bahasa Desain Material Wear. Memberikan efek penskalaan dan transparansi ke item konten. ScalingLazyColumn dirancang agar dapat menangani sejumlah besar item konten, yang hanya terwujud dan disusun saat dibutuhkan.
  • Penggeser - memungkinkan pengguna membuat pilihan dari rentang nilai. Rentang pilihan ditampilkan sebagai panel, yang secara opsional dapat ditampilkan dengan pemisah.
  • Stepper - komponen layar penuh yang memungkinkan pengguna membuat pilihan dari rentang nilai, menggunakan tombol naikkan/turunkan di bagian atas dan bawah layar, dengan slot di tengah untuk Teks atau Chip.
  • SwipeToDismissBox - menangani gestur geser-untuk-menutup. Dibutuhkan satu slot untuk latar belakang (hanya ditampilkan selama gestur geser) dan konten latar depan. Secara opsional, dapat digabungkan dengan library navigasi androidx menggunakan SwipeDismissableNavHost (lihat library Navigasi Wear Compose di bawah).
  • Teks - Implementasi Wear dari komponen Teks Material Compose, mengambil warna dan alfa dari Tema Material Wear
  • TimeText - komponen untuk menampilkan Waktu dan status aplikasi di bagian atas layar. Menyesuaikan dengan bentuk layar dengan menggunakan teks melengkung pada layar bulat.
  • Vignette - tindakan pada layar untuk digunakan dalam Scaffold yang memburamkan bagian atas dan bawah layar saat konten yang dapat di-scroll digunakan.

  • Komponen berikut juga disertakan dari Wear Compose Foundation:

  • CurvedLayout - CurvedLayout Wear Foundation adalah composable tata letak yang menempatkan turunannya dalam lengkungan, memutarnya sesuai kebutuhan. Komponen ini mirip dengan tata letak Baris yang melengkung menjadi segmen dari anulus. Perlu diperhatikan bahwa konten CurvedLayout bukan lambda composable - melainkan, DSL (bahasa khusus domain). Semua elemen dalam DSL CurvedLayout mendukung parameter pengubah opsional, yang dibuat dari CurvedModifier.

  • basicCurvedText - elemen di DSL CurvedLayout, basicCurvedText memungkinkan developer menulis teks melengkung dengan mudah mengikuti kelengkungan lingkaran (biasanya di tepi layar melingkar). basicCurvedText hanya dapat dibuat dalam CurvedLayout untuk memastikan pengalaman terbaik, seperti dapat menentukan posisi dan menggunakan CurvedModifiers. Perlu diperhatikan bahwa dalam kebanyakan kasus, curvedText harus digunakan, karena menggunakan tema Material.

  • curvedComposable - menggabungkan konten composable normal sehingga dapat digunakan dengan CurvedLayout. Jika curvedComposable memiliki beberapa elemen di dalamnya, elemen tersebut akan digambar di atas satu sama lain (seperti Kotak). Untuk menempatkan beberapa composable di sepanjang lengkungan, gabungkan setiap composable dengan curvedComposable.

  • curvedRow dan curvedColumn - mirip dengan Baris dan Kolom, curvedRow dan curvedColumn dapat ditempatkan di dalam CurvedLayout untuk menata letak elemen sesuai kebutuhan. Untuk curvedRow, arah tata letak sudut dan perataan radial mungkin sudah ditentukan. Untuk curvedColumn, perataan sudut dan arah radial dapat ditentukan.

  • CurvedModifier - semua komponen melengkung menerima parameter pengubah yang bisa dibuat dengan menggunakan CurvedModifier: latar belakang, ukuran, bobot, dan padding didukung.

  • Komponen berikut juga disertakan dari Navigasi Wear Compose:

  • SwipeDismissableNavHost - menyediakan tempat dalam hierarki Compose untuk navigasi mandiri yang akan terjadi, dengan navigasi mundur yang disediakan oleh gestur geser. Konten ditampilkan dalam SwipeToDismissBox, menunjukkan tingkat navigasi saat ini. Selama gestur geser-untuk-menutup, tingkat navigasi sebelumnya (jika ada) ditampilkan di latar belakang.

  • Lihat catatan rilis sebelumnya untuk ragam rilis Alfa untuk mengetahui detail selengkapnya tentang apa yang telah ditayangkan.

Perubahan API

  • Menambahkan fungsi CurvedModifier.padding*. Ini digunakan untuk menentukan ruang tambahan yang akan ditambahkan di sekitar komponen yang melengkung. (I4dbb4)
  • Menghapus class internal CompositionLocal (I42490)
  • Kami telah menambahkan nilai konstanta untuk ukuran ikon Button, CompactButton, dan ToggleButton, sebagai panduan (I57cab)
  • Menambahkan parameter yang diaktifkan ke AppCard dan TitleCard. Sekarang memiliki API yang serupa dengan Kartu androidx.compose.material. Jika parameter disetel ke salah (false), kartu tersebut tidak akan dapat diklik. (Idc48d, b/228869805)

Perbaikan Bug

  • Stepper kini menonaktifkan tombol turunkan dan naikkan saat batas bawah/atas telah tercapai (dan menerapkan ContentAlpha.disabled ke iconColor) (I4be9f)
  • Kami telah menambahkan padding 1 dp di sekitar konten Pemilih saat digambar dengan gradien untuk mencegah jitter pada teks yang terlihat saat menggeser. (I0b7b9)
  • Menambahkan pengujian screenshot untuk PositionIndicator (I5e8bc)
  • Menambahkan pengujian lainnya untuk AppCard dan TitleCard (I85391, b/228869805)

Versi 1.0.0-alpha21

20 April 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha21, androidx.wear.compose:compose-material:1.0.0-alpha21, dan androidx.wear.compose:compose-navigation:1.0.0-alpha21 dirilis. Versi 1.0.0-alpha21 berisi commit ini.

Fitur Baru

  • Menambahkan pengubah melengkung baru untuk menentukan latar belakang elemen melengkung: CurvedModifier.background, .radialGradientBackground, dan .angularGradientBackground (I8f392)
  • Memungkinkan mode tambahan teks melengkung (clip/ellipsis/visible) untuk ditetapkan. (I8e7aa)
  • Menambahkan pengubah CurvedModifier.weight, serupa dengan yang ada di Compose. Ini dapat digunakan pada turunan curvedRow dan CurvedLayout (untuk lebar) dan turunan curvedColumn (untuk tinggi). (I8abbd)
  • Menambahkan pengubah CurvedModifier.size, .angularSize, dan .radialSize untuk menentukan ukuran elemen melengkung. (I623c7)

Perubahan API

  • Mengatur ulang parameter untuk memastikan latar belakang sebelum warna secara konsisten di seluruh Wear Compose API (I43208)
  • Menghapus parameter searah jarum jam & insideOut dan mengganti dengan konstanta yang lebih ekspresif di class baru. Arah tata letak melengkung kini dapat mengetahui LayoutDirection, dan diwariskan jika tidak ditentukan (If0e6a)
  • Kami telah mengganti autoCenter: Boolean dengan autoCenter: AutoCentringParams untuk memperbaiki masalah API pada ScalingLazyColumn. (Ia9c90)
  • Kami telah mengganti nama iconTintColor dan toggleControlTintColor menjadi iconColor dan toggleControlColor di seluruh API (Chip/ToggleChip/Dialog/Slider/Stepper/...) saat warna diterapkan ke slot icon/toggleControl. (Ied238)
  • Menulis ulang enum PageIndicatorStyle ke dalam class nilai (I2dc72)
  • Kami telah menambahkan RowScope/ColumnScope/BoxScope ke beberapa slot di Composable untuk menunjukkan apa itu asumsi tata letak kepada developer. Tindakan ini akan memungkinkan developer menggunakan pengubah tambahan pada beberapa konten slot dan menghindari kebutuhan untuk memberikan elemen tata letak tambahan. Selain itu, kami telah melakukan beberapa perubahan kecil pada warna AppCard/TitleCard sehingga timeColor dan appColor ditetapkan secara default ke contentColor. Semua properti tersebut tetap dapat diganti secara terpisah jika diperlukan. (I26b59)
  • Membuat objek SwipeToDismissBoxState.Companion menjadi pribadi (I39e84)
  • Memperbaiki urutan parameter untuk InlineSlider dan Stepper. Perubahan sederhana untuk mengikuti panduan api (I11fec)
  • Kami telah menghapus objek Saver untuk SwipeToDismissBoxState karena tidak digunakan. (Ifb54e)
  • Kami telah mengupdate CompactChip menjadi bagian dari Spesifikasi UX terbaru. Padding telah dikurangi menjadi horizontal = 12.dp dan vertikal = 0.dp. Font untuk label telah diubah dari tombol menjadi teks1. Ukuran ikon yang direkomendasikan adalah 20x20 jika ikon dan label ada, dan 24x24 untuk chip ringkas hanya ikon. Untuk kasus penggunaan hanya ikon, kami juga memastikan agar ikon berada di tengah. (Iea2be)
  • Kami telah menambahkan sejumlah kolom baru ke ScalingLazyListLayoutInfo agar developer dapat mengetahui jumlah contentPadding dan autoCenteringPadding yang telah diterapkan. Ini dapat berguna bagi developer saat menghitung gerakan mengayun/scroll (I7577b)
  • Kami telah menerapkan transisi masuk/keluar untuk Dialog. Parameter showDialog telah ditambahkan dan Dialog kini mengontrol visibilitasnya sendiri (ini memungkinkan Dialog untuk menjalankan animasi intro dan outro saat Dialog ditampilkan/disembunyikan). Perhatikan bahwa animasi outro tidak dijalankan ketika pengguna meninggalkan dialog melalui tindakan geser-untuk-menutup. Kami juga telah menambahkan nilai default untuk status di overload SwipeToDismissBox yang baru ditambahkan. (I682a0)
  • Untuk mendukung i18n dan a11y dengan lebih baik, kami telah mengubah ToggleChip dan SplitToggleChip sehingga tidak lagi memiliki setelan default untuk slot toggleControl. Kami juga telah mengubah ToggleChipDefaults sehingga metode berikut kini menampilkan ImageVector, bukan Icon (perhatikan bahwa karena metode tidak lagi menampilkan @Composables, metode tersebut telah berubah menjadi dimulai dengan huruf kecil), SwitchIcon()->switchIcon(), CheckboxIcon->checkboxIcon(), dan RadioIcon()->radioIcon() - ini memungkinkan dan mendorong developer untuk membuat composable Icon() mereka sendiri dengan kumpulan contentDescription yang sesuai. (I5bb5b)
  • Kami telah menambahkan parameter SwipeDismissableNavHostState ke SwipeDismissableNavHost. Ini mendukung penggunaan geser tepi pada layar yang digunakan sebagai tujuan navigasi, karena SwipeToDismissBoxState kini dapat ditarik dan digunakan untuk melakukan inisialisasi SwipeDismissableNavHostState dan Modifier.edgeSwipeToDismiss pada layar yang memerlukan geser tepi. (I819f5, b/228336555)

Perbaikan Bug

  • Memastikan tata letak melengkung diupdate saat diperlukan. (Ie8bfa, b/229079150)
  • Perbaikan bug untuk https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931)
  • Menghapus anotasi eksperimental yang tidak diperlukan (I88d7e)

Versi 1.0.0-alpha20

6 April 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha20, androidx.wear.compose:compose-material:1.0.0-alpha20, dan androidx.wear.compose:compose-navigation:1.0.0-alpha20 dirilis. Versi 1.0.0-alpha20 berisi commit ini.

Fitur Baru

  • Menambahkan pengubah edgeSwipeToDismiss untuk SwipeToDismiss. Mengizinkan swipeToDismiss untuk hanya aktif di tepi kiri area pandang. Digunakan saat bagian tengah layar harus dapat menangani paging horizontal, seperti men-scroll 2-d peta atau menggeser horizontal antar-halaman.(I3fcec, b/200699800)

Perubahan API

  • Implementasi dasar CurvedModifiers, ini akan membuka cara untuk memperkenalkan cara menyesuaikan konten melengkung (tetapi belum ada CurvedModifiers yang disediakan, dan kemampuan untuk membuat pengubah kustom mungkin tersedia nanti) (I9b8df)
  • Dokumentasi pengubah EdgeSwipe dan nilai default diperbarui untuk mendapatkan pemahaman yang lebih baik. (I6d00d)
  • Tambahkan slot PageIndicator ke Scaffold. Dengan menambahkan PageIndicator langsung ke Scaffold, kami dapat memastikan bahwa file tersebut akan ditampilkan dengan benar di perangkat melingkar. (Ia6042)
  • Menghapus Ikon default dari parameter InlineSlider dan Stepper. Hal ini akan membantu developer untuk lebih memperhatikan persyaratan pelokalan dan aksesibilitas. Penggunaan ikon default ditampilkan dalam demo dan sampel. (I7e6fd)
  • Mengganti nama parameter Trailing dan Leading dengan Start dan End di TimeText (Iaac32)
  • Kami telah menambahkan overload SwipeToDismissBox dengan parameter onDismissed untuk mendukung penggunaan umum pemicuan peristiwa navigasi saat gestur geser selesai. (I50353, b/226565726)
  • Menghapus anotasi ExperimentalWearMaterialApi dari penggunaan TimeText (Ide520)
  • Kami telah menandai antarmuka cakupan dan info ScalingLazyList/Column sebagai disegel karena tidak dimaksudkan untuk diterapkan oleh developer eksternal dan ini akan memungkinkan kami menambahkan anggota baru di dalamnya tanpa perubahan yang dapat menyebabkan gangguan biner. (I7d99f)
  • Kami telah menambahkan properti flingBehaviour baru ke Pemilih dan metode PickerDefaults.flingBehaviour() untuk mengaktifkan konfigurasi perilaku fling seperti menambahkan dukungan RSB. PickerState sekarang mengimplementasikan antarmuka ScrollableState. (Ib89c7)

Perbaikan Bug

  • Update aturan profil dasar pengukuran Android Runtime (ART) untuk library Wear Compose. ART dapat memanfaatkan aturan profil di perangkat untuk terlebih dahulu mengompilasi subkumpulan aplikasi tertentu guna meningkatkan performa aplikasi. Perhatikan bahwa tindakan ini tidak akan berpengaruh pada aplikasi yang dapat di-debug. (Iaa8ef)
  • Meningkatkan kualitas dokumentasi (I2c051)

Versi 1.0.0-alpha19

23 Maret 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha19, androidx.wear.compose:compose-material:1.0.0-alpha19, dan androidx.wear.compose:compose-navigation:1.0.0-alpha19 dirilis. Versi 1.0.0-alpha19 berisi commit ini.

Perubahan API

  • Mengganti nama CurvedRow menjadi CurvedLayout, dan mengerjakan ulang agar menjadi cakupan dengan DSL. Dengan DSL ini, tata letak melengkung yang lebih kompleks dapat ditentukan menggunakan serangkaian curvedRow dan curvedColumn bertingkat (yang merupakan tata letak melengkung yang setara dengan Baris dan Kolom). Di dalam elemen tata letak ini, tiga elemen dapat digunakan: curvedComposable (untuk menambahkan @Composable), basicCurvedText (teks melengkung dasar) dan curvedText (teks melengkung berbasis material Wear). (Ib776a)
  • Menjadikan sisi PositionIndicator dapat dikonfigurasi. Posisi PositionIndicator dasar sekarang dapat dikonfigurasi menjadi End (berbasis arah tata letak), OppositeRsb (mempertimbangkan rotasi layar, untuk memosisikan dirinya berlawanan dengan RSB fisik), atau absolut Left & Right. (I2f1f3)
  • Untuk SwipeToDismissBox, kami telah mengganti nama SwipeDismissTarget. Original menjadi SwipeToDismissValue.Default dan SwipeDismissTarget.Dismissal menjadi SwipeToDismissValue.Dismissed. Kami juga telah memindahkan SwipeToDismissBoxDefaults.BackgroundKey dan SwipeToDismissBoxDefaults.ContentKey masing-masing ke SwipeToDismissKeys.Background dan SwipeToDismissKeys.Content. (I47a36)
  • Kami telah menambahkan mode hanya baca ke Alat Pilih, untuk layar dengan beberapa Alat Pilih yang hanya memiliki satu Alat Pilih yang dapat diedit pada satu waktu. Jika bersifat hanya baca, Alat Pilih akan menampilkan opsi yang saat ini dipilih dan label jika sudah disediakan. (I879de)
  • SwipeToDismissBoxState telah difaktorkan ulang untuk membatasi cakupan ExperimentalWearMaterialApi menjadi Modifier.swipeable dan SwipeableState, yang kini digunakan secara internal. SwipeToDismissBoxState kini memiliki anggota currentValue, targetValue, isAnimationRunning, dan snapTo untuk mendukung kasus penggunaan umum. Beri tahu kami jika Anda ingin menjadikan properti lain agar tersedia. Juga memperbaiki perilaku SwipeableState jika selisih geser berada dalam error pembulatan anchor. (I58302)

Perbaikan Bug

  • Menyederhanakan dan menetapkan kode untuk mendeteksi apakah konten ScalingLazyColumn dapat di-scroll (digunakan untuk menentukan apakah kita akan menampilkan scrollbar atau tidak) (I7bce0)
  • Memperbaiki bug pada Indikator Posisi saat digunakan dengan lebih dari satu status dan beralih antar-status (I320b5)
  • Kami telah memperbarui tipografi/font tema Compose untuk Wear OS default agar sesuai dengan panduan UX terbaru kami. Dari catatan display1 (40.sp) dan display2 (34.sp) sekarang lebih kecil dari nilai sebelumnya dan berbagai pembaruan kecil lainnya untuk tinggi baris dan spasi baris telah dibuat. (Ie3077)
  • Kami telah menambahkan resistensi ke SwipeToDismissBox sehingga gerakan hanya terjadi saat menggeser untuk menutup dan tidak sama sekali jika ke arah yang berlawanan. (Ifdfb9)
  • Kami telah mengubah beberapa nilai parameter default untuk fungsi CircularProgressIndicator agar sesuai dengan panduan UX Desain Material Wear. Untuk versi Spinner/Indeterminant, ukuran (40->24 dp), indicatorColor (primary->onBackground), transparansi trackColor (30%->10%) dan lebar goresan (4->3 dp) telah diperbarui. Untuk versi Progress/Determinate, transparansi trackColor (30%->10%) telah diperbarui. (I659cc)
  • Kami telah memperbarui parameter penskalaan default ScalingLazyColumn agar sesuai dengan spesifikasi UX Desain Material Wear terbaru. Secara visual, hal ini menyebabkan item daftar mulai diskalakan lebih dekat ke pusat daftar, tetapi menjadi lebih kecil pada tepi daftar daripada sebelumnya. (Ica8f3)
  • Beberapa penyesuaian pada ScalingLazyColumnDefaults.snapFlingBehavior untuk meningkatkan akhir animasi (If3260)

Versi 1.0.0-alpha18

9 Maret 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha18, androidx.wear.compose:compose-material:1.0.0-alpha18, dan androidx.wear.compose:compose-navigation:1.0.0-alpha18 dirilis. Versi 1.0.0-alpha18 berisi commit ini.

Perubahan API

  • Beberapa peningkatan pada PositionIndicator: ShowResult diganti namanya menjadi PositionIndicatorVisibility. Beberapa peningkatan performa untuk menghindari penghitungan ulang jika tidak diperlukan (Iaed9d)
  • Pewarnaan yang direkomendasikan untuk SplitToggleChip telah diperbarui. SplitToggleChip kini memiliki latar belakang berwarna solid saat dicentang atau dihapus centangnya dengan warna ToggleControl menjadi indikasi utama apakah komponen dicentang atau tidak. Kami telah menambahkan ToggleDefaults.splitToggleChipColors() baru untuk mendukung skema warna baru. Kami juga telah menyederhanakan metode toggleChipColors() yang menghapus splitBackgroundOverlayColor (I7e66e)
  • Kami telah menambahkan unadjustedSize ke ScalingLazyListItemInfo karena tidak aman untuk menghitung ukuran item asli menggunakan ukuran yang diskalakan dan faktor penskalaan karena presisi matematika float. (I54657, b/221079441)
  • Menambahkan HorizontalPageIndicator. Ini menunjukkan jumlah total halaman dan halaman yang dipilih. Dapat berbentuk linear atau melengkung, bergantung pada bentuk perangkat. Ini juga mendukung bentuk indikator kustom, yang menentukan cara setiap indikator ditampilkan secara visual. (Iac898)
  • Kami telah mengupdate PickerState sehingga numberOfOptions dapat diupdate. Ini mendukung kasus penggunaan seperti DatePicker, saat jumlah hari dalam sebulan berubah bergantung pada bulan yang dipilih. Parameter konstruktor untuk PickerState telah diubah menjadi initialNumberOfOptions. (Iad066)
  • Menyembunyikan PositionIndicator saat ada scrollbar dan tidak dapat di-scroll. (Id0a7f)
  • Agar konsisten dengan Scaffold, komponen Dialog layar penuh kini menampilkan PositionIndicator dan Vignette. Kami juga sekarang menggunakan ScalingLazyColumn, bukan Column, yang berarti konten Dialog kini berada di ScalingLazyListScope (dan biasanya harus diapit oleh item { /* content */ }). Dialog mendukung parameter verticalArrangement. (Idea13)
  • Kami telah mengubah nama properti toggleIcon ToggleChip dan SplitToggleChip menjadi toggleControl agar selaras dengan Desain Material untuk membantu desainer dan developer menjelajahi API. (If5921, b/220129803)
  • Kami telah menambahkan entri caption3 baru ke Tipologi Tema Material Wear. Caption3 adalah font kecil yang digunakan untuk tulisan panjang seperti teks hukum. (I74b13, b/220128356)

Perbaikan Bug

  • Menghentikan animasi snap saat kita berada di sana. (Idb69d)
  • Menganimasikan perubahan pada PositionIndicator. (I94cb9)
  • Berdasarkan masukan UI/UX, kami telah mengubah autoCentering ScalingLazyColumn sehingga hanya akan menyediakan cukup ruang untuk memastikan item dengan indeks ScalingLazyListState.initialCenterItemIndex atau yang lebih tinggi dapat di-scroll sepenuhnya ke tengah area pandang. Hal ini memungkinkan developer untuk menempatkan satu atau dua item tentang item yang awalnya tidak berada di tengah, yang tidak dapat di-scroll ke tengah. Ini berarti bahwa ScalingLazyColumn dengan autoCenter tidak akan dapat di-scroll di atas initialCenterItemIndex/initialCenterItemScrollOffset (I22ee2)
  • Kami telah menambahkan demo untuk Alat Pilih Tanggal dan memperbaiki bug di PickerState saat initiallySelectedOption tidak diterapkan hingga Alat Pilih ditampilkan. (Id0d7e)
  • Untuk mengurangi pemotongan item ScalingLazyColumn yang lebih lebar di layar lingkaran, kami telah meningkatkan padding konten horizontal default dari 8 menjadi 10 dp. (I0d609)
  • Memastikan PositionIndicator ditampilkan saat men-scroll. (Ied9a2)

Versi 1.0.0-alpha17

23 Februari 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha17, androidx.wear.compose:compose-material:1.0.0-alpha17, dan androidx.wear.compose:compose-navigation:1.0.0-alpha17 dirilis. Versi 1.0.0-alpha17 berisi commit ini.

Fitur Baru

  • Kami telah menambahkan dukungan snap yang dapat digunakan dengan ScalingLazyColumn. Setel flingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state) untuk mengaktifkan dukungan snap. (I068d3, b/217377069)
  • Kami telah menambahkan demo untuk Alat pilih yang digunakan untuk memilih waktu dalam 24 jam atau 12 jam. (Ie5552)

Perubahan API

  • Memperbaiki masalah terkait font & gaya kustom TimeText di perangkat persegi (Iea76e)
  • ScalingLazyListLayoutInfo sekarang memiliki properti reverseLayout, viewportSize, dan orientasi yang cocok dengan properti dari LazyListLayoutInfo (I4f258, b/217917020)
  • ScalingLazyColumn sekarang memiliki properti userScrollEnabled yang cocok dengan properti dari LazyList (I164d0, b/217912513)
  • Alat pilih sekarang memiliki gradien di bagian atas dan bawah secara default (Iab92a)

Perbaikan Bug

  • Kami telah memodifikasi ScalingLazyColumn sehingga tidak lagi mengisi semua ruang di induknya. Sebagai gantinya, ukuran akan disesuaikan dengan ukuran kontennya. Hal ini membuatnya konsisten dengan perilaku LazyColumn. Jika Anda ingin mengaktifkan kembali perilaku lama, teruskan Modifier.fillMaxWidth()/width()/widthIn() ke ScalingLazyColumn (I51bf8)
  • Kami telah meningkatkan pesan pengecualian dalam SwipeDismissableNavHost.kt yang dipicu jika data navigasi sebelumnya kosong. (I1b1dc)

Versi 1.0.0-alpha16

9 Februari 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha16, androidx.wear.compose:compose-material:1.0.0-alpha16, dan androidx.wear.compose:compose-navigation:1.0.0-alpha16 dirilis. Versi 1.0.0-alpha16 berisi commit ini.

Fitur Baru

  • Menambahkan CircularProgressIndicator. Indikator progres menampilkan durasi proses atau waktu tunggu yang tidak ditentukan. Mendukung celah (cutout) untuk TimeText atau komponen lain jika digunakan dalam layar penuh. (Iab8da)

Perubahan API

  • Alat pilih sekarang memiliki parameter flingBehavior, dan nilai default membuat alat pilih untuk snap ke opsi terdekat saat men-scroll/mengayunkan jari. (I09000)
  • API bilangan bulat tambahan untuk InlineSlider dan Stepper (I1b5d6)

Perbaikan Bug

  • Kami telah mengubah initialCenterItemIndex default untuk ScalingLazyListState dari 0->1. Artinya, kecuali jika diganti pada konstruksi status dengan ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =), item daftar kedua (indeks == 1) akan ditempatkan di tengah area pandang saat inisialisasi dan item pertama (indeks == 0 ) akan ditempatkan sebelumnya. Hal ini memungkinkan efek visual default yang lebih baik secara otomatis karena sebagian besar area pandang akan diisi dengan item daftar. (I0c623, b/217344252)
  • Kami telah mengurangi extraPadding default ScalingLazyColumn yang disediakan untuk memastikan bahwa ada banyak item daftar yang dapat digambar (bahkan saat kami menurunkan ukuran sebagian item daftar tersebut) dari 10% menjadi 5%. Tindakan ini akan menghindari komposisi item daftar tambahan yang mungkin tidak muncul di area pandang. Jika scalingParams non-standar digunakan (misalnya, penskalaan yang lebih ekstrem), developer dapat menyesuaikan padding tambahan menggunakan viewportVerticalOffsetResolver. (I76be4)
  • Memperbaiki masalah TimeText di beberapa baris pada perangkat persegi (Ibd3fb)
  • Kami telah memodifikasi ScalingLazyColumn sehingga tidak lagi mengisi semua ruang di induknya. Sebagai gantinya, ukuran akan disesuaikan dengan ukuran kontennya. Hal ini membuatnya konsisten dengan perilaku LazyColumn. Jika Anda ingin mengaktifkan kembali perilaku lama, teruskan Modifier.fillMaxSize() ke ScalingLazyColumn - CATATAN: Perubahan ini tidak lengkap dan akan ditangani dalam perubahan lanjutan pada rilis Alfa berikutnya. (I3cbfa)

Versi 1.0.0-alpha15

26 Januari 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha15, androidx.wear.compose:compose-material:1.0.0-alpha15, dan androidx.wear.compose:compose-navigation:1.0.0-alpha15 dirilis. Versi 1.0.0-alpha15 berisi commit ini.

Perubahan API

  • Kami telah menambahkan properti baru autoCentering ke ScalingLazyColumn. Jika disetel ke benar (default), ini akan memastikan bahwa semua item termasuk yang pertama dan terakhir dapat di-scroll sehingga terlihat di tengah area pandang daftar. Perhatikan bahwa jika menggunakan pemusatan otomatis, Anda mungkin ingin menyetel padding konten vertikal ke 0.dp. Jika autoCentering dan padding konten vertikal disediakan, keduanya akan menghasilkan ruang tambahan yang tersedia sebelum item daftar pertama dan setelah item daftar terakhir, yang memungkinkan item daftar di-scroll lebih lanjut. (I2a282, b/214922490)
  • Kami telah menambahkan komponen Dialog yang memungkinkan semua composable memicu dialog layar penuh yang berada di atas konten lainnya. Jika ditampilkan, dialog akan mendukung gestur geser-untuk-menutup dan akan menampilkan konten induknya di latar belakang selama gestur geser. Konten dialog diharapkan berupa Alert atau Confirmation (diganti namanya dari komponen AlertDialog dan ConfirmationDialog sebelumnya) - Alert, Confirmation, dan Dialog, semuanya ada di paket androidx.wear.compose.material.dialog. Notifikasi dan Konfirmasi dapat digunakan sebagai tujuan navigasi. Selain itu, ColumnScope bisa ditambahkan ke parameter Notifikasi dan Konfirmasi jika perlu. (Ia9014)
  • Kami telah menghapus onSurfaceVariant2 dari Warna Tema Material Compose for WearOS dan mengganti penggunaan di library dengan onSurfaceVariant. (Icd592)
  • Menambahkan metode untuk memilih opsi secara terprogram di PickerState, opsi yang awalnya dipilih kini juga dapat ditentukan saat membuat PickerState. (I92bdf)
  • Kami telah menambahkan dukungan untuk menyesuaikan perilaku fling ScalingLazyColumn. (I1ad2e, b/208842968)
  • Kami telah menambahkan NavController.currentBackStackEntryAsState() ke library Wear.Compose.Navigation. (If9028, b/212739653)
  • Menambahkan Modifier.onRotaryScrollEvent() dan Modifier.onPreRotaryScrollEvent() untuk perangkat Wear dengan tombol samping yang berputar.(I18bf5, b/210748686)

Versi 1.0.0-alpha14

12 Januari 2022

androidx.wear.compose:compose-foundation:1.0.0-alpha14, androidx.wear.compose:compose-material:1.0.0-alpha14, dan androidx.wear.compose:compose-navigation:1.0.0-alpha14 dirilis. Versi 1.0.0-alpha14 berisi commit ini.

Fitur Baru

  • Kami telah menambahkan sejumlah metode ke ScalingLazyListState untuk memungkinkan developer mengontrol scroll ke item daftar tertentu dan juga menyetel offset dan item daftar awal.

    Sebagai bagian dari perubahan ini, kami juga telah mengubah ScalingLazyList agar berorientasi pada bagian tengah area pandang ScalingLazyList, bukan awal area pandang.

    Properti baru anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter telah ditambahkan ke ScalingLazyList untuk mengontrol apakah bagian tengah (ScalingLazyListAnchorType.ItemCenter) atau Edge (ScalingLazyListAnchorType.ItemStart) harus sejajar dengan garis tengah area pandang.

    Akibatnya, ScalingLazyListItemInfo.offset dan ScalingLazyListItemInfo.adjustedOffset telah berubah dan sekarang akan mencerminkan offset item tersebut sehubungan dengan posisi item daftar dan anchorType daftar. Misalnya, untuk ScalingLazyColumn dengan anchorType dari ItemCenter dan item daftar yang diposisikan dengan tengahnya di garis tengah area pandang, offsetnya adalah 0.

    Metode baru tersebut adalah scrollTo, animatedScrollTo, centerItemIndex, dan centerItemOffset. (I61b61)

  • Kami telah menambahkan pengendali tombol kembali ke SwipeDismissableNavHost, sehingga menekan tombol kembali akan membuka tingkat sebelumnya di hierarki navigasi. (I5b086, b/210205624)

Versi 1.0.0-alpha13

15 Desember 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha13, androidx.wear.compose:compose-material:1.0.0-alpha13, dan androidx.wear.compose:compose-navigation:1.0.0-alpha13 dirilis. Versi 1.0.0-alpha13 berisi commit ini.

Perubahan API

  • Kami telah membuat RangeIcons internal (direferensikan secara internal oleh InlineSlider dan Stepper). (I927ec)

Perbaikan Bug

  • Memperbaiki masalah yang menyebabkan SwipeDismissableNavHost menambahkan tujuan ke hierarki Compose sebelum mencapai status Siklus Proses CREATED, sehingga menghasilkan IllegalStateException. Perbaikan ini merupakan prasyarat untuk mengupdate dependensi pada navigation-compose ke 2.4.0-beta02 dan seterusnya. (I40a2b, b/207328687)

  • Menambahkan class enum Drawable untuk mendapatkan resource drawable dalam library Wear Compose sehingga refleksi tersebut tidak diperlukan lagi. Hal ini memperbaiki bug saat drawable library dihapus saat minifyEnabled=true atau shrinkResources=true). (Ib2a98)

  • Menambahkan pengujian untuk Stepper di Wear Compose (I2d03a)

  • Menambahkan sampel untuk SwipeDismissableNavHost di Navigasi Wear Compose. (I85f06)

Versi 1.0.0-alpha12

1 Desember 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha12, androidx.wear.compose:compose-material:1.0.0-alpha12, dan androidx.wear.compose:compose-navigation:1.0.0-alpha12 dirilis. Versi 1.0.0-alpha12 berisi commit ini.

Fitur Baru

  • Kami telah menambahkan komponen Stepper yang memungkinkan pengguna membuat pilihan dari rentang nilai. Stepper adalah kontrol layar penuh dengan tombol naikkan dan turunkan di bagian atas dan bawah, serta slot di tengah (diharapkan menggunakan Chip atau Teks). Ikon tombol dapat disesuaikan jika perlu. (I625fe)

  • Kami telah menambahkan 2 composable baru untuk menampilkan dialog: AlertDialog menunggu respons dari pengguna dan menampilkan judul, ikon, pesan, dan a) dua tombol untuk pilihan positif/negatif sederhana atau b) chip yang ditumpuk secara vertikal atau mengalihkan chip untuk pilihan yang lebih fleksibel, ConfirmationDialog menampilkan konfirmasi dengan waktu tunggu. Dialog sederhana ini memiliki slot untuk judul dan ikon (animasi). (Ic2cf8)

Perubahan API

  • Tambahkan unit (milidetik) ke nilai durasi dialog yang disarankan. (I09b48)

Versi 1.0.0-alpha11

17 November 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha11, androidx.wear.compose:compose-material:1.0.0-alpha11, dan androidx.wear.compose:compose-navigation:1.0.0-alpha11 dirilis. Versi 1.0.0-alpha11 berisi commit ini.

Fitur Baru

  • Kami telah menambahkan komponen alat pilih yang memungkinkan pengguna memilih item dari daftar scroll. Secara default, daftar item yang dapat dipilih diulang 'tak terbatas' di kedua arah, untuk memberikan kesan silinder berputar yang terlihat dari samping. Dua fitur akan ditambahkan dalam rilis berikutnya: snap ke nilai setelah geser/ayun jari; menambahkan fungsi ke PickerState untuk menyetel/men-scroll ke nilai saat ini. (I6461b)

Perubahan API

  • Menambahkan ScalingLazyItemScope dan beberapa pengubah baru fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight agar ukuran item daftar dapat disesuaikan berdasarkan ukuran penampung induk. Item dapat disetel untuk mengisi semua atau sebagian kecil ukuran induk. Fungsi mengekspos ini sudah tersedia di LazyRow/Column (I4612f)
  • Menambahkan dukungan untuk ScalingLazyColumn agar item dapat memiliki kunci. Juga menambahkan metode praktis untuk memungkinkan penambahan item dari Array dan List. (Ic1f89)

Perbaikan Bug

  • Contoh tambahan untuk TimeText (I8cb64)

Versi 1.0.0-alpha10

3 November 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha10, androidx.wear.compose:compose-material:1.0.0-alpha10, dan androidx.wear.compose:compose-navigation:1.0.0-alpha10 dirilis. Versi 1.0.0-alpha10 berisi commit berikut ini.

Fitur Baru

  • Menambahkan InlineSlider untuk wear compose. InlineSlider memungkinkan pengguna membuat pilihan dari rentang nilai. Rentang pilihan ditampilkan sebagai panel antara nilai rentang minimum dan maksimum, yang memungkinkan pengguna memilih satu nilai. (If0148)

  • Lihat Compose baru untuk Codelab WearOS.

Perubahan API

  • Macrobenchmark kini memiliki minSdkVersion 23. (If2655)

Perbaikan Bug

  • Memperbarui penanganan transisi di SwipeDismissableNavHost in a SideEffect (I04994, b/202863359)
  • Memperbarui penanganan transisi di SwipeDismissableNavHost (I1cbe0, b/202863359)

Versi 1.0.0-alpha09

27 Oktober 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha09, androidx.wear.compose:compose-material:1.0.0-alpha09, dan androidx.wear.compose:compose-navigation:1.0.0-alpha09 dirilis. Versi 1.0.0-alpha09 berisi commit berikut ini.

Fitur Baru

  • Kami telah meluncurkan Pratinjau Developer Compose di Wear OS - lihat postingan blog kami yang meninjau composable utama dan link ke referensi lebih lanjut untuk mulai menggunakannya.

Perubahan API

  • Kami telah menambahkan dukungan bagi developer agar dapat menyesuaikan semua warna pada tema Warna Desain Material Wear. (I4759b, b/199754668)

Perbaikan Bug

  • Menambahkan contoh SwipeToDismissBox yang mempertahankan status (Ibaffe)
  • Menambahkan link ke panduan developer.android.com dari KDocs untuk CurvedText, TimeText, dan SwipeToDismissBox. (I399d4)
  • SwipeDismissableNavHost kini menampilkan jika tidak ada tujuan saat ini (menunjukkan bahwa NavGraph tidak di-build dengan fungsi utilitas wear.compose.navigation.composable) (I91403)
  • Menambahkan dokumentasi dan contoh tambahan untuk penggunaan sumber waktu di TimeText (I4f6f0)

Versi 1.0.0-alpha08

13 Oktober 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha08, androidx.wear.compose:compose-material:1.0.0-alpha08, dan androidx.wear.compose:compose-navigation:1.0.0-alpha08 dirilis. Versi 1.0.0-alpha08 berisi commit berikut ini.

Perubahan API

  • Kami telah mengganti nama properti body AppCard dan TitleCard menjadi content dan memindahkannya ke akhir daftar properti untuk memungkinkan properti disediakan sebagai lambda akhir. Kami juga mengganti nama bodyColor menjadi contentColor agar konsisten dengan nama slot yang baru. (I57e78)

Perbaikan Bug

  • Menambahkan link ke panduan developer.android.com dari KDocs untuk komponen tombol, kartu, chip, tema, indikator posisi, dan kolom lambat penskalaan. (I22428)
  • Memperbaiki SwipeToDismissBox WearOS yang terkadang tidak menangani gestur geser. (I9387e)
  • Menambahkan sampel untuk Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip, SplitToggleChip (Iddc15)
  • Menambahkan pengujian performa microbenchmark untuk Card, Chip, ToggleChip, TimeText, dan ScalingLazyColumn. (If2fe9)

Versi 1.0.0-alpha07

29 September 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha07, androidx.wear.compose:compose-material:1.0.0-alpha07, dan androidx.wear.compose:compose-navigation:1.0.0-alpha07 dirilis. Versi 1.0.0-alpha07 berisi commit berikut ini.

Fitur Baru

  • Menambahkan komponen CurvedText dalam material, komponen yang memungkinkan developer menulis teks melengkung dengan mudah mengikuti kelengkungan lingkaran (biasanya di tepi layar melingkar). (I19593)

Perubahan API

  • Menambahkan pengujian untuk TimeText (Idfead)
  • Mengubah ArcPaddingValues menjadi antarmuka. (Iecd4c)
  • Menambahkan animasi ke SwipeToDismissBox (I9ad1b)
  • Menambahkan parameter hasBackground ke SwipeToDismissBox API sehingga gestur geser dapat dinonaktifkan saat tidak ada konten latar belakang yang ditampilkan. (I313d8)
  • rememberNavController() sekarang menggunakan kumpulan Navigator instance opsional yang akan ditambahkan ke NavController yang dikembalikan untuk mendukung Navigator opsional lebih baik seperti dari Accompanist Navigation Material. (I4619e)
  • Mereferensikan NamedNavArgument dari navigation-common dan menghapus salinan dari wear.compose.navigation. (I43af6)

Perbaikan Bug

  • Memperbaiki kegagalan pengujian CurvedRow di perangkat yang lebih kecil. (If7941)
  • Memperbaiki kemungkinan berkedip pada CurvedRow saat konten diperbarui, dan memastikan baris melengkung diukur ulang (Ie4e06)
  • ChipDefaults.gradientBackgroundChipColors() telah diupdate sesuai perubahan Spesifikasi UX. Gradien sekarang dimulai dengan MaterialTheme.colors.primary dengan alfa 32,5% dan diakhiri dengan MaterialTheme.colors.surface dengan alfa @ 0% di atas latar belakang MaterialTheme.colors.surface @ 75% alfa. (Id1548)
  • Kami telah memperbarui warna ToggleChips saat dalam status yang dipilih agar cocok dengan panduan Spesifikasi UX Desain Material Wear terbaru. Jika ToggleChips terpilih sekarang memiliki latar belakang gradasi dari MaterialTheme.color.surface @ 0% alfa, kiri atas, ke MaterialTheme.color.primary @ 32% alfa, kanan bawah, dengan latar belakang MaterialTheme.color.surface @ 75% alfa. Hasilnya, perbedaan menjadi lebih samar antara yang dicentang dan tidak dicentang untuk ToggleChip. (Idd40b)

Versi 1.0.0-alpha06

15 September 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha06, androidx.wear.compose:compose-material:1.0.0-alpha06, dan androidx.wear.compose:compose-navigation:1.0.0-alpha06 dirilis. Versi 1.0.0-alpha06 berisi commit berikut ini.

Fitur Baru

  • Kami telah menambahkan composable aplikasi tingkat atas ke Scaffold yang memberikan struktur untuk menangani posisi PositionIndicators (seperti Scroll atau Volume), area di bagian atas layar untuk menampilkan waktu dan status aplikasi, serta mendukung Vignette untuk memburamkan tepi atas dan bawah layar untuk konten yang dapat di-scroll. Area utama Scaffold adalah tempat konten aplikasi berada. (I5e0bf)
  • Menambahkan implementasi TimeText untuk Wear Compose (I5654c)

Library Navigasi Wear Compose

  • Kami telah menambahkan rilis pertama library Navigasi Wear Compose, yang menyediakan integrasi antara library Navigasi Wear Compose dan Androidx. Ini memberikan cara sederhana untuk menavigasi di antara fungsi @Composable sebagai tujuan di aplikasi Anda.

  • Rilis awal ini menyediakan:

    • Composable SwipeDismissableNavHost yang menghosting grafik navigasi dan memberikan navigasi mundur melalui gestur geser
    • Ekstensi NavGraphBuilder.composable untuk membantu pembuatan grafik navigasi
    • rememberSwipeDismissableNavController() untuk memungkinkan pengangkatan status
  • Contoh penggunaan saat kami membuat dua layar dan menavigasi di antara layar tersebut:

    val navController = rememberSwipeDismissableNavController()
    SwipeDismissableNavHost(
        navController = navController,
        startDestination = "start"
    ) {
        composable("start") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Button(onClick = { navController.navigate("next") }) {
                    Text("Go")
                }
            }
        }
        composable("next") {
            Column(
                horizontalAlignment = Alignment.CenterHorizontally,
                verticalArrangement = Arrangement.Center,
                modifier = Modifier.fillMaxSize(),
            ) {
                Text("Swipe to go back")
            }
        }
    }
    
  • Navigasi Wear Compose dikemas sebagai library terpisah sehingga aplikasi WearCompose sederhana yang mengimplementasikan navigasi yang diluncurkan secara langsung dan mandiri tidak perlu bergantung pada library Navigasi Androidx.

Perubahan API

  • Memperbarui SwipeDismissableNavHost untuk mendukung rememberSaveable dengan menetapkan identitas kunci untuk latar belakang dan konten (I746fd)
  • Kami telah menambahkan adaptor PositionIndicator yang dapat menangani LazyListState (I21b88)
  • Memperbarui SwipeToDismissBox untuk mendukung rememberSaveable (Ie728b)
  • Kami telah menambahkan dukungan reverseLayout ke ScalingLazyColumn. Tindakan ini memungkinkan pembatalan arah scroll dan tata letak (I9e2fc)
  • performGesture dan GestureScope tidak digunakan lagi, telah diganti dengan performTouchInput dan TouchInjectionScope. (Ia5f3f, b/190493367)
  • Kami telah mengganti nama VignetteValue menjadi VignettePosition dan mengganti nama VignetteValue.Both menjadi VignettePosition.TopAndBottom. (I57ad7)
  • Kami telah mengganti nama ScalingLazyColumnState menjadi ScalingLazyListState, ScalingLazyColumnItemInfo menjadi ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo menjadi ScalingLazyListLayoutInfo, dan ScalingLazyColumnScope menjadi ScalingLazyListScope jika nantinya kami memutuskan untuk menambahkan implementasi ScalingLazyRow. (I22734)

Perbaikan Bug

  • Memperbarui dokumentasi CompactChip untuk mendeskripsikan hal yang terjadi jika ikon atau label tidak disediakan. (I4ba88)
  • Kami telah melakukan beberapa penyesuaian pada komponen kartu Wear. (I6b3d0)
    1. Spasi TitleCard di antara Judul dan Isi dikurangi dari 8.dp menjadi 2.dp.
    2. Font header TitleCard diubah dari body menjadi title3.
    3. Gradien latar belakang kartu diubah agar latar belakang tampak lebih gelap.

Versi 1.0.0-alpha05

1 September 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha05 dan androidx.wear.compose:compose-material:1.0.0-alpha05 dirilis. Versi 1.0.0-alpha05 berisi commit berikut ini.

Perubahan API

  • Menandai ArcPaddingValues sebagai @Stable (I57deb)
  • ScalingLazyColumnState sekarang mengimplementasikan antarmuka ScrollableState yang memberikan akses terprogram kepada developer untuk men-scroll komponen. (I47dbc)

Perbaikan Bug

  • Kami telah mengurangi spasi antara Ikon dan Teks di Chip dan ToggleChip agar selaras dengan update pada Spesifikasi UX. (I83802)

Versi 1.0.0-alpha04

18 Agustus 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha04 dan androidx.wear.compose:compose-material:1.0.0-alpha04 dirilis. Versi 1.0.0-alpha04 berisi commit berikut ini.

Fitur Baru

  • Menambahkan SwipeToDismissBox dan pengubah yang dapat digeser yang dapat digunakan untuk mendukung gestur geser dari kiri ke kanan untuk menutup. Meskipun komponen navigasi terpisah, hal ini diharapkan akan digunakan untuk keluar dari satu layar dan membuka layar lainnya. Menambahkan pengujian integrasi ke demo geser-untuk-menutup. (I7bbaa)
  • Kami telah menambahkan antarmuka ScalingLazyColumnItemInfo dan ScalingLazyColumnLayoutInfo ke class ScalingLazyColumnState agar developer dapat mengetahui posisi dan ukuran item yang sebenarnya di ScalingLazyColumn setelah penskalaan diterapkan. Kami juga telah memperbaiki bug dengan cara penskalaan dihitung saat padding konten 'top' diterapkan pada ScalingLazyColumn. (I27c07)

Perubahan API

  • Menambahkan class CurvedTextStyle untuk menentukan Opsi gaya teks melengkung. Mirip dengan TextStyle, tetapi sekarang hanya mendukung warna, fontSize, dan latar belakang. Opsi gaya lainnya akan ditambahkan di masa mendatang. (I96ac3)
  • Kami telah menambahkan antarmuka ScalingLazyColumnItemInfo dan ScalingLazyColumnLayoutInfo ke class ScalingLazyColumnState agar developer dapat mengetahui posisi dan ukuran item yang sebenarnya di ScalingLazyColumn setelah penskalaan diterapkan. Kami juga telah memperbaiki bug dengan cara penskalaan dihitung saat padding konten 'top' diterapkan pada ScalingLazyColumn. (I27c07)
  • Menambahkan @ExperimentalWearMaterialApi ke enum SwipeDismissTarget, bagian dari SwipeToDismissBox API. (I48b5e)

Perbaikan Bug

  • Menambahkan materi pengujian untuk SwipeToDismissBox (I9febc)

Versi 1.0.0-alpha03

4 Agustus 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha03 dan androidx.wear.compose:compose-material:1.0.0-alpha03 dirilis. Versi 1.0.0-alpha03 berisi commit berikut ini.

Perubahan API

  • Menambahkan komponen CurvedText, yang memungkinkan developer mudah menulis teks mengikuti lengkungan lingkaran (biasanya di tepi layar melingkar) (Id1267)
  • Kami telah mengganti nama CardDefaults.imageBackgroundPainter() menjadi CardDefaults.imageWithScrimBackgroundPainter() untuk memperjelas bahwa gambar latar digambar scrim di atasnya. (I53206)
  • Menambahkan komponen ScalingLazyColumn yang menyediakan komponen daftar untuk Wear Material yang memberikan tampilan mata ikan dengan ukuran konten daftar yang diperkecil dan menjadi transparan saat diskalakan ke tepi komponen. (I7070c)

Perbaikan Bug

  • Kami mengubah warna default konten appName di AppCard sebagai respons terhadap update Spesifikasi UX. Warna default untuk appName sekarang adalah MaterialTheme.colors.onSurfaceVariant. Selain itu, menambahkan deskripsi dokumen parameter yang tidak ada untuk slot judul. (Ic4ad1)

Versi 1.0.0-alpha02

21 Juli 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha02 dan androidx.wear.compose:compose-material:1.0.0-alpha02 dirilis. Versi 1.0.0-alpha02 berisi commit ini.

Fitur Baru

  • Menambahkan class CurvedRow baru untuk menata komponen pada arc (I29941)
  • Menambahkan jenis kartu baru untuk penggunaan dalam aplikasi (TitleCard), serta tambahkan dukungan agar gambar menjadi latar belakang Kartu untuk menekankan kontennya (I53b0f)

Perubahan API

  • Menambahkan dukungan untuk perataan radial ke CurvedRow (mirip dengan perataan vertikal dalam satu baris) (Id9de5)
  • Menambahkan class baru CurvedRow untuk menata composable pada arc (I29941)
  • Menambahkan jenis kartu baru untuk penggunaan dalam aplikasi (TitleCard), serta tambahkan dukungan agar gambar menjadi latar belakang Kartu untuk menekankan kontennya (I53b0f)
  • Menambahkan ikon beralih (kotak centang, tombol akses, dan tombol pilihan) ke ToggleChipDefaults untuk memudahkan developer mengonfigurasi ToggleChip dan SplitToggleChips (I7b639)
  • Padding konten awal dan akhir untuk Chip telah diperbarui sehingga konsisten 14.dp, terlepas dari apakah Chip memiliki ikon atau tidak (sebelumnya 12.dp jika ada ikon dan 14.dp jika tidak) (I34c86)

Perbaikan Bug

  • Menambahkan pengujian untuk CurvedRow (I93cdb)
  • Mengikat dependensi Wear Compose ke Compose 1.0.0-rc01. (Ie6bc9)
  • Mengubah penanganan lukisan gambar latar di Kartu dan Chip sehingga gambar dipangkas, bukan diregangkan untuk mempertahankan proporsi gambar. (I29b41)
  • Menambahkan lebih banyak demo dan pengujian integrasi untuk Button dan ToggleButton. (5e27ed2)
  • Menambahkan lebih banyak pengujian Chip untuk mencakup warna konten untuk imageBackgroundChips (Ia9183)

Versi 1.0.0-alpha01

1 Juli 2021

androidx.wear.compose:compose-foundation:1.0.0-alpha01 dan androidx.wear.compose:compose-material:1.0.0-alpha01 dirilis. Versi 1.0.0-alpha01 berisi commit ini.

Fitur Baru

Wear Compose adalah library berbasis Kotlin Compose yang mendukung desain Wear Material, ekstensi Desain Material untuk perangkat wearable Wear OS. Rilis alfa pertama ini berisi implementasi awal dan fungsional dari hal berikut:

  • Tema material - mengonfigurasi warna, tipografi, dan bentuk secara konsisten di seluruh komponen yang digunakan dari library ini.
  • Chip, CompactChip - chip berbentuk stadion dan tersedia variasi untuk mengambil ikon, label, dan konten label sekunder.
  • - ToggleChip, SplitToggleChip - jenis chip khusus yang menyertakan slot untuk ikon beralih dua status seperti tombol pilihan atau kotak centang. Selain itu, SplitToggleChip memiliki dua area yang dapat diketuk, yang satu dapat diklik dan yang satunya dapat dialihkan.
  • Tombol, CompactButton - tombol berbentuk lingkaran, dengan slot konten tunggal untuk ikon atau teks minimal (maksimum 3 karakter).
  • ToggleButton - tombol yang mengaktifkan atau menonaktifkan tindakan, dengan slot tunggal untuk ikon atau teks minimal (maksimum 3 karakter).
  • Kartu, AppCard - berbentuk persegi panjang dengan sudut membulat, menawarkan slot untuk konten seperti waktu, judul, isi dan ikon aplikasi.

Rilis di masa mendatang akan memperluas dukungan penambahan serangkaian Widget untuk alat pilih, penggeser, daftar, indikator halaman, dialog, indikator scroll rsb, toast, dan lainnya untuk Desain Material Wear.

Selain itu, dukungan akan disediakan untuk fitur Khusus Wearable lainnya seperti tata letak dan teks melengkung, serta petunjuk untuk memudahkan developer membuat aplikasi/overlay Wearable.

Wear Compose Material dirancang dengan prinsip yang sama seperti Compose Material, meskipun ditargetkan di perangkat wearable. Library Wear Compose Material harus digunakan sebagai pengganti library Compose Material saat membuat perangkat Wearable.

Kedua library “Material” harus dianggap sama-sama eksklusif dan tidak boleh dicampur dalam aplikasi yang sama. Jika developer menyertakan library Compose Material dalam dependensinya, hal ini akan menandakan bahwa a) ada komponen yang hilang dari library Wear Compose Material, harap beri tahu kami apa yang Anda butuhkan, atau b) ada penggunaan komponen yang tidak kami rekomendasikan untuk Perangkat Wearable.