wear protolayout
Update Terbaru | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
---|---|---|---|---|
6 Maret 2024 | 1.1.0 | - | - | 1.2.0-alpha01 |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada wear-protolayout, 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 { // Use to implement support for Wear ProtoLayout Expressions implementation "androidx.wear.protolayout:protolayout-expression:1.2.0-alpha01" // Use to implement support for Wear ProtoLayout implementation "androidx.wear.protolayout:protolayout:1.2.0-alpha01" // Use to utilize components and layouts with Material design in your ProtoLayout implementation "androidx.wear.protolayout:protolayout-material:1.2.0-alpha01" }
Kotlin
dependencies { // Use to implement support for Wear ProtoLayout Expressions implementation("androidx.wear.protolayout:protolayout-expression:1.2.0-alpha01") // Use to implement support for Wear ProtoLayout implementation("androidx.wear.protolayout:protolayout:1.2.0-alpha01") // Use to utilize components and layouts with Material design in your ProtoLayout implementation("androidx.wear.protolayout:protolayout-material:1.2.0-alpha01") }
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.2
Versi 1.2.0-alpha01
6 Maret 2024
androidx.wear.protolayout:protolayout-*:1.2.0-alpha01
dirilis. Versi 1.2.0-alpha01 berisi commit ini.
Fitur Baru
- Elemen
ProtoLayout Arc
kini memiliki opsi untuk menambahkanArcDirection
(Clockwise
,Counterclockwise
, atauNormal
) ke elemen tersebut. Menambahkan perilaku ini keArc
,ArcLine
, atauArcText
akan memperbaiki perilakunya di tata letak RTL. (I90699) EdgeContentLayout
telah diperbarui dengan penyetelsetResponsiveContentInsetEnabled
baru untuk mencapai keselarasan yang lebih baik dengan panduan UX, konsistensi dalam Kartu dengan menempatkan label utama di tempat tetap di atas dan inset responsif untuk label. (I60175)- Kami telah menambahkan
PrimaryLayout.setResponsiveContentInsetEnabled
yang menambahkan inset responsif ke label utama, label sekunder, dan chip bawah dalam tata letak ini, untuk menghindari konten tersebut keluar dari tepi layar. (I0c457) - Menambahkan metode untuk menghapus margin luar dari
CircularProgressIndicator
sehingga dapat digunakan sebagai komponen yang lebih kecil. (I55c06)
Perubahan API
- Perender kartu kini mengecualikan padding font di semua elemen teks secara default, tanpa opsi untuk menyertakannya. (I3e300)
Perbaikan Bug
- Memperbaiki masalah perataan Teks saat elipsis, spasi huruf, dan rata tengah digunakan pada Text. (I716c7)
- Tambahkan solusi untuk masalah gambar busur ski. (I08f09)
- Memperbaiki arah menggambar
ArcLine
untuk tata letak RTL. (I6c141)
Versi 1.1
Versi 1.1.0
7 Februari 2024
androidx.wear.protolayout:protolayout-*:1.1.0
dirilis. Versi 1.1.0 berisi commit ini.
Perubahan penting sejak versi 1.0.0
- Dukungan gradien dan representasi panjang yang lebih baik dari 360 derajat di
ArcLine
. - Pemformatan tanggal-waktu mendukung zona waktu yang berbeda untuk jenis data dinamis.
- Opsi pembuatan elips dan pengubahan ukuran teks yang lebih baik, untuk menangani teks yang terpotong.
- Spacer mendukung dimensi yang diperluas dengan bobot opsional.
- Anotasi persyaratan versi skema ke semua
ProtoLayout
API. - Memperluas area target ke elemen
Clickable
apa pun hingga ukuran 48 dp x 48 dp, untuk memenuhi persyaratan aksesibilitas. - Padding font dinonaktifkan secara default dan merupakan satu-satunya perilaku di semua elemen Teks dan komponen Material yang berisi teks.
Perubahan lainnya
- Untuk melihat rangkaian perubahan yang lebih lengkap yang diperkenalkan di versi 1.1.0, lihat catatan rilis beta01.
Versi 1.1.0-rc01
24 Januari 2024
androidx.wear.protolayout:protolayout-*:1.1.0-rc01
dirilis. Versi 1.1.0-rc01 berisi commit ini.
Perbaikan Bug
PlatformTimeUpdateNotifierImpl
tick segera setelah mengaktifkan update. (I77145)CircularProgressIndicator
telah diperbaiki untuk tata letak RTL. Mulai sekarang, semuanya akan berputar searah jarum jam dalam semua kondisi. (I95ee3)- Tambahkan solusi untuk masalah gambar busur ski. (I08f09)
Versi 1.1.0-beta01
10 Januari 2024
androidx.wear.protolayout:protolayout-*:1.1.0-beta01
dirilis. Versi 1.1.0-beta01 berisi commit ini.
Fitur Baru
Rilis Wear ProtoLayout 1.1.0-beta01 menunjukkan bahwa rilis library ini memiliki fitur lengkap dan API dikunci (kecuali jika ditandai sebagai eksperimental). Wear ProtoLayout 1.1 menyertakan fungsi dan API baru berikut:
ArcLine
kini mendukung gradien dengan menambahkanBrush
denganSweepGradient
dan memiliki bayangan di bagian batas untuk menunjukkan panjang yang lebih besar dari 360 derajat dengan lebih baik dengan menambahkanShadow
padaStrokeCap
yang ada.DynamicInstant
memiliki dukungan untuk pemformatan tanggal-waktu yang dikategorikan.DynamicInstant
danDynamicDuration
dapat digunakan sebagai jenis data status atau platform.- Fitur pengubahan ukuran otomatis untuk ukuran teks yang memungkinkan penyetelan beberapa ukuran ke
FontStyle.setSizes
dengan ukuran Teks akan otomatis diskalakan berdasarkan ruang yang dimilikinya di dalam induk. Selain itu, kami meningkatkan opsi elipsis untuk teks yang melebihi batas dengan menambahkanTEXT_OVERFLOW_ELLIPSIZE
dan menghentikan penggunaanTEXT_OVERFLOW_ELLIPSIZE_END
. Spacer
kini mendukung dimensi yang diperluas dengan bobot opsional. Untuk mem-buildExpandedDimensionProp
, kami telah menambahkan metode bantuanDimensionBuilders.weight
.- Dukungan untuk menyembunyikan dan memperlihatkan elemen tata letak secara dinamis dengan
Modifier.visible
. Ini termasuk memiliki nilai dinamis diBoolProp
. - Semua
ProtoLayout
API kini memiliki anotasi persyaratan versi skema dan versi dapat diperiksa sebelum memanggil API yang lebih baru. - Area target setiap elemen yang memiliki
Clickable
kini diperluas hingga setidaknya 48x48 di perender untuk mendukung persyaratan aksesibilitas dengan lebih baik. - Setelah komponen Material dan inisiatif Compose lainnya, kami kini menonaktifkan padding font secara default di semua elemen
Text
. Selain itu,AndroidTextStyle
dan penyetel terkait telah dihapus dari API publik. dengan perbaikan bug berikut: - Menambahkan penyetel untuk memosisikan konten tepi di
EdgeContentLayout
sehingga dapat diposisikan sebelum konten lain. - Secara konsisten menampilkan pengecualian saat menemukan nilai enum yang tidak dikenal.
- Membatalkan hasil ekspresi jika menghasilkan nilai numerik yang tidak valid (NaN atau tak terbatas) atau menampilkan
ArithmeticException
.
Perubahan API
- Update pada
SweepGradient
API untuk memungkinkan penerimaan salah satu warna atauColorStops
di konstruktor. (I6676f)
Perbaikan Bug
- Menambahkan API yang dibatasi dan dukungan perender untuk menyetel arah penggambaran elemen busur. (Idef5a)
RoundMode
ditetapkan secara default keFloor
dalamFloatToInt32Node
jika tidak ditentukan. Node akan tetap menampilkan pengecualian jikaRoundMode
yang diberikan tidak dikenal. (I1b2d8)
Versi 1.1.0-alpha04
13 Desember 2023
androidx.wear.protolayout:protolayout-*:1.1.0-alpha04
dirilis. Versi 1.1.0-alpha04 berisi commit ini.
Fitur Baru
- Class
VersionInfo
tidak mengimplementasikan antarmukaComparable
. (I8d13c) - Perender sekarang mendukung opsi
TEXT_OVERFLOW_ELLIPSIZE
. (I7f085)
Perubahan API
- Opsi tambahan teks
TEXT_OVERFLOW_ELLIPSIZE_END
kini tidak digunakan lagi. Gunakan API baruTEXT_OVERFLOW_ELLIPSIZE
dengan perilaku yang sangat mirip. (I822d8) - Setelah komponen Material dan inisiatif Compose lainnya, kami kini menonaktifkan padding font secara default pada semua elemen Text. Selain itu,
AndroidTextStyle
dan penyetel terkait telah dihapus dari API publik. (I79094, Ib0b03, I32959, Iaf7d5, Ifa298, I0a4ae, Ida9d3) Modifier.hidden
diganti denganModifier.visible
(I56902)FontStyle#setSizes
sekarang menerima argumen int, bukanSpProp
. (I02b37)
Perbaikan Bug
- Menampilkan pengecualian saat menemukan nilai enum Undefined atau Tidak Dikenal. (I9d2cf)
- Faktorkan ulang
DynamicTypeBindingRequest
. (I27b57) - Membatalkan hasil ekspresi jika menghasilkan nilai numerik yang tidak valid (NaN atau tak terbatas) atau menampilkan
ArithmeticException
. (I681ae)
Versi 1.1.0-alpha03
29 November 2023
androidx.wear.protolayout:protolayout-*:1.1.0-alpha03
dirilis. Versi 1.1.0-alpha03 berisi commit ini.
Fitur Baru
- Menambahkan dukungan eksperimental untuk menyembunyikan/memperlihatkan elemen tata letak secara dinamis (I64a78)
- Menambahkan dukungan nilai dinamis ke
BoolProp
(I2fe96) - Menambahkan anotasi persyaratan versi skema ke
ProtoLayout
API (I0f03c) - Memperluas API dengan opsi baru di
TextOverflow
untuk membuat elipsis Teks dalam penampung induk tetap meskipun baris maksimum tidak tercapai (tetapi tidak ada cukup ruang untuk Teks). (I110a9) - Menambahkan metode helper
DimensionBuilders.weight
untuk mem-buildExpandedDimensionProp
dengan bobot. (I4f72b) DynamicInstant
danDynamicDuration
dapat digunakan sebagai jenis data status atau platform. (I6819f)
Perubahan API
- Mengupdate API untuk menyembunyikan
DynamicZonedDateTime
dan memindahkan semua operasinya keDyanamicInstant
(I34b94) - Spacer kini mendukung dimensi yang Diperluas untuk lebar/tinggi. (Ie7c94)
- Mendukung ekstensi area target klik di Perender (I39c79)
Versi 1.1.0-alpha02
15 November 2023
androidx.wear.protolayout:protolayout-*:1.1.0-alpha02
dirilis. Versi 1.1.0-alpha02 berisi commit ini.
Fitur Baru
- Menambahkan kolom
ArcLine
StrokeCap
Shadow
ke API. (I830ec) - Memperluas API agar dapat menentukan lebar atau tinggi Spasi yang diperluas. (I757ca)
- Kami telah menambahkan API eksperimental untuk menskalakan ukuran teks secara otomatis berdasarkan ruang yang dimilikinya di dalam induk. (Ibbe63)
- Mendukung ukuran minimum yang dapat diklik (I178e3)
- Menambahkan dukungan perender untuk
StrokeCap
Shadow
. (I48b17) - Menambahkan dukungan perender untuk Gradien Sapu di
ArcLine
. (I4d5bb)
Versi 1.1.0-alpha01
18 Oktober 2023
androidx.wear.protolayout:protolayout-*:1.1.0-alpha01
dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Fitur Baru
- Menambahkan opsi kuas ke
Arcline
, dengan dukungan untukSweepGradient
. (Ie7ce3) - Menambahkan dukungan untuk pemformatan tanggal-waktu yang dikategorikan. (Ibfae0)
- Menambahkan proto dan Wrapper java yang diperlukan untuk pemformatan tanggal-waktu yang dikategorikan. (I97126)
- Menambahkan pengambil untuk membaca kembali nilai yang disimpan dalam
DynamicDataValue
. (Ie6cea) - Menambahkan penyetel untuk memosisikan konten tepi di
EdgeContentLayout
sehingga dapat diposisikan sebelum konten lain. (Ie8e8a)
Perbaikan Bug
- Memperbaiki masalah saat ekspresi dengan pendaftaran sumber data beberapa kali tidak diperbarui secara langsung. (I8e1a8)
- Memperbaiki bug untuk memusatkan elemen root selama update diff. (Ie48f7)
- Nilai batasan tata letak yang tidak ditetapkan (atau kosong) tidak akan diabaikan lagi. (Ibc785)
- Mengurangi penundaan antara tata letak menjadi terlihat dan node pipeline-nya diinisialisasi. (I38d4e)
Versi 1.0
Versi 1.0.0
9 Agustus 2023
androidx.wear.protolayout:protolayout-*:1.0.0
dirilis. Versi 1.0.0 berisi commit ini.
Fitur utama 1.0.0
Library ProtoLayout memperkenalkan API untuk membuat tata letak dan ekspresi yang dapat digunakan di berbagai platform Wear OS. Misalnya, library Kartu menggunakan API ini untuk mendukung data binding platform (untuk update data kartu yang lebih cepat) dan animasi.
Versi 1.0.0-rc01
26 Juli 2023
androidx.wear.protolayout:protolayout-*:1.0.0-rc01
dirilis. Versi 1.0.0-rc01 berisi commit ini.
- Untuk bermigrasi dari Kartu ke
ProtoLayout
, ikuti petunjuknya di sini.
Perubahan API
- Kami telah menghapus metode
setLayoutConstraintForDynamicAnchorAngle
dangetLayoutConstraintForDynamicAnchorAngle
dari elemen Arc. Metode ini tidak sengaja ditambahkan dan tidak berpengaruh pada tata letak yang disediakan. (If7d01) - Kami telah membatasi kedalaman maksimum yang dapat dimiliki tata letak
ProtoLayout
hingga 30LayoutElements
bertingkat. (I8a74b)
Perbaikan Bug
- Kami telah menambahkan pemeriksaan yang akan ditampilkan jika
DynamicColor
telah ditetapkan untukSpanText
. (I0e5bc) - Diperjelas bahwa unit sumber data
DAILY_CALORIES
adalah kkal. (Iaa785)
Versi 1.0.0-beta01
21 Juni 2023
androidx.wear.protolayout:protolayout-*:1.0.0-beta01
dirilis. Versi 1.0.0-beta01 berisi commit ini.
Fitur Baru
- Mengizinkan pengaturan jam untuk pengujian binding waktu. (I05622)
Perubahan API
PlatformDataReceiver.onData()
danStateBuilders.Builder.addKeyToValueMapping
kini menerima pemetaan keamanan jenisDynamicDataKey
keDynamicDataValue
, bukan generik yang tidak aman. Artinya,DynamicDataValue
sekarang diketik denganDynamicType
-nya. KonstantaHEART_RATE_ACCURACY_X
dipindahkan ke rootPlatformHealthSources
, agar cocok dengan penentuan posisi konstanta Android lainnya. Konstanta intHEART_RATE_ACCURACY_X
sekarang digunakan langsung diDynamicHeartRateAccuracy.constant()
danDynamicHeartRateAccuracy.dynamicDataValueOf()
, bukan konstanta nilai. (I82ff5)- Class
PlatformHealthSources.Constants
tidak sengaja dibuat instance-nya. Hal ini telah diperbaiki sekarang. (Icb849) PlatformTimeUpdateNotifier#setReceiver
kini menerimaRunnable
, bukan fungsiSupplier
danExecutor
untuk memberi tahu. (I9d938)- Kami telah mengubah jenis parameter di
PlatformTimeUpdateNotifier#setReceiver
dariCallable
menjadiSupplier
. (I664bf) CompactChip
danTitleChip
kini mendukung penambahan ikon. (I5a01e)
Perbaikan Bug
- Memperbarui pesan Prop dengan kolom dinamis untuk menggunakan salah satu (I81739)
- Menggunakan kembali implementasi penyetel untuk overload yang memiliki penyetel (Ied70c)
- Merekam sidik jari dengan benar dalam penyetel yang memiliki overload (I86ed2)
Versi 1.0.0-alpha11
7 Juni 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha11
dirilis. Versi 1.0.0-alpha11 berisi commit berikut ini.
Fitur Baru
- Kami telah menambahkan
PlatformDataKey
untuk akurasi detak jantung. (I7f9b8)
Perubahan API
- Ganti nama
StateBuilders#getIdToValueMapping
menjadigetKeyToValueMapping
, lalu ubah jenis nilai yang ditampilkan menjadiMap<<AppDataKey<?>,DynamicDataValue>
. (Iaa7ae) - Menjadikan
StateStore
sebagai class terakhir (I408ca) - Antarmuka
TimeGateway
telah diganti denganPlatformTimeUpdateNotifier
di libraryprotolayout-expression-pipeline
yang memberikan frekuensi yang diinginkan untuk memperbarui data waktu. (I60869) - Mengganti nama
register
/unregisterForData
diPlatformDataProvider
menjadiset
/clearReceiver
(I14b02) - Di Material Text,
getExcludeFontPadding
diganti namanya menjadihasExcludeFontPadding
. (Iea01d) - Penyetel untuk menyelaraskan label secara sempurna ditambahkan ke semua komponen chip. Semua chip kini memiliki target min yang dapat diketuk. (I8ae92)
LayoutDefaults#BUTTON_MAX_NUMBER
diganti namanya menjadiMAX_BUTTONS
. (I84788)DAILY_DISTANCE
diganti namanya menjadiDAILY_DISTANCE_M
. (I4f758)
Perbaikan Bug
- Memperbarui dokumen jenis Prop untuk memperjelas alasan nilai statis diterapkan. Tentukan nilai default yang digunakan jika nilai statis tidak diberikan. (I155aa)
- Namespace
PlatformDataKey
harus mengikuti penamaan gaya Java. (I47bda)
Versi 1.0.0-alpha10
24 Mei 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha10
dirilis. Versi 1.0.0-alpha10 berisi commit berikut.
Fitur Baru
- Menambahkan
AppDataKey
untuk mengakses status aplikasi yang dikirim; MenambahkanPlatformDataKey
untuk mengakses data platform; Tambahkan dukungan namespace diStateStore
. (I7985e) - Mendukung operasi
Equal
danNotEqual
untukDynamicBool
. (I6a0c1)
Perubahan API
- Class
FontStyles
sekarang sudah final (Iaa2ea) LayoutElementBuilders#FontStyles
tidak digunakan lagi. Harap gunakanandroidx.wear.protolayout.Typography
atau buatFontStyle
Anda sendiri. (IC929b)- Menyembunyikan antarmuka bertingkat
Action#Builder
dari antarmukaAction
. Implementasi Builder telah disediakan oleh classLoadAction
danLaunchAction
. (I1d70c) - Izinkan penggunaan
DynamicFloat
denganFloatProp
. Perhatikan bahwaFloatProp
tidak memerlukan batasan tata letak karena tidak digunakan sebagai properti perubahan tata letak. (I286ac) - Tindakan
LoalAction
danSetStateAction
dihapus karena belum benar-benar didukung. (I5d6a6) - Menambahkan dukungan format ARGB_8888 untuk resource gambar inline. (I8a07c)
- Mengganti nama
StateEntryValue
menjadiDynamicDataValue
, dan mengupdate API status untuk menggunakanDynamicDataKey
(If1c01) - Kami membatasi jumlah entri yang diizinkan di
StateStore
untuk memastikan bahwa penggunaan memori dan waktu pembaruan status tertampung dan dikontrol dengan baik untuk setiap instanceStateStore
. Akibatnya, developer perlu memastikan bahwa mereka tidak memiliki lebih dariMAX_STATE_ENTRY_COUNT
entri di peta. Jika tidak, developer akan mendapatkanIllegalStateException
saat membuat atau memperbaruiStateStore
. (Ibadb3) - Menyembunyikan class
OnLoadTrigger
danOnConditionMetTrigger
, serta mengganti namasetTrigger
menjadisetCondition
untukOnConditionMetTrigger
. (Ibf629) - Untuk alasan performa dan kompatibilitas, perender
ProtoLayout
tidak akan mendukung rangkaian fitur lengkap dalam resourceAnimatedVectorDrawable
. Kami menandai API tersebut sebagai eksperimental hingga kami dapat menentukan set yang didukung. (IC6daf) - Menambahkan jenis dinamis untuk jarak harian, kalori harian, dan lantai harian. Kunci untuk sumber kondisi platform kini berada di bawah
PlatformHealthSources.Keys
(Ib7637) - Metode
Easing.cubicBezier
menggantikanCubicBezierEasing.Builder
. Dengan demikian, classEasingFunction
telah dihapus dan konstanta easing dari class tersebut sekarang dapat diakses langsung dari antarmukaEasing
. Selain itu,setInfiniteRepeatable
diganti denganINFINITE_REPEATABLE_WITH_RESTART
danINFINITE_REPEATABLE_WITH_REVERSE
(Ib41e7) - Terapkan
PlatformDataProvider
untuk menyediakan detak jantung dan langkah harian. AntarmukaSensorGateway
dihapus dari API publik. (I55b84) - Menambahkan
PlatformDataProvider
dan mengupdateStateStore
untuk mendaftar kePlatformDataProvider
saat kunci yang didukung penyedia diperlukan oleh node dari pipeline ekspresi. (Ib616a) SensorGateway
tidak lagiCloseable
karena tidak lagi mempertahankan status apa pun. (I6b4f7)- Mengizinkan penggunaan
FloatProp
denganDynamicFloat
untuk progres diCircularProgressIndicator
. Ini didukung untuk perender yang mendukung versi 1.2. Perender lama akan melakukan fallback kestaticValue
jika disediakan, jika tidak ke 0 (I0d91b) - Konstanta
MultiButtonLayout
telah difaktorkan ulang menjadi classLayoutDefaults.MultiButtonLayoutDefaults
yang kini berisi hal tersebut untuk ukuran tombol, bergantung pada jumlah tombol di tata letak. (I13973) - Mendukung penggunaan
StringProp
denganDynamicString
dalam Teks Material. Ini didukung untuk perender yang mendukung versi 1.2. Perender lama akan melakukan fallback ke nilai statis yang disediakan. Perbarui jenis nilai yang ditampilkanText#getText
dariString
menjadiStringProp
. (I7275b)
Versi 1.0.0-alpha09
10 Mei 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha09
dirilis. Versi 1.0.0-alpha09 berisi commit berikut ini.
Fitur Baru
- Kami telah menambahkan elemen tata letak ekstensi eksperimental. Perhatikan bahwa nilai ini tidak dapat digunakan secara default dan memerlukan ekstensi perender yang mampu memahami elemen tata letak. (I6581d)
- Menambahkan dukungan
StrokeCap
untukArcLine
. (I94951) - Menambahkan dukungan untuk operasi Instan Bersyarat. (I489a7)
- Menambahkan dukungan untuk operasi Durasi Bersyarat. (Iab469)
- Menambahkan dukungan untuk membuat durasi dari detik. (Ib5fa1)
Perubahan API
- Metode
enable/disablePlatformSource
telah dihapus dariDynamicTypeEvaluator
. Pemanggil harus bertanggung jawab atas update. (I78c6d) - Mengizinkan pembatasan ukuran jenis data yang terikat. (Ie2966)
- Menambahkan dukungan untuk deskripsi konten dinamis di
protolayout-material
. (I62c8e) - Gunakan long dan
@IntRange
untuk durasi dan penundaan di AnimationParameters. (I388b6)
Versi 1.0.0-alpha08
19 April 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha08
dirilis. Versi 1.0.0-alpha08 berisi commit ini.
Fitur Baru
AndroidTextStyle
telah ditambahkan keLayoutElementBuilders
(I8d967)- Kami telah menambahkan dukungan untuk setelan yang mengecualikan padding font di Material Text
ProtoLayout
. (I17f5d) - ARGB_8888 kini didukung untuk gambar inline. (I18c1e)
DynamicColor
kini mendukung operasionCondition
. (I10927)
Perubahan API
- Mendukung durasi kustom untuk animasi terbalik (I3251f)
- Kami telah menambahkan pengubah
SemanticDescription
. Selain itu,ContentDescription
tidak dapat diikat. (I3f1d) - Metode
DynamicBool.isFalse()
sekarang diganti denganDynamicBool.negate()
danDynamicBool.isTrue()
telah dihapus. Selain itu, nilaiDynamicFloat
NaN dan penyempitanDynamicInt32
keDynamicFloat
sekarang memunculkan hasil dinamis yang tidak valid. (I6ac1e) - Pemformat Int dan float sekarang menggunakan pola Builder. (Ieb213)
Perbaikan Bug
- Nilai statis penggantian telah dihapus dari kolom yang dapat dianimasikan. Ifcb01
DynamicTypeValueReceiver#onPreUpdate
telah dihapus. (I2dc35)- Panjang String dalam ekspresi dinamis kini dibatasi. (I4c93)
- Dependensi Gradle kini disetel dengan benar ke
api
, bukanimplementation
, jika diperlukan. (I40503)
Versi 1.0.0-alpha07
5 April 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha07
dirilis. Versi 1.0.0-alpha07 berisi commit ini.
Fitur Baru
- Menambahkan dukungan nilai dinamis ke
StringProp
(I04342) - Menandai elemen tata letak yang dapat diikat (Ia110b)
Perubahan API
sensorGateway#registerSensorGatewayConsumer
menggunakan jenis data sebagai parameter, bukan metode di Konsumen. (Icf314)ObservableStateStore
diganti namanya menjadiStateStore
. (Ieb0e2)- Menambahkan
DynamicTypeEvaluator.Builder
, bukan argumen konstruktor untuk memungkinkan lebih banyak argumen opsional, termasukObservableStateStore
yang kini secara default disetel ke penyimpanan kosong. (I6f832) - Memfaktorkan ulang urutan parameter di
DynamicTypeEvaluator
. (Ic1ba4)
Perbaikan Bug
- Menyebarkan sinyal dengan benar dari sumber sensor platform ke node downstream (I5a922)
Versi 1.0.0-alpha06
22 Maret 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha06
dirilis. Versi 1.0.0-alpha06 berisi commit ini.
Fitur Baru
- Kami telah menambahkan API eksperimental untuk menggunakan detak jantung dan langkah harian dalam ekspresi dinamis (Ifd711)
- Kami telah menambahkan dukungan untuk penundaan terbalik dan maju untuk animasi. (IC25f7)
- Kami telah menambahkan dukungan
DynamicColor
ke Batas dan Latar Belakang - Kami telah menambahkan dukungan nilai dinamis ke jenis di
DimensionBuilder
- Tata letak dan komponen dari
tiles-material
dipindahkan keprotolayout-material
Perubahan API
LoadActionListener
telah ditambahkan keProtoLayoutViewInstance
(If7806)
Perbaikan Bug
- Menambahkan
FloatNodesTest
(Id7281) - Memperbaiki error perender saat tidak dapat memuat bitmap terstruktur.
Versi 1.0.0-alpha05
8 Maret 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha05
dirilis. Versi 1.0.0-alpha05 berisi commit ini.
Fitur Baru
- Kami telah menambahkan animasi "update konten" eksperimental ke objek
Modifiers
. Animasi ini akan dipicu setiap kali elemen (dengan pengubah ini) atau salah satu turunannya berubah selama update tata letak. (bd03e5d)
Perubahan API
- Kami telah menambahkan
forwardRepeatDelayMillis
danreverseRepeatDelayMillis
keRepeatable
. Kami juga mengganti namadelayMillis
diAnimationSpec
menjadistartDelayMillis
(Ifb266) - Metode
DynamicTypeEvaluator.bind
kini menerima Executor. (I346ab) - Kami telah menambahkan metode
startEvaluation
keBoundDynamicType
untuk memicu evaluasi setelah jenis dinamis terikat. (I19908)
Perbaikan Bug
- Objek Animator akan digunakan kembali untuk animasi berikutnya dari elemen tunggal. (Ia3be9)
Versi 1.0.0-alpha04
22 Februari 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha04
dirilis. Versi 1.0.0-alpha04 berisi commit ini.
Fitur Baru
ObservableStateStore
kini memberi tahu pemroses jika sebuah tombol juga dihapus.- Kami telah menambahkan versi skema perender dan skala font ke
DeviceParameters
(yang dapat digunakan untuk membuat tata letak secara bersyarat sebagai respons terhadap versi dan setelan font yang berbeda). - Kami telah menambahkan dukungan untuk menganimasikan nilai
DynamicInt32
(I05485) - Kami telah menambahkan pemicu
OnLoad
danOnConditionalMet
. Ini dapat digunakan untuk memulai animasi yang mendukung pemicu. - Kami telah menambahkan bobot tata letak untuk dimensi yang diperluas dan ukuran minimum untuk dimensi yang digabungkan.
- Kami telah menambahkan durasi dan jenis dinamis instan. Ini dapat digunakan untuk mewakili waktu instan atau durasi dalam ekspresi dinamis.
- Kami telah menambahkan dukungan untuk
AnimatedVectorDrawable
danSeekableAnimatedVectorDrawable
sebagai resource tata letak.
Perubahan API
- Data sensor memerlukan API 29+. (I8099e)
- Kami telah menambahkan dua metode bantuan
launchAction
(untuk meluncurkan Aktivitas).
Perbaikan Bug
- Mengganti nama
set/getSpec
menjadiset/getAnimationSpec
di animasi Kartu (I3d74b)
Versi 1.0.0-alpha03
8 Februari 2023
androidx.wear.protolayout:protolayout-*:1.0.0-alpha03
dirilis. Versi 1.0.0-alpha03 berisi commit ini.
Fitur Baru
- Kami telah menambahkan
toByteArray()
danfromByteArray()
ke jenis Dinamis di library protolayout-express. - Kami telah menambahkan
toString()
ke jenis Dinamis di library protolayout-express. - Kami telah menambahkan dukungan evaluasi untuk jenis Dinamis. Class
DynamicTypeEvaluator
dari library protolayout-expression-pipeline dapat digunakan untuk mengevaluasi (dan menerima nilai yang diperbarui) untuk jenis Dinamis yang dibuat sebelumnya (DynamicString
,DynamicFloat
, …) - Jika animasi tidak dapat diputar (karena dinonaktifkan oleh evaluator atau jumlah animasi yang berjalan telah mencapai batas yang ditetapkan), nilai statis yang ditetapkan pada node yang dapat dianimasikan akan digunakan untuk mengganti animasi.
Versi 1.0.0-alpha02
25 Januari 2023
androidx.wear.protolayout:protolayout:1.0.0-alpha02
, androidx.wear.protolayout:protolayout-expression:1.0.0-alpha02
, dan androidx.wear.protolayout:protolayout-proto:1.0.0-alpha02
dirilis. Versi 1.0.0-alpha02 berisi commit berikut ini.
Fitur Baru
- Builder tata letak dari
androidx.wear.tiles:tiles
beralih keandroidx.wear.protolayout:protolayout
. Builder tata letak diandroidx.wear.tiles:tiles
tidak akan digunakan lagi dalam salah satu rilis alfa berikutnya.
Versi 1.0.0-alpha01
11 Januari 2023
androidx.wear.protolayout:protolayout-expression:1.0.0-alpha01
dan androidx.wear.protolayout:protolayout-proto:1.0.0-alpha01
dirilis. Versi 1.0.0-alpha01 berisi commit ini.
Fitur Baru
- Rilis ini memperkenalkan library baru "ProtoLayout Expression" untuk membuat ekspresi dari variabel dinamis.