Wear Compose
อัปเดตล่าสุด | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า |
---|---|---|---|---|
2 กรกฎาคม 2025 | 1.4.1 | - | 1.5.0-beta05 | - |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ใน Wear คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่คุณต้องการในไฟล์ build.gradle
สำหรับแอปหรือโมดูลของคุณ
ดึงดูด
dependencies { implementation "androidx.wear.compose:compose-foundation:1.4.1" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.4.1" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.4.1" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.4.1") // 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.4.1") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.4.1") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.4.1") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.4.1") // 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. }
ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพาบิลด์
ความคิดเห็น
ความคิดเห็นของคุณจะช่วยให้ Jetpack ทำงานได้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของเครื่องมือติดตามปัญหา
Wear Compose เวอร์ชัน 1.5
เวอร์ชัน 1.5.0-beta05
2 กรกฎาคม 2025
androidx.wear.compose:compose-*:1.5.0-beta05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta05 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- อัปเดตเอกสารเพื่อชี้แจงการใช้งาน
Modifier.edgeSwipeToDismiss
(I78cb5) - แก้ไขข้อบกพร่องที่อาจแสดงรายการที่เปิดเผยหลายรายการพร้อมกับ
SwipeToReveal
ในรายการแบบเลื่อน (I1d4f6) - ตอนนี้ระบบจะปรับขนาดรูปร่างคอนเทนเนอร์ใน
TransformingLazyColumn
เพื่อหลีกเลี่ยงการตัดเนื้อหา (I9221a) - ป้ายกำกับ
TimePicker
และDatePicker
สำหรับชั่วโมง/นาที/วินาที หรือปี/เดือน/วัน มีความหมายของส่วนหัวสำหรับโปรแกรมอ่านหน้าจอแล้ว (I77d8b) - นำการหยุดชั่วคราวระหว่างลูปใน
CircularProgressIndicator
ที่ไม่แน่นอน (Iaf0bb) ออกแล้ว - แก้ไขข้อบกพร่องของภาพเคลื่อนไหวใน
TransformingLazyColumn
เมื่อนำรายการออก (I73034) - แก้ไขการจัดการรายการยึดใน
TransformingLazyColumn
เมื่อนำรายการออก (I841a8) PickerGroup
จะเคลื่อนไหวตัวเลือกในแนวนอนเมื่อเปิดการจัดกึ่งกลางอัตโนมัติและมีการเปลี่ยนตัวเลือกที่เลือก (จัดกึ่งกลาง) (Ic82c4)
เวอร์ชัน 1.5.0-beta04
18 มิถุนายน 2025
androidx.wear.compose:compose-*:1.5.0-beta04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta04 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องของเลย์เอาต์ใน
TransformingLazyColumn
ซึ่งตอนนี้เนื้อหาที่พอดีกับหน้าจอจะจัดแนวอย่างถูกต้องจากด้านบนของหน้าจอ (I80115) - แก้ไขปัญหาเกี่ยวกับ
TransformingLazyColumn
ที่รายการด้านล่างมีการปรับขนาดอย่างไม่ถูกต้องเมื่อเลื่อนไปที่ด้านล่างสุดของรายการที่มีEdgeButton
ตอนนี้ความคืบหน้าในการเลื่อนจะใช้การไล่ระดับสีเมื่อกู้คืนเลย์เอาต์ (Iea375) TransformingLazyColumn
จะอ่านความสูงของรายการภายในเครื่องมือวาดภาพพื้นหลัง ซึ่งช่วยให้TransformationSpecs
ที่กำหนดเองสามารถใช้การมอร์ฟได้ (I022f0)SwipeToReveal
ตอนนี้จะจัดกึ่งกลางการดำเนินการที่แสดงในแนวตั้งได้อย่างถูกต้องแล้ว (I4419b)- แก้ไขข้อบกพร่องใน
SwipeToReveal
ที่ทำให้ทำงานร่วมกับการปัดเพื่อปิดอย่างถูกต้องไม่ได้ หากทั้งมุมมองและ Compose กำลังใช้งานอยู่บนหน้าจอ (I5dc0e) - แก้ไขข้อบกพร่องที่ทำให้การดำเนินการ
SwipeToReveal
มีการชดเชยแนวตั้งเมื่อเลื่อน (I29444) - ตอนนี้
AlertDialog
,ConfirmationDialog
,OpenOnPhoneDialog
และSwipeToReveal
จะปัดขึ้นระยะขอบและขนาดที่คำนวณเป็นเปอร์เซ็นต์ของขนาดหน้าจอ (I76367) ButtonDefaults.outlinedButtonBorder
จะอัปเดตตามการเปลี่ยนแปลงสถานะที่เปิด/ปิดใช้ size(If2ddd)- แก้ไขข้อบกพร่องใน
EdgeButton
ความสูงที่เกิดขึ้นในหน้าจอที่ซับซ้อนซึ่งมี Pager และScreenScaffold
(I946e3) - แก้ไขเงื่อนไขการแข่งขันที่อาจทำให้ภาพเคลื่อนไหวของตัวยึดตำแหน่งหยุดทำงาน (I53530)
- ปรับปรุงประสิทธิภาพ
HorizontalPageIndicator
และVerticalPageIndicator
โดยการวาดลงใน Canvas (Ifae1e) - ปรับรูปร่างของ EdgeButton เพื่อให้การเปลี่ยนระหว่างจุดไข่ปลาและวงกลมที่ประกอบกันเป็นโครงร่างราบรื่นยิ่งขึ้น (I7721e)
- แก้ไขข้อบกพร่องใน
LevelIndicator
ที่ทำให้ภาพเคลื่อนไหวหยุดทำงานเนื่องจากการจัดองค์ประกอบใหม่ที่ไม่จำเป็น (I45d08)
เวอร์ชัน 1.5.0-beta03
4 มิถุนายน 2025
androidx.wear.compose:compose-*:1.5.0-beta03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta03 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
OpenOnPhoneDialog
จะประกาศเฉพาะข้อความใต้ TalkBack และข้ามความหมายของไอคอน เราได้อัปเดตOpenOnPhoneDialogDefaults
เพื่อนำพารามิเตอร์iconContentDescription
และcontentDescription
ออกจากicon()
นอกจากนี้ConfirmationDialogDefaults
ยังมีพารามิเตอร์ตัวแก้ไขในSuccessIcon
และFailureIcon
ที่สามารถคอมโพสได้แล้ว (Id2ae2)
การแก้ไขข้อบกพร่อง
- เปลี่ยนลำดับที่เราใช้เอฟเฟกต์ของพารามิเตอร์
SurfaceTransformation
ก่อนหน้านี้ การเปลี่ยนรูปแบบที่ใช้กับคอมโพเนนต์ Wear Material3 จะดำเนินการดังนี้: เครื่องมือวาดพื้นหลัง, การเปลี่ยนรูปแบบคอนเทนเนอร์, การเปลี่ยนรูปแบบเนื้อหา ตอนนี้ 2 รายการแรกจะกลับด้าน และเราจะใช้ตัวแก้ไขที่ส่งผ่านระหว่าง 2 รายการนี้เพื่อให้ได้รับผลกระทบจากการเปลี่ยนรูปคอนเทนเนอร์ ซึ่งจะแก้ไขกรณีต่างๆ เช่น การใช้เอฟเฟกต์การสั่นไหวของตัวยึดตำแหน่งกับองค์ประกอบใน TLC โดยใช้พารามิเตอร์การเปลี่ยนรูป (I786cf) RevealState.Saver
ได้รับการเพิ่มเพื่อใช้ในการคืนค่าสถานะของSwipeToReveal
เมื่อมีการสร้างกิจกรรมหรือกระบวนการขึ้นใหม่ ตอนนี้ฟังก์ชันrememberRevealState
จะใช้ตัวประหยัดนี้โดยค่าเริ่มต้น (Ie0ecb)SwipeToReveal
ปุ่มการกระทําหลักและรองควรมีค่าเริ่มต้นเป็นButtonDefault.Height
(แก้ไขข้อบกพร่องที่ปุ่มเหล่านี้เติมความสูงสูงสุดสำหรับปุ่มที่สูงกว่า) (Ibfba1)- เปลี่ยน
SwipeToReveal
เพื่อรีเซ็ตคอมโพเนนต์สุดท้ายที่มีการโต้ตอบ เมื่อมีการปัดไปทางขวา (Ia8450) SwipeToReveal
มีการเปลี่ยนแปลงเพื่อให้มีสถานะเป็นRevealing
เมื่อตำแหน่งสิ้นสุดของการปัดอยู่ระหว่างจุดยึดที่เปิดเผยและจุดยึดที่เปิดเผยแล้ว และอยู่ใกล้กับจุดยึดที่เปิดเผยมากกว่า (If4458)- ตอนนี้เนื้อหาของ
ButtonGroup
จะกลับด้านอย่างถูกต้องในเลย์เอาต์ RTL (Ib378d) AnimatedText
รองรับทิศทางข้อความจากขวาไปซ้ายแล้ว (I4533c)TransformingLazyColumn
จะปรับขนาดรายการอย่างถูกต้องเมื่อนำรายการด้านล่างออก (Idacab)TransformingLazyColumn
จะทำการวัดเพียงครั้งเดียว ซึ่งช่วยปรับปรุงประสิทธิภาพด้วยการลดเวลาเฟรม (I501a1)
เวอร์ชัน 1.5.0-beta02
20 พฤษภาคม 2025
androidx.wear.compose:compose-*:1.5.0-beta02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- อัปเดตโปรไฟล์พื้นฐานสำหรับไลบรารี Foundation, Material และ Material3 (I53f06)
- แก้ไขข้อบกพร่องใน
TransformingLazyColumn
ซึ่งรายการจะปรับขนาดเมื่อนำรายการด้านล่างออก (Idacab) - แก้ไขข้อบกพร่องเกี่ยวกับ
TransformingLazyColumn
เมื่อรายการติดอยู่ที่ด้านบนหรือด้านล่างของรายการ (I49d00) OpenOnPhoneDialog
ใน TalkBack ควรประกาศข้อความโค้งแทนคำอธิบายเนื้อหาไอคอน (I4efe8)- แก้ไขข้อบกพร่องใน
SwipeToReveal
ซึ่งจะรายงาน Anchor ที่ไม่ถูกต้องในRevealState.currentValue
เมื่อตั้งค่าhasPartiallyRevealedState
เป็น "false" (I9c7cf) - ตอนนี้ปุ่มเลิกทำ
SwipeToReveal
จะเป็นButtonDefaults.Height
โดยค่าเริ่มต้น (I1f6c8) BasicSwipeToDismissBox
ได้รับการปรับปรุงประสิทธิภาพโดยการเลิกใช้ Canvas สำหรับการวาดเลเยอร์มืด (I68f2c)- แก้ไขข้อบกพร่องด้านการช่วยเหลือพิเศษในแถบเลื่อน ซึ่งเปอร์เซ็นต์ที่ประกาศไม่ตรงกับค่าหลังการอัปเดต (I91146)
- แก้ไขข้อบกพร่องในการติดตั้งใช้งาน
placeholderShimmer
(Iee39b TransformingLazyColumn
ได้รับการปรับปรุงโดยการเพิ่มประสิทธิภาพการคำนวณScrollProgress
ขึ้น 30% (I4c4cb)
เวอร์ชัน 1.5.0-beta01
7 พฤษภาคม 2025
androidx.wear.compose:compose-*:1.5.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
การเปิดตัว Compose สำหรับ Wear OS เวอร์ชัน 1.5.0-beta01 แสดงให้เห็นว่าไลบรารีเวอร์ชันนี้มีฟีเจอร์ครบถ้วนและ API ถูกล็อกแล้ว (ยกเว้นที่ทำเครื่องหมายว่าเป็นการทดลอง)
Wear Compose 1.5.0-beta01 มีไลบรารี Wear Compose Material3 ซึ่งรองรับระบบการออกแบบ UI ใหม่ที่เรียกว่า Material 3 Expressive เราขอแนะนำให้อัปเกรดจาก Material เป็น Material3 เพื่อใช้การออกแบบภาพแบบใหม่ในแอป และรับประโยชน์จากคอมโพเนนต์ใหม่ๆ ดังนี้
MaterialTheme
เพื่อดูรูปแบบสี ตัวอักษร และรูปร่างที่อัปเดตและขยายเพิ่มเติมเพื่อเพิ่มทั้งความลึกและความหลากหลายให้กับการออกแบบ- การจัดธีมสีแบบไดนามิกซึ่งจะสร้างรูปแบบสีสำหรับแอปโดยอัตโนมัติให้ตรงกับสีของหน้าปัด
- คอมโพเนนต์ใหม่จะปรับให้เข้ากับหน้าจอขนาดใหญ่ขึ้นโดยอัตโนมัติโดยค่าเริ่มต้น
- การเปลี่ยนรูปร่าง - คอมโพเนนต์ปุ่มกลม เช่น
IconButton
,TextButton
,IconToggleButton
และTextToggleButton
รองรับรูปแบบต่างๆ ที่เคลื่อนไหวเมื่อกดหรือเลือก EdgeButton
- ปุ่มใหม่ที่ขอบหน้าจอซึ่งมีรูปร่างพิเศษที่ออกแบบมาสำหรับด้านล่างของหน้าจอ- โครงร่าง - แนะนำ
AppScaffold
และScreenScaffold
เพื่อวางโครงสร้างของหน้าจอและประสานงานภาพเคลื่อนไหวScrollIndicator
และTimeText
- ปุ่ม - รองรับปุ่มรูปทรงสนามกีฬานับไม่ถ้วนด้วยคอนเทนเนอร์แบบยืดหยุ่นแบบช่องเดียวและรูปแบบหลายช่องสำหรับปุ่มที่มีไอคอนและป้ายกำกับ
CheckboxButton
และSwitchButton
จะแสดงเมื่อจำเป็นต้องใช้ปุ่มเปิด/ปิด ส่วนRadioButton
คือปุ่มเลือกที่ใช้ได้ (นอกจากนี้ยังมีปุ่มเปิด/ปิดและปุ่มเลือกแบบ "แยก" ด้วย) ButtonGroup
- ใช้ปุ่มกลุ่มที่แสดงออกในแถวซึ่งเปลี่ยนรูปร่างเมื่อแตะAlertDialog
รูปแบบต่างๆ รองรับปุ่มตกลง/ยกเลิกหรือEdgeButton
ConfirmationDialog
พร้อมใช้งานเพื่อแสดงข้อความที่มีการหมดเวลา โดยรองรับภาพเคลื่อนไหวพิเศษสำหรับรูปแบบต่างๆ ที่สำเร็จ ล้มเหลว และเปิดในโทรศัพท์- ตัวเลือก - รองรับรูปแบบ
TimePicker
และDatePicker
รวมถึงคอมโพเนนต์ตัวเลือกและPickerGroup
สำหรับสร้างหน้าจอตัวเลือกของคุณเอง ProgressIndicators
- รองรับตัวบ่งชี้ความคืบหน้าแบบวงกลมและแบบเส้น (CircularProgressIndicator
มีรูปแบบที่แบ่งกลุ่มและไม่แน่นอน)- การ์ด - มีการ์ดหลายรูปแบบให้เลือกใช้ รวมถึง
TitleCard
ซึ่งมีเลย์เอาต์เฉพาะสำหรับการ์ดที่มีชื่อ เวลา คำบรรยาย หรือช่องเนื้อหาTitleCard
ยังสามารถใส่ภาพพื้นหลังเพื่อเสริมความหมายของข้อมูลในการ์ดได้ด้วย - เครื่องมือเปลี่ยนหน้า - คอมโพเนนต์
HorizontalPagerScaffold
,VerticalPagerScaffold
และAnimatedPage
จะประสานงานภาพเคลื่อนไหวHorizontalPageIndicator
และVerticalPagerIndicator
HorizontalPager
และVerticalPager
จะเปิดตัวในไลบรารี Wear Compose Foundation - ตัวยึดตำแหน่ง - วาดรูปร่างโครงร่างเหนือคอมโพเนนต์ในกรณีที่ไม่มีเนื้อหาชั่วคราว
- แถบเลื่อนและตัวควบคุมแบบขั้น - ทั้งแถบเลื่อนและตัวควบคุมแบบขั้นช่วยให้ผู้ใช้เลือกจากช่วงของค่าได้ แถบเลื่อนมีขนาดกะทัดรัดกว่าและสามารถแบ่งส่วนได้ ในขณะที่ Stepper เป็นคอมโพเนนต์แบบเต็มหน้าจอที่มักใช้ร่วมกับ
StepperLevelIndicator
SwipeToReveal
- ใช้เพื่อเพิ่มการดำเนินการเพิ่มเติมให้กับ Composable เมื่อมีการปัดจากขวาไปซ้าย
นอกจากนี้ Wear Compose Foundation 1.5.0-beta01 ยังมีคอมโพเนนต์ใหม่ดังนี้
TransformingLazyColumn
- รายการแบบเลื่อนแนวตั้งที่โหลดแบบเลื่อนทีละรายการซึ่งรองรับการปรับขนาดและภาพเคลื่อนไหวแบบมอร์ฟ- กลุ่มโฟกัสแบบลำดับชั้น - ใช้เพื่อใส่คำอธิบายประกอบ Composable ในแอปพลิเคชัน เพื่อติดตามส่วนที่ใช้งานอยู่ของ Composition และประสานงานโฟกัส
- Pager - คอมโพเนนต์
HorizontalPager
และVerticalPager
สร้างขึ้นบนคอมโพเนนต์ Compose Foundation พร้อมการเพิ่มประสิทธิภาพเฉพาะ Wear เพื่อปรับปรุงประสิทธิภาพและปฏิบัติตามหลักเกณฑ์ของ Wear OS
การเปลี่ยนแปลง API
- อัปเดต Hierarchical Focus API - เปลี่ยนชื่อ
Modifier.hierarchicalFocus
เป็นModifier.hierarchicalFocusGroup
และนำพารามิเตอร์การเรียกกลับออก นำการโอเวอร์โหลดของModifier.hierarchicalFocusRequester
ออกด้วยพารามิเตอร์FocusRequester
สร้างCompositionLocal
,LocalScreenIsActive
ใหม่เพื่อให้คอมโพเนนต์สามารถแจ้งและตรวจสอบว่าหน้าจอใดที่ใช้งานอยู่ (I5ff7c) - เลิกใช้งาน
SwipeToReveal
จาก Wear Compose Foundation เพื่อให้ใช้ APISwipeToReveal
ใน Wear Compose Material และ Wear Compose Material3 แทน โปรดแทนที่การนำเข้า Wear FoundationSwipeToReveal
ด้วยการนำเข้า Wear Compose Material/ Wear Compose Material3 เพื่อใช้ API ต่อไป (Ia147d) - ย้ายการอ้างอิง
SwipeToReveal
ของ Wear Compose Material3 ใน Foundation ไปยังแพ็กเกจ material3 เช่นRevealValue
,RevealDirection
,RevealActionType
,RevealState
,rememberRevealState
นักพัฒนาซอฟต์แวร์ควรเปลี่ยนการนำเข้าคลาสและฟังก์ชันเหล่านี้จากandroidx.wear.compose.foundation
เป็นandroidx.wear.compose.material3
(I640e6) - อัปเดต Wear Compose Material3
SwipeToReveal
API ดังนี้ เพิ่มพารามิเตอร์primaryAction
,onFullSwipe
,secondaryAction
,undoPrimaryAction
,undoSecondaryAction
และhasPartiallyRevealedState
ลงใน ComposableSwipeToReveal
; นำความสามารถในการปรับแต่งpositionalThreshold
และanimationSpec
ออกจากRevealState
; นำlastActionType
,revealThreshold
และความกว้างออกจากRevealState
; เปลี่ยนตัวสร้างRevealState
ให้ยอมรับRevealDirection
แทนการยึด; นำฟังก์ชันcreateRevealAnchors
, การยึด และbidirectionalAnchors
ออก; เปลี่ยนชื่อฟังก์ชันSwipeToRevealScope
primaryAction
,secondaryAction
,undoPrimaryAction
และundoSecondaryAction
เป็นPrimaryActionButton
,SecondaryActionButton
,UndoActionButton
และเปลี่ยนให้เป็นฟังก์ชัน Composable; ทำเครื่องหมายRevealActionType
เป็นภายใน (I885d0) - อัปเดต
SwipeToReveal
API เพิ่มเติมดังนี้ เปลี่ยนชื่อonFullSwipe
เป็นonSwipePrimaryAction
เปลี่ยนชื่อSwipeToRevealNonAnchoredSample
เพื่อระบุการใช้พารามิเตอร์hasPartiallyRevealedState
นำactionButtonHeight
ออกเนื่องจากค่าเริ่มต้นคือความสูงเริ่มต้นของปุ่ม และสามารถตั้งค่าความสูงที่มากขึ้นได้โดยใช้ตัวแก้ไข นำSmallActionButtonHeight
ออกจากSwipeToRevealDefaults
ทำให้พารามิเตอร์ค่าในตัวสร้างRevealValue
และRevealDirection
เป็นแบบส่วนตัว (I465ce)
การแก้ไขข้อบกพร่อง
- แก้ไขการจัดการ
ScreenScaffold
ของEdgeButton
เพื่อให้หลังจากนำรายการTransformingLazyColumn
ออกแล้วEdgeButton
จะเคลื่อนไหวไปยังตำแหน่งที่ถูกต้อง (I6d366) - อัปเดตทรัพยากร Dependency ของ Wear Compose ในไลบรารี Compose เป็นเวอร์ชัน 1.8.0 (I2ef3f)
- อัปเดตการเคลื่อนไหวของ
CircularProgressIndicator
ที่ไม่แน่นอนเพื่อไม่ให้เกิดการถดถอยชั่วคราวอีกต่อไป (Ieddb1) - แก้ไข
SwipeDismissableNavHost
ข้อบกพร่อง - โฟกัสไม่เปลี่ยนอย่างถูกต้องหลังจากปัดกลับ ทำให้การป้อนข้อมูลแบบหมุนล้มเหลว (สำหรับ API 36 ขึ้นไปที่ใช้การคาดการณ์การกลับ) (Ieddb1) - เอกสารประกอบที่แก้ไขแล้วสำหรับ Hierarchical Focus API (Idf2ff)
- อัปเดตเอกสารประกอบสำหรับปุ่มและการ์ดเพื่อระบุวิธีที่
containerPainter
และdisabledContainerPainter
ลบล้างcontainerColor
และdisabledContainerColor
(I4a453) - เปลี่ยนกลับการเปลี่ยนแปลงใน
TimeText
ในรุ่นก่อนหน้า ซึ่งย้ายBroadcastReceiver
ไปยังเธรดของ Worker เนื่องจากทำให้เกิดปัญหาสำหรับแอปที่จัดการการสร้างเธรดของตนเองในระหว่างการนำทาง (I34d02) - อัปเดตตัวอย่าง Picker เพื่อนำการเรียกใช้ remember ที่ไม่จำเป็นออก และใช้
rememberUpdatedState
ใน Picker แทนเพื่อจดจำฟังก์ชัน LambdacontentDescription
ล่าสุด (Icb5b1) - อัปเดตรูปแบบข้อความใน
TimePicker
และDatePicker
เพื่อให้การเปลี่ยนแบบอักษรไม่ทำให้ข้อความถูกตัดอีกต่อไป (I26194) ListHeader
และListSubHeader
จะจัดข้อความเป็นกึ่งกลางและจัดชิดซ้ายตามลำดับโดยค่าเริ่มต้น (I78339)- อัปเดตตัวอย่างและเดโมของ Foundation และ Material Swipe to Reveal เพื่อประกาศการดำเนินการเพื่อการช่วยเหลือพิเศษที่กำหนดเอง (ต้องเพิ่มการดำเนินการที่กำหนดเองเป็นความหมายในเนื้อหา ไม่ใช่ใน
SwipeToReveal
Composable เอง) (Ie92a3) - อัปเดตค่าเริ่มต้นที่
MaxLines
ตั้งไว้ในEdgeButton
เนื้อหาตามขนาด โดยตอนนี้ค่าเริ่มต้นคือ 1 สำหรับขนาดเล็กพิเศษ 2 สำหรับขนาดเล็กและขนาดกลาง และ 3 สำหรับขนาดใหญ่ (Ie35f6) LocalReduceMotion
เพื่อให้ระบบลงทะเบียนผู้สังเกตการณ์เพียงครั้งเดียวเพื่อปรับปรุงประสิทธิภาพ (Ib1979)- ลดจำนวนการวาดใหม่ใน
ScrollIndicator
เพื่อปรับปรุงประสิทธิภาพ (Ia7a67) - แก้ไขข้อบกพร่องใน
TransformingLazyColumn
ซึ่งรายการที่มองเห็นได้ด้านบนในรายการจะปรับขนาดไม่ถูกต้องเมื่อ EdgeButton มีความสูงเต็ม (I30580)
เวอร์ชัน 1.5.0-alpha14
23 เมษายน 2025
androidx.wear.compose:compose-*:1.5.0-alpha14
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha14 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- การอ้างอิงทั้งหมดของ Material
SwipeToReveal
ใน FoundationSwipeToReveal
ได้ย้ายไปที่แพ็กเกจ Material แล้ว เช่นRevealValue
,RevealDirection
,RevealActionType
,RevealState
,rememberRevealState
นักพัฒนาซอฟต์แวร์ควรเปลี่ยนการนำเข้าคลาสและฟังก์ชันเหล่านี้จากandroidx.wear.compose.foundation
เป็นandroidx.wear.compose.material
(Ib7cb8) - อัปเดต API ของ
HierarchicalFocusCoordinator
ให้เป็นตัวแก้ไขแทนที่จะเป็น Composable - หมายเหตุเกี่ยวกับการย้ายข้อมูล
HierarchicalFocusCoordinator(function, content)
สามารถแทนที่ได้โดยการเพิ่มModifier.hierarchicalFocus(function())
ลงในcontent
หรือ Composable ที่ครอบคลุมActiveFocusListener { if (it) focusRequester.requestFocus() }
สามารถแทนที่ได้โดยการเพิ่มModifier.hierarchicalFocusRequester(focusRequester)
- การใช้งาน
ActiveFocusListener
อื่นๆ ที่พบได้ยากกว่าจะใช้พารามิเตอร์ใหม่ในModifier.hierarchicalFocus
ได้ focusRequester(rememberActiveFocusRequester())
สามารถแทนที่ด้วยhierarchicalFocusRequester()
val focusRequester = rememberActiveFocusRequester()
สามารถแทนที่ด้วยremember { FocusRequester() }
และเพิ่มModifier.hierarchicalFocusRequester(focusRequester)
(Ie319a)
การแก้ไขข้อบกพร่อง
- เราได้เพิ่มเกณฑ์ความเร็วที่ท่าทางสัมผัสการปัดต้องเกินเพื่อทริกเกอร์การเปลี่ยนสถานะสำหรับคอมโพเนนต์ต่อไปนี้
SwipeToReveal
,BasicSwipeToDismissBox
และSwipeDismissableNavHost
(เฉพาะ API 35 และต่ำกว่าสำหรับSwipeDismissableNavHost
) (If47bf) - แก้ไขปัญหาการเคลื่อนไหวเมื่อมีการเพิ่มรายการใหม่ลงใน
TransformingLazyColumn
(I589b2)
เวอร์ชัน 1.5.0-alpha13
9 เมษายน 2025
androidx.wear.compose:compose-*:1.5.0-alpha13
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha13 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- โปรเจ็กต์ที่เผยแพร่ด้วย Kotlin 2.0 ต้องใช้ KGP 2.0.0 ขึ้นไปจึงจะใช้งานได้ (Idb6b5)
- เพิ่มพร็อพเพอร์ตี้
targetPage
ลงในPagerState
(I4de8b)
การแก้ไขข้อบกพร่อง
- ป้องกันการจัดองค์ประกอบใหม่ที่ไม่จำเป็นระหว่างการย้อนกลับแบบคาดการณ์ (Iecd6d)
- แก้ไขพร็อพเพอร์ตี้
ScrollInfoProvider
ของisScrollable
เพื่อแสดงผลค่าปัจจุบัน (Icbfb8)
เวอร์ชัน 1.5.0-alpha12
26 มีนาคม 2025
androidx.wear.compose:compose-*:1.5.0-alpha12
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha12 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- ปรับปรุง
SwipeToReveal
การติดตั้งใช้งานเริ่มต้นของgestureInclusion
เพื่อให้ละเว้นท่าทางสัมผัสเฉพาะในกรณีที่สถานะของคอมโพเนนต์เป็น Covered (I7e3d6) - สำหรับ
SwipeToReveal
เราได้เปลี่ยนbidirectionalGestureInclusion
ให้เป็นค่าแทนที่จะเป็นฟังก์ชัน และเพิ่ม@FloatRange
ลงในพารามิเตอร์edgeZoneFraction
ในgestureInclusion
(Ica7c3)
การแก้ไขข้อบกพร่อง
- เปลี่ยน
SwipeToReveal
bidirectionalGestureInclusion
เพื่อคืนค่าเป็นออบเจ็กต์แทนคลาส (I29597) - ปิดใช้การสั่นเมื่อเรียกใช้การทดสอบใน
RoboElectric
(I58bd1) - อัปเดต
SwipeToReveal
ระยะห่างจากขอบระหว่างเนื้อหากับปุ่มการดำเนินการ รวมถึงระยะห่างจากขอบระหว่างไอคอนกับข้อความของปุ่มการดำเนินการ (Ic46cb)
เวอร์ชัน 1.5.0-alpha11
12 มีนาคม 2025
androidx.wear.compose:compose-*:1.5.0-alpha11
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha11 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- อัปเดต
PagerState
โดยนำPagerState
ของ Compose Foundation ออกเป็นคลาสฐาน และเพิ่มพร็อพเพอร์ตี้currentPage
,currentPageOffsetFraction
และpageCount
อัปเดตอินเทอร์เฟซGestureInclusion
โดยเปลี่ยนชื่อเมธอดเป็นignoreGestureStart
(I4ae07) - เพิ่ม
requireOffset
ลงในSwipeToDismissBoxState
เป็นวิธีที่แนะนำในการรับส่วนลดSwipeToDismissBoxState
(I21042) - เพิ่ม
CurvedModifier.semantics
โดยเริ่มแรกจะรองรับคำอธิบายเนื้อหาและดัชนีการข้าม (I0b093) - เราได้เพิ่ม
CurvedModifier.clearAndSetSemantics
เพื่อเป็นวิธีปิดความหมายโค้งCurvedText
ยังคงตั้งค่าเริ่มต้นให้คำอธิบายเนื้อหาเป็นข้อความ แต่timeTextCurvedText
และtimeTextSeparator
จะไม่อ่านเนื้อหาของตัวเองแล้ว (I4b568) - เปลี่ยนชื่อการจัดการท่าทางสัมผัสการปัดเริ่มต้นของ
HorizontalPager
เป็นPagerDefaults.gestureInclusion
แล้ว ตอนนี้ลักษณะการทำงานเริ่มต้นคือการไม่สนใจท่าทางการปัดที่เริ่มจากขอบด้านซ้ายของหน้าแรกเท่านั้น และจะเกิดขึ้นเมื่อปิด Talkback แล้วเท่านั้น ในกรณีอื่นๆ ลักษณะการทำงานเริ่มต้นคือเพจเจอร์จะไม่สนใจท่าทางการปัด ดังนั้นตัวแฮนเดิลการปัดเพื่อปิดจะไม่พร้อมใช้งาน (Iee486) - เพิ่มการเลื่อนเกินขอบเขตแบบหมุนสำหรับ API ของ
rotaryScrollable
เพิ่มการเลื่อนเกินขอบเขตและการเลื่อนที่ซ้อนกันลงในลักษณะการปัดของrotaryScrollable
การเปลี่ยนแปลงนี้จะช่วยให้ฟังก์ชันการเลื่อนเกินขอบเขตและการเลื่อนที่ซ้อนกันระหว่างการเลื่อนด้วยการสัมผัสกับการเลื่อนแบบหมุนเป็นไปในทิศทางเดียวกัน (I71926) - เพิ่มการรองรับโซนการปัดจากขอบไปยัง
SwipeToReveal
ตอนนี้ลักษณะการทำงานเริ่มต้นของ FoundationSwipeToReveal
คือการไม่อนุญาตให้ปัดเมื่อท่าทางสัมผัสเริ่มต้นจากขอบ ตอนนี้ลักษณะการทำงานเริ่มต้นของ Material3SwipeToReveal
คือการไม่อนุญาตให้ปัดเมื่อท่าทางสัมผัสเริ่มต้นจากขอบ เมื่อตั้งค่าSwipeDirection
เป็นทิศทางเดียว (I32ef0) - ตอนนี้ TLC ใช้ contentPadding ที่ว่างเปล่าโดยค่าเริ่มต้นแทนการวางรายการแรกและรายการสุดท้ายไว้ตรงกลาง (I77ab7)
การแก้ไขข้อบกพร่อง
- ไลบรารี Wear Compose ได้รับการอัปเดตเป็นคอมไพเลอร์ Kotlin 2.0 แล้ว (I2de79)
- แก้ไขตัวอย่าง
LetterSpacing
โค้งบนรองพื้น (Iebf7c)
เวอร์ชัน 1.5.0-alpha10
26 กุมภาพันธ์ 2025
androidx.wear.compose:compose-*:1.5.0-alpha10
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha10 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตั้งค่า
SwipeToRevealDefaults
เป็นสาธารณะ (I0c34c) - เราได้แทนที่พารามิเตอร์
swipeToDismissEdgeZoneFraction
ในHorizontalPager
แล้ว เราจึงได้เปิดตัวพารามิเตอร์ใหม่gestureInclusion
ซึ่งใช้เพื่อให้ได้ลักษณะการปัดเพื่อปิดที่จำเป็นgestureInclusion
รับอินสแตนซ์ของGestureInclusion
ซึ่งจะตัดสินใจว่าควรดำเนินการกับเหตุการณ์การเลื่อนถัดไปหรือไม่ การอนุญาตท่าทางสัมผัสหมายความว่า Pager จะใช้ท่าทางสัมผัสนั้น ไม่เช่นนั้นระบบจะจัดการท่าทางสัมผัสที่อื่น เช่น โดยตัวแฮนเดิลการปัดเพื่อปิด ลักษณะการทำงานเริ่มต้นใหม่คือการไม่อนุญาตท่าทางสัมผัสที่ขอบซ้ายสุดของหน้าแรกใน Pager และอนุญาตให้ปัดเพื่อปิดในภูมิภาคนี้ ส่วนหน้าอื่นๆ ทั้งหมดจะอนุญาตให้ Pager ใช้ท่าทางสัมผัสทั้งหมด ซึ่งหมายความว่าจะเรียกใช้การปัดเพื่อปิดจากหน้าเหล่านั้นไม่ได้ หากต้องการให้มีการปัดเพื่อปิดในทุกหน้า เพียงระบุอินสแตนซ์GestureInclusion
ที่กำหนดเอง (ดูPagerDefaults.disableLeftEdgeOnFirstPage
) ซึ่งไม่สนใจหน้าปัจจุบัน การเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้องอีกอย่างที่แนะนำในที่นี้คือคอมโพเนนต์ Pager จะไม่แสดงแบบเต็มหน้าจอโดยค่าเริ่มต้นอีกต่อไป แต่ให้เพิ่มModifier.fillMaxSize()
เพื่อให้ได้ลักษณะการทำงานนี้แทน (I9d3aa) - เราได้เปลี่ยนชื่อ
createAnchors
เป็นcreateRevealAnchors
ใน API การปัดเพื่อแสดง(If5999) - เราได้นำ
RevealScope
ออกจาก API การปัดเพื่อเปิดเผย (Ie4ad5) - เราได้นำ Revealing และ Revealed ออกจาก
RevealValue
ใน API การปัดเพื่อเปิดเผย (I8dbc5) - เราได้เปลี่ยนชื่อ
SwipeDirection
เป็นRevealDirection
ใน API การปัดเพื่อแสดง (I7472f) - เราได้เปลี่ยนลายเซ็นของพารามิเตอร์
positionalThreshold
ของฟังก์ชันrememberRevealState
ของSwipeToReveal
(I29c0a) - เราได้เพิ่มพารามิเตอร์
overscrollEffect
ใหม่ลงในScalingLazyColumn
,TransformingLazyColumn
และScreenScaffold
(I0cee8) - เมื่อใช้
PagerDefaults#snapFlingBehaviour
ระบบจะแทนที่พารามิเตอร์pagerSnapDistance
ด้วยพารามิเตอร์ IntmaxFlingPages
ซึ่งใช้เพื่อระบุจำนวนหน้าสูงสุดที่ Pager ควรปัดได้ (I8cfc0) - ตอนนี้ Wear Pager มี
PagerScope
ของตัวเองแล้วแทนที่จะใช้PagerScope
ของ Compose Foundation (I9195b) - เราได้เพิ่มการรองรับ
lineHeight
ในข้อความโค้ง (I1c936) - เราได้เพิ่ม
initialAnchorItemIndex
และinitialAnchorItemOffset
ลงในTransformingLazyColumnState
และrememberTransformingLazyColumnState
เพื่อให้ระบุตำแหน่งการเลื่อนเริ่มต้นในTransformationLazyColumn
ได้ (I0a0d5) - เลิกใช้งาน
runWithTimingDisabled
เพื่อใช้runWithMeasurementDisabled
แทน ซึ่งอธิบายลักษณะการทำงานได้ชัดเจนกว่า นั่นคือระบบจะหยุดเมตริกทั้งหมดชั่วคราว นอกจากนี้ ให้แสดงคลาสซูเปอร์คลาสMicrobenchmarkScope
เนื่องจากไม่สามารถประกาศฟังก์ชันrunWithMeasurementDisabled
ซ้ำเพื่อเปิดการเข้าถึงได้เนื่องจากเป็นฟังก์ชันอินไลน์ (I9e23b, b/389149423, b/149979716) - เราได้เพิ่ม
TransformingLazyColumnItemScrollProgress.Unspecified
ลงใน API เพื่อหลีกเลี่ยงการต่อมวยในTransformingLazyColumnItemScrollProgress
(I0835d)
การแก้ไขข้อบกพร่อง
- ปรับปรุง Kdoc สำหรับ
CurvedTextStyle
(Id45e3) - เราได้เปลี่ยน
SwipeableV2
(ส่วนหนึ่งของการติดตั้งใช้งานSwipeToReveal
) ให้เป็นแบบภายในแทนที่จะเป็นแบบสาธารณะ แต่จำกัดไว้สำหรับกลุ่มห้องสมุด (Idbb94) - เราได้เพิ่มการทดสอบใน
HierarchicalFocusCoordinator
(I1ce54, b/395548918) - เราได้ปรับปรุง
SwipeToReveal
ในตัวอย่างพื้นฐานของ Wear Compose (I5f307) - แก้ไขข้อมูลเชิงความหมายของแกนการเลื่อนสำหรับ
verticalScrollAxisRange
ในTransformingLazyColumn
เพื่อการช่วยเหลือพิเศษ (I68123) - ปรับปรุงประสิทธิภาพของแฮปติกแบบหมุนใน Wear4 ขึ้นไปโดยการนำเธรดพื้นหลังที่ไม่จำเป็นออก (I39cfe)
- เปลี่ยน
SwipeDismissableNavHost
ให้ใช้PredictiveBackNavHost
เฉพาะใน API 36 ขึ้นไป (I59bed) - เราได้เพิ่มการป้องกันไม่ให้เกิดข้อขัดข้องเมื่อเข้าถึงการตั้งค่า reducemotion (I01e2c)
- เราได้ใช้การดึงข้อมูลล่วงหน้าสำหรับ
TransformingLazyColumn
เพื่อลดความกระตุก (Icca88)
เวอร์ชัน 1.5.0-alpha09
29 มกราคม 2025
androidx.wear.compose:compose-*:1.5.0-alpha09
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha09 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ใน
CurvedTextStyle
เราได้แบ่งระยะห่างระหว่างตัวอักษรออกเป็นระยะห่างระหว่างตัวอักษรตามเข็มนาฬิกาและระยะห่างระหว่างตัวอักษรทวนเข็มนาฬิกา ค่านี้เป็นข้อกำหนดเนื่องจากตัวอักษรที่หมุนตามเข็มนาฬิกาจะกางออกจากเส้นฐาน ในขณะที่ตัวอักษรที่หมุนทวนเข็มนาฬิกาจะกางเข้า (จึงต้องมีระยะห่างตัวอักษรที่มากขึ้น) (I4b848) - เราได้ปรับ
CompositionLocal
LocalReduceMotion
ให้ง่ายขึ้นเพื่อแสดงผลบูลีนแทนออบเจ็กต์ReduceMotion
ตอนนี้เราเลิกใช้งานอินเทอร์เฟซReduceMotion
แล้ว การเรียกใช้ก่อนหน้านี้ เช่นLocalReduceMotion.current.enabled()
สามารถแทนที่ด้วยLocalReduceMotion.current
(I4937f) - ใน
PagerDefaults
เราได้เปลี่ยนชื่อsnapAnimationSpec
เป็นSnapAnimationSpec
แล้ว (I20c9a)
เวอร์ชัน 1.5.0-alpha08
15 มกราคม 2025
androidx.wear.compose:compose-*:1.5.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha08 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้อัปเดตไลบรารี Wear Compose ทั้งหมดเป็นโหมด "API ที่ชัดเจน" แล้ว (Iebf9f)
- เราได้กำหนดให้พารามิเตอร์ภาพเคลื่อนไหวการสแนปของ Pager เป็นส่วนหนึ่งของ
PagerDefaults
(Ifff64) - เราได้เพิ่มพารามิเตอร์ออฟเซ็ตลงใน
SwipeToDismissBoxState
แล้ว (I586bd)
การแก้ไขข้อบกพร่อง
- ตอนนี้ระบบจะเรียกใช้การโต้ตอบการสัมผัสแบบหมุนของแพลตฟอร์มสำหรับ Wear OS เวอร์ชันหลัง V (Idb03e)
เวอร์ชัน 1.5.0-alpha07
11 ธันวาคม 2024
androidx.wear.compose:compose-*:1.5.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha07 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
TransformingLazyColumnState
ตอนนี้มีวิธีสังเกตความคืบหน้าในการเลื่อนปัจจุบันตามดัชนีรายการยึด (I72b01)- เราได้เพิ่มภาพเคลื่อนไหวลงใน
TransformingLazyColumn
เมื่อเพิ่ม นำออก และย้ายรายการ หากรายการนั้นมีModifier.animateItem
ใหม่ (Iecb9c) - ตอนนี้
TransformingLazyColumn
แสดงค่าสำหรับbeforeContentPadding
และafterContentPadding
แล้ว (Iccd5f) - ตอนนี้
TransformingLazyColumn
มีองค์ประกอบการจัดองค์ประกอบเฉพาะที่LocalTransformingLazyColumnItemScope
ซึ่งคอมโพเนนต์ (เช่นCard
และButton
ใน Material3) สามารถใช้เพื่อเปลี่ยนรูปร่างโดยอัตโนมัติเมื่อวางไว้ภายในTransformingLazyColumn
ผู้โทรปิดใช้การมอร์ฟอัตโนมัติได้โดยใช้ WrapperTransformExclusion
ใหม่ (I1652f)
การแก้ไขข้อบกพร่อง
- เราได้อัปเดตความเร็วในการปัดขั้นต่ำและสูงสุดสำหรับการหมุนบนอุปกรณ์ที่กำหนดเป้าหมายเป็น U ขึ้นไป (I33559)
- เราได้แก้ไขข้อขัดข้องที่เกิดขึ้นหากรายการใน
TransformingLazyColumn
ไม่มี Composable (Idb99d) - เราได้เพิ่มการรองรับ
ScrollFeedbackProvider
สำหรับการตอบสนองแบบสัมผัสแบบหมุนใน Android Vanilla ice cream (Ibc553) - เราได้เพิ่มค่าความคลาดเคลื่อนในการสัมผัสเมื่อใช้
SwipeToReveal
เพื่อลดโอกาสในการปัดโดยไม่ตั้งใจขณะเลื่อนในแนวตั้ง (Ic0672) - เราได้อัปเดต
SwipeDismissableNavHost
ให้ใช้PredictiveBackHandler
เมื่อพร้อมใช้งานกับ API 35 ขึ้นไป ในกรณีดังกล่าว ระบบจะใช้ภาพเคลื่อนไหวใหม่ (I08c11)
เวอร์ชัน 1.5.0-alpha06
13 พฤศจิกายน 2024
androidx.wear.compose:compose-*:1.5.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้ลดความซับซ้อนของ
ScrollInfoProvider
สำหรับPagerState
โดยการนำพารามิเตอร์orientation
ออก เนื่องจากไม่จำเป็นอีกต่อไป ลักษณะการทำงานใหม่นี้มีไว้เพื่อให้TimeText
ยังคงอยู่ในตำแหน่งเดิมสำหรับการแบ่งหน้าทั้งแนวนอนและแนวตั้ง (I71767) TransformingLazyColumn
เปิดตัวในรุ่นก่อนๆ ตอนนี้เรากำลังนำLazyColumn
ชื่อแทนของ Wear (ซึ่งเคยเปลี่ยนเส้นทางไปยังTransformingLazyColumn
) ออกเพื่อใช้ชื่อใหม่TransformingLazyColumn
นอกจากนี้ เรายังได้นำพร็อพเพอร์ตี้height
ของTransformingLazyColumnVisibleItemInfo
ออกแล้ว โปรดใช้measuredHeight
แทน (I0ea1e)- เราได้เปลี่ยน
PagerDefaults.snapFlingBehavior
snapAnimationSpec
จากTween
เป็นข้อกำหนดSpring
(I10d02, b/349781047, b/303807950) - เราได้เลื่อนเวอร์ชัน
LocalReduceMotion
CompositionLocal
เป็นเวอร์ชันเสถียร (Ia6f32) แล้ว
การแก้ไขข้อบกพร่อง
- เราได้อัปเดต
Modifier.rotaryScrollable
ให้ใช้focusTargetWithSemantics
เพื่อรองรับความหมายที่ดีขึ้นในโรตารี (Ief0a0) - เราได้อัปเดตทรัพยากร Dependency ของ API ขั้นต่ำเป็น 1.7.4 สำหรับไลบรารี Compose (I88b46)
- เราได้ปิดใช้การปรับเปลี่ยนความกว้างใน
TransformingLazyColumn
เพื่อเป็นวิธีแก้ปัญหาเฉพาะหน้าสำหรับข้อบกพร่องในการครอบตัด (I3dfb8) - เราได้แก้ไขข้อบกพร่องที่ทำให้รายการหายไปหลังจากเลื่อนเกินขอบเขตด้วย
TransformingLazyColumn
(Id7668) แล้ว - เราได้เพิ่ม
LazyLayoutSemantics
สำหรับTransformingLazyColumn
แล้ว (Ia8f56)
เวอร์ชัน 1.5.0-alpha05
30 ตุลาคม 2024
androidx.wear.compose:compose-*:1.5.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่มการรองรับ
animateScrollTo
ในTransformingLazyColumnState
เพื่อให้การเลื่อนไปยังรายการสามารถเคลื่อนไหวได้ (I4097d) - เราได้เพิ่ม
requestScrollTo
ในTransformingLazyColumnState
เพื่อเลื่อนการเลื่อนไปยังการวัดครั้งถัดไป (I20a5e) - เราได้เพิ่มการรองรับ
contentPadding
ในTransformingLazyColumn
(I3a69c)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องในการแสดงผล
TransformingLazyColumn
เมื่อความสูงของเนื้อหาสั้นกว่าความสูงของหน้าจอแล้ว (I6c3e1) ScrollInfoProvder
สำหรับTransformingLazyColumn
จะติดตามรายการแรกได้อย่างถูกต้องแล้ว (I1e4a3)TransformingLazyColumnState
จะบันทึกสถานะ (anchorItemIndex
และanchorItemScrollOffset
) แล้ว (I3d265)
เวอร์ชัน 1.5.0-alpha04
16 ตุลาคม 2024
androidx.wear.compose:compose-*:1.5.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้เปลี่ยนชื่อ Wear Compose Foundation
LazyColumn
เป็นTransformingLazyColumn
เพื่อให้เห็นความแตกต่างระหว่างไลบรารีนี้กับ Compose FoundationLazyColumn
ได้ชัดเจนยิ่งขึ้น (I0608b) - เพิ่มการรองรับการหมุนสำหรับเพจเจอร์แนวนอน/แนวตั้ง ซึ่งช่วยให้ผู้ใช้ไปยังส่วนต่างๆ ของเพจเจอร์ได้โดยใช้อุปกรณ์ป้อนข้อมูลแบบหมุน (I9770d)
- เราได้อัปเดต
PagerDefaults
ใหม่เพื่อให้ทราบว่าเครื่องมือเปลี่ยนหน้าจะเลื่อนไปที่หน้าโดยค่าเริ่มต้น (Iff7d0) TransformingLazyColumnItemScrollProgress
ตอนนี้เป็นคลาสค่าแล้ว ซึ่งจะช่วยปรับปรุงประสิทธิภาพ (Ic399e)- ตอนนี้
TransformingLazyColumn
รองรับการหมุนตั้งแต่แกะกล่องแล้ว (I05206) - ขณะนี้
TransformingLazyColumnState
รองรับscrollToItem
แล้ว (I507b3) - นำ
@ExperimentalWearFoundationApi
ออกจากSwipeToReveal
API (I34a66)
เวอร์ชัน 1.5.0-alpha03
2 ตุลาคม 2024
androidx.wear.compose:compose-*:1.5.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่มการรองรับการปัดแบบ 2 ทิศทางใน
SwipeToReveal
สำหรับกรณีที่พบได้ยากซึ่งหน้าจอปัจจุบันไม่รองรับการปัดเพื่อปิด . ค่าเริ่มต้นยังคงเป็นการปัดเพื่อเปิดเผยเฉพาะการปัดจากขวาไปซ้าย และขอแนะนำอย่างยิ่งให้ใช้ลักษณะการทำงานเริ่มต้นเพื่อหลีกเลี่ยงการขัดแย้งกับการปัดเพื่อปิด (Ifac04) - เราได้อัปเดต
LazyColumnState
เพื่อลบล้างcanScrollForward
และcanScrollBackward
ซึ่งตอนนี้จะหยุดการเลื่อนเมื่อรายการแรกหรือรายการสุดท้ายอยู่ตรงกลางหน้าจอพอดี (Ia77d7) - เราได้เพิ่มคอมโพเนนต์
HorizontalPager
และVerticalPager
ใหม่ซึ่งช่วยแก้ปัญหาที่พบบ่อย เช่น การจัดการโฟกัสและการโต้ตอบกับการปัดของระบบเพื่อปิด ซึ่งอาจเกิดขึ้นใน Wear (I2902b) - เราได้เพิ่มการรองรับ
LazyColumn
เพื่อแสดงkey
และcontentType
ของไคลเอ็นต์ผ่านlayoutItems
(I1bd9c)
การแก้ไขข้อบกพร่อง
- เราได้อัปเดตภาพเคลื่อนไหวของข้อความโค้งให้ราบรื่นขึ้นโดยใช้ Paint Flags (I73a15)
- เราได้อัปเดตเอกสารประกอบของ Material Dialog เพื่อให้แสดงว่า
onDismissRequest
จะไม่เรียกใช้หลังจากตั้งค่าสถานะแสดงเป็น false (Ifd8d6) - เราได้แก้ไขข้อบกพร่องเกี่ยวกับภาพเคลื่อนไหวขอบมืดในกล่องโต้ตอบ Material (I126bf) แล้ว
เวอร์ชัน 1.5.0-alpha02
18 กันยายน 2024
androidx.wear.compose:compose-*:1.5.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่มการรองรับ Wear Compose
LazyColumn
ด้วยScreenScaffold
(และเพิ่มการใช้งานScrollInfoProvider
สำหรับLazyColumnState
) (Ib8d29) - เราได้เพิ่ม
viewportSize
ไปยังLazyColumnLayoutInfo
แล้ว (I4187f)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องเพื่อให้ตอนนี้การเลื่อนแบบหมุนถูกปิดใช้ใน
ScalingLazyColumn
เมื่อตั้งค่าสถานะuserScrollEnabled
เป็นfalse
(I490ab, b/360295825) - เราได้แก้ไขข้อบกพร่องเพื่อจัดการช่องว่างแนวตั้งที่ไม่คาดคิดในข้อความโค้ง ตอนนี้ความสูงของข้อความโค้งจะตรงกับพื้นที่จริงที่ข้อความใช้มากขึ้น โปรดทราบว่าการดำเนินการนี้อาจทำให้การทดสอบภาพหน้าจอที่เกี่ยวข้องกับข้อความโค้ง (Iaa6ef) ไม่ทำงาน
- เราได้ย้อนกลับการแก้ไขข้อบกพร่องใน
Dialog
ซึ่งมีการเรียกใช้การเรียกกลับonDismissRequest
เมื่อตั้งค่าshowDialog
เป็น false เนื่องจากในบางกรณี การดำเนินการนี้ทำให้มีการเรียกใช้onDismissRequest
หลายครั้ง (I64656)
เวอร์ชัน 1.5.0-alpha01
4 กันยายน 2024
androidx.wear.compose:compose-*:1.5.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่ม
LazyColumn
ใหม่ลงในไลบรารี Wear Compose Foundation พร้อมด้วย APILazyColumnState
และLazyColumnScope
ที่เกี่ยวข้อง ซึ่งเป็นรากฐานในการสร้างเอฟเฟ็กต์การปรับขนาดและการเปลี่ยนรูปที่ปรับแต่งได้ด้วย Wear Compose (Ib3b22) - เราได้เพิ่ม
itemsIndexed
เวอร์ชันที่จัดทำดัชนีลงในLazyColumnScope
ซึ่งเป็นส่วนหนึ่งของLazyColumn
API ใหม่ (Ib4a57) - เราได้เพิ่ม
LazyColumn
ตัวแก้ไขเพื่อรองรับลักษณะการทำงานของการปรับขนาดและการเปลี่ยนรูป (Ie229a) HierarchicalFocusCoordinator
ได้รับการโปรโมตเป็นเวอร์ชันเสถียรแล้ว (I31035)- เราได้เพิ่มการรองรับระยะห่างของตัวอักษรให้กับข้อความโค้ง (I3c740)
- เพิ่มพารามิเตอร์
rotationLocked
ลงในCurvedLayout.curvedComposable
เพื่อหยุดการหมุนคอมโพเนนต์ (I66898) - ระบบได้นำ
LocalUseFallbackRippleImplementation
API ชั่วคราวจาก wear material และ wear material3 ออกแล้ว (I62282) - นำ
WearDevices.SQUARE
ออกจากฟีเจอร์หลายมุมมองของ@WearPreviewDevices
(I11c02)
การแก้ไขข้อบกพร่อง
SwipeToReveal
จะวางตำแหน่งรายการที่แสดงในส่วนที่มองเห็นได้ของหน้าจอ ซึ่งจะช่วยเมื่อใช้SwipeToReveal
ภายในรายการ เพื่อให้รายการโต้ตอบได้เสมอและไม่เคยอยู่นอกหน้าจอ (I38929)- ตอนนี้
SwipeToReveal
จะรีเซ็ตlastActionType
เป็น "ไม่มี" เมื่อanimatedTo
เสร็จสมบูรณ์ (I59b03) - ปรับปรุงเอกสารประกอบสำหรับพารามิเตอร์
rotationLocked
ใหม่ในcurvedComposable
(Ifbd57) - แก้ไขข้อขัดข้องเมื่อส่ง
NaN
ไปยังScalingLazyColumnSnapFlingBehavior
ของperformFling
(Ic13da) - แก้ไขข้อบกพร่องเกี่ยวกับตัวแก้ไขขนาดเลย์เอาต์โค้ง (I0fedf)
- เราได้เพิ่มการรองรับระยะห่างตัวอักษรที่ระบุในหน่วย "sp" (I9f6e3)
- เราได้แก้ไขข้อบกพร่องในกล่องโต้ตอบ Material2 ซึ่งไม่ได้เรียกใช้แฮนเดิล
onDismissRequest
เมื่อกล่องโต้ตอบมองไม่เห็น (I64656) - เปลี่ยนชื่อ
LayoutCoordinates.introducesFrameOfReference
เป็นLayoutCoordinates.introducesMotionFrameOfReference
เพื่อให้สะท้อนวัตถุประสงค์ได้ดียิ่งขึ้น เปลี่ยนชื่อฟังก์ชันที่เกี่ยวข้องเพื่อคำนวณพิกัดตามธงนั้น (I3a330)
เวอร์ชัน 1.4
เวอร์ชัน 1.4.1
12 กุมภาพันธ์ 2025
androidx.wear.compose:compose-*:1.4.1
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.1 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้ป้องกันไม่ให้เกิดข้อขัดข้องเมื่อเข้าถึงการตั้งค่าลดการเคลื่อนไหวส่วนกลาง ซึ่งเกิดขึ้นในบางแพลตฟอร์มที่ไม่มีการตั้งค่าดังกล่าว (I01e2c)
เวอร์ชัน 1.4.0
4 กันยายน 2024
androidx.wear.compose:compose-*:1.4.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงสำคัญตั้งแต่เวอร์ชัน 1.3.0
ScalingLazyColumn
และPicker
รองรับอินพุตแบบหมุนโดยค่าเริ่มต้นแล้ว ขอแนะนำให้นำการจัดการแบบหมุนที่ชัดเจนออกและใช้ลักษณะการทำงานเริ่มต้นของระบบ หากจำเป็น ให้ใช้พารามิเตอร์rotaryScrollableBehavior
เพื่อกำหนดค่าลักษณะการทำงานแบบเลื่อนหรือแบบสแนป สำหรับลักษณะการทำงานแบบสแนป ขอแนะนำให้ระบุลักษณะการทำงานแบบสแนปและความสามารถในการเลื่อนด้วยการสัมผัสโดยใช้พารามิเตอร์flingBehavior
Modifier.rotaryScrollable
เป็นตัวแก้ไขใหม่ที่เชื่อมต่อเหตุการณ์การหมุนกับคอนเทนเนอร์ที่เลื่อนได้ ซึ่งช่วยให้ผู้ใช้เลื่อนได้โดยใช้เม็ดมะยมหรือขอบหน้าปัดหมุนบนอุปกรณ์ Wear OSSwipeDismissableNavHost
ตอนนี้มีภาพเคลื่อนไหวเมื่อกดเข้าสำหรับการเปลี่ยนฉากในแอปแล้วPositionIndicator
จะแสดงโดยค่าเริ่มต้นเมื่อหน้าจอแสดงเป็นครั้งแรก
การเปลี่ยนแปลงเพิ่มเติม
- หากต้องการดูชุดการเปลี่ยนแปลงที่สมบูรณ์ยิ่งขึ้นซึ่งเปิดตัวในเวอร์ชัน 1.3.0 โปรดดูบันทึกประจำรุ่นเบต้า 01
เวอร์ชัน 1.4.0-rc01
21 สิงหาคม 2024
androidx.wear.compose:compose-*:1.4.0-rc01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
- เราได้อัปเดตการอ้างอิง Compose เป็น 1.7.0-rc01 และปักหมุดการนำทาง Wear Compose เป็น androidx.lifecycle 2.8.3
เวอร์ชัน 1.4.0-beta03
12 มิถุนายน 2024
androidx.wear.compose:compose-*:1.4.0-beta03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-beta03 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้อัปเดต
Modifier.rotaryScrollable
เพื่อแทนที่การใช้ "focusable" ด้วย "focusTarget" ซึ่งจะช่วยปรับปรุงประสิทธิภาพ (Id294b) - เราได้แก้ไขปัญหาที่
ProgressIndicator
ประกาศซ้ำภายใต้TalkBack
แล้ว (I94563) - เราได้อัปเดตโปรไฟล์พื้นฐานของไลบรารี Wear Compose แล้ว (I3cbc3)
เวอร์ชัน 1.4.0-beta02
29 พฤษภาคม 2024
androidx.wear.compose:compose-*:1.4.0-beta02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้เพิ่มความกว้างของขอบเขตที่ส่งไปยังโปรแกรมอ่านหน้าจอจากข้อความโค้งเพื่อแก้ไขปัญหาเกี่ยวกับการตัดข้อความ (Id865f)
- เราได้จำกัดขอบเขตของ
HorizontalPageIndicator
ที่ส่งไปยังโปรแกรมอ่านหน้าจอ โดยก่อนหน้านี้ตัวบ่งชี้จะครอบครองทั้งหน้าจอ (Id8d7a)
เวอร์ชัน 1.4.0-beta01
14 พฤษภาคม 2024
androidx.wear.compose:compose-*:1.4.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
การเปิดตัว Compose สำหรับ Wear OS เวอร์ชัน 1.4-beta01 แสดงให้เห็นว่าไลบรารีเวอร์ชันนี้มีฟีเจอร์ครบถ้วนและ API ถูกล็อกแล้ว (ยกเว้นที่ทำเครื่องหมายว่าอยู่ในขั้นทดลอง) Wear Compose 1.4 มีฟังก์ชันใหม่ต่อไปนี้
- เราได้เพิ่ม
Modifier.rotaryScrollable
ซึ่งเป็นตัวแก้ไขใหม่ที่เชื่อมต่อเหตุการณ์การหมุนกับคอนเทนเนอร์ที่เลื่อนได้ เพื่อให้ผู้ใช้เลื่อนผ่านเม็ดมะยมหรือขอบหมุนบนอุปกรณ์ Wear OS ได้ นอกจากนี้ScalingLazyColumn
และPicker
ยังรองรับการป้อนข้อมูลแบบหมุนโดยค่าเริ่มต้นด้วย ใช้พารามิเตอร์rotaryScrollableBehavior
เพื่อกำหนดค่าลักษณะการทำงานของการเลื่อนหรือการสแนป สำหรับลักษณะการทำงานของการสแนป ขอแนะนำให้ระบุการสแนปผ่านพารามิเตอร์flingBehavior
สำหรับการเลื่อนด้วยการสัมผัสด้วย SwipeDismissableNavHost
ตอนนี้มีภาพเคลื่อนไหวเมื่อกดเข้าสำหรับการเปลี่ยนฉากในแอปแล้วPositionIndicator
จะแสดงโดยค่าเริ่มต้นเมื่อหน้าจอแสดงเป็นครั้งแรกSelectableChip
และSplitSelectableChip
ได้รับการเพิ่มเป็นรูปแบบของToggleChip
ใช้ร่วมกับRadioButton
เพื่อให้ความหมายที่เลือกได้แทนความหมายที่สลับได้เพื่อการช่วยเหลือพิเศษListHeader
ตอนนี้รองรับการปรับความสูงเมื่อเนื้อหาต้องการความสูงเพิ่มเติมเพื่อรองรับขนาดแบบอักษรขนาดใหญ่
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องที่ชิปที่เลือกได้จะประกาศการแตะสองครั้งเพื่อสลับเมื่อเลือกอยู่แล้ว (I7ed88)
เวอร์ชัน 1.4.0-alpha08
1 พฤษภาคม 2024
androidx.wear.compose:compose-*:1.4.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha08 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้ทำการเปลี่ยนแปลงต่อไปนี้กับ Rotary API ใหม่ โดยเปลี่ยนชื่อ
Modifier.rotary
เป็นModifier.rotaryScrollable
เปลี่ยนชื่ออินเทอร์เฟซRotaryBehavior
เป็นRotaryScrollableBehavior
และฟังก์ชันhandleScrollEvent
เป็นperformScroll
เปลี่ยนชื่อRotaryScrollableAdapter
เป็นRotaryScrollableLayoutInfoProvider
และนำพร็อพเพอร์ตี้scrollableState
ออก (I0c8a6) - เราได้ทำการเปลี่ยนแปลงเพิ่มเติมใน Rotary API โดยเปลี่ยนชื่อ
RotaryScrollableLayoutInfoProvider
เป็นRotarySnapLayoutInfoProvider
(เนื่องจากต้องใช้ผู้ให้บริการนี้เฉพาะสำหรับการหมุนที่มีการสแนป) และเปลี่ยนประเภทของพารามิเตอร์snapOffset
ในRotaryScrollableDefaults.snapBehavior snapOffset
จาก Int เป็น Dp (Iddebe) - เราได้เปลี่ยนชื่อพารามิเตอร์
clickInteractionSource
ในSplitSelectableChip
เป็นcontainerInteractionSource
แล้ว (Ia8f84) - เราได้อัปเดตชื่อพารามิเตอร์การเรียกกลับการคลิกสำหรับ
SplitSelectableChip
จากonClick
เป็นonSelectionClick
และจากonBodyClick
เป็นonContainerClick
(I32237)
การแก้ไขข้อบกพร่อง
- เราได้ปรับปรุงระยะขอบแนวนอนสำหรับ
PositionIndicator
เป็น 2dp (เดิมคือ 5dp) เพื่อแก้ไขข้อบกพร่องที่PositionIndicator
(แถบเลื่อน) ทับซ้อนกับเนื้อหาที่เลื่อนได้ โปรดทราบว่าการเปลี่ยนแปลงนี้คาดว่าจะทำให้ภาพหน้าจอที่มีอยู่ซึ่งมีPositionIndicator
ใช้งานไม่ได้เนื่องจากการเปลี่ยนแปลงระยะขอบ (I57472) - เราได้ปรับปรุงเอกสารประกอบสำหรับ Rotary API ใหม่โดยอธิบายความแตกต่างระหว่างอุปกรณ์หมุนความละเอียดต่ำกับความละเอียดสูง (I63abe)
- เราได้แก้ไขข้อยกเว้นที่อยู่นอกช่วงใน
SwipeDismissableNavHost
ซึ่งอาจเกิดขึ้นเมื่อค่าอัลฟ่าที่ประมาณค่าน้อยกว่า 0 (Ib75a1, b/335782510)
เวอร์ชัน 1.4.0-alpha07
17 เมษายน 2024
androidx.wear.compose:compose-*:1.4.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha07 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่ม
Modifier.rotary
ซึ่งเป็นตัวแก้ไขใหม่ที่เชื่อมต่อเหตุการณ์การหมุนกับคอนเทนเนอร์ที่เลื่อนได้ เพื่อให้ผู้ใช้เลื่อนผ่านเม็ดมะยมหรือขอบหมุนบนอุปกรณ์ Wear OS ได้ นอกจากนี้ScalingLazyColumn
และ Picker ยังรองรับอินพุตแบบหมุนโดยค่าเริ่มต้น พร้อมการโอเวอร์โหลดใหม่ที่มีพารามิเตอร์rotaryBehavior
สำหรับระบุการกำหนดค่าของการเลื่อนหรือการสแนป หากตั้งค่าพารามิเตอร์rotaryBehavior
เป็น snap เราขอแนะนำให้ระบุ snap ผ่านพารามิเตอร์flingBehavior
ด้วยสำหรับการเลื่อนด้วยการแตะ (I2ef6f) NestedScroll
แหล่งที่มา Drag และ Fling จะถูกแทนที่ด้วยUserInput
และSideEffect
เพื่อรองรับคำจำกัดความที่ขยายออกไปของแหล่งที่มาเหล่านี้ ซึ่งตอนนี้รวมถึงภาพเคลื่อนไหว (Side Effect) และล้อเมาส์และแป้นพิมพ์ (UserInput) (I40579)- เราได้เพิ่ม
SelectableChip
และSplitSelectableChip
เพื่อให้เห็นความแตกต่างระหว่างตัวควบคุมการเปิด/ปิด เช่นSwitch/Checkbox
กับตัวควบคุมที่เลือกได้ เช่นRadioButton
ชัดเจนยิ่งขึ้น ซึ่งจะแทนที่โอเวอร์โหลดของToggleChip/SplitToggleChip
ที่เพิ่มไว้ก่อนหน้านี้ด้วยพารามิเตอร์selectionControl
(Ia0217) - อัปเดตตัวปรับระดับการแชร์ของ
IndeterminateStrokeWidth
ในProgressIndicatorDefaults
เป็นสาธารณะแล้ว (I5b5a4)
เวอร์ชัน 1.4.0-alpha06
3 เมษายน 2024
androidx.wear.compose:compose-*:1.4.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้เพิ่มฉบับร่างภายในของการรองรับการหมุน ซึ่งเป็นส่วนหนึ่งของความพยายามที่ยิ่งใหญ่กว่าในการย้ายลักษณะการทำงานของการหมุนจาก Horologist ไปยัง AndroidX (I617d1)
- เราได้เพิ่มฉบับร่างภายในของการรองรับการสัมผัส ซึ่งเป็นส่วนหนึ่งของความพยายามที่ยิ่งใหญ่กว่าในการย้ายลักษณะการทำงานแบบหมุนไปยัง AndroidX จาก Horologist (I5568a)
เวอร์ชัน 1.4.0-alpha05
20 มีนาคม 2024
androidx.wear.compose:compose-*:1.4.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้เผยแพร่พร็อพเพอร์ตี้
initialCenterItemIndex
และinitialCenterItemScrollOffset
ของScalingLazyListState
ต่อสาธารณะแล้ว (I0c616) - เราได้เผยแพร่
FullScreenStrokeWidth
จากProgressIndicatorDefaults
ต่อสาธารณะแล้ว (Ibea23)
การแก้ไขข้อบกพร่อง
- เราได้ปรับปรุงประสิทธิภาพของ
PositionIndicator
โดยลดจำนวนการโทรไปยังlayoutInfo
จากScalingLazyColumn
(Idc83d)
เวอร์ชัน 1.4.0-alpha04
6 มีนาคม 2024
androidx.wear.compose:compose-*:1.4.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่มการโอเวอร์โหลดใหม่สำหรับ
ToggleChip
และSplitToggleChip
ซึ่งใช้พารามิเตอร์selectionControl
แทนพารามิเตอร์toggleControl
ควรใช้กับตัวควบคุมRadioButton
เพื่อให้ความหมายที่เลือกได้แทนความหมายที่สลับได้สำหรับการช่วยเหลือพิเศษ (I1d6d9) - เราได้อัปเดตชื่อพารามิเตอร์สำหรับ
selectionControl
โอเวอร์โหลดใหม่จากonSelected
เป็นonSelect
สำหรับToggleChip
และSplitToggleChip
(I1a971)
เวอร์ชัน 1.4.0-alpha03
21 กุมภาพันธ์ 2024
androidx.wear.compose:compose-*:1.4.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราเลิกใช้งาน Wrapper
Modifier.inspectable
แล้ว API นี้จะสร้างการลบล้างตัวแก้ไขมากกว่าที่จำเป็น ดังนั้นเราจึงไม่แนะนำให้ใช้ API นี้ เราขอแนะนำให้นักพัฒนาแอปใช้เมธอดinspectableProperties()
ในModifierNodeElement
หากต้องการแสดงพร็อพเพอร์ตี้ตัวแก้ไขต่อเครื่องมือ (Ib3236)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องในเอกสารประกอบสำหรับคำอธิบายประกอบ
WearPreview*
แล้ว (Id526d)
เวอร์ชัน 1.4.0-alpha02
7 กุมภาพันธ์ 2024
androidx.wear.compose:compose-*:1.4.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องในการปัดเพื่อแสดง ซึ่งทำให้สามารถโต้ตอบ (และยกเลิก) การดำเนินการที่ทำกับรายการหนึ่งได้โดยเริ่มปัดรายการอื่น (Ide059)
- เราได้อัปเดต
ListHeader
เพื่อรองรับการปรับความสูงเมื่อเนื้อหาต้องการความสูงเพิ่มเติมเพื่อรองรับขนาดแบบอักษรขนาดใหญ่ (I7290c, b/251166127)
เวอร์ชัน 1.4.0-alpha01
24 มกราคม 2024
androidx.wear.compose:compose-*:1.4.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เราได้เพิ่มภาพเคลื่อนไหวตอนเข้าใน
SwipeDismissableNavHost
สำหรับการเปลี่ยนภายในแอปแล้ว (cfeb79a) PositionIndicator
จะแสดงโดยค่าเริ่มต้นเมื่อหน้าจอแสดงเป็นครั้งแรก การเปลี่ยนแปลงนี้มีขึ้นเพื่อช่วยให้เป็นไปตามหลักเกณฑ์ด้านคุณภาพของ Wear ซึ่งหมายความว่าคุณจะต้องอัปเดตการทดสอบภาพหน้าจอบนหน้าจอที่มีPositionIndicator
เนื่องจากก่อนหน้านี้PositionIndicator
จะไม่แสดง (419cef7)
การเปลี่ยนแปลง API
- เราได้เพิ่ม API การกระเพื่อมใหม่ในไลบรารี
wear:compose-material
และwear:compose-material3
ซึ่งจะมาแทนที่rememberRipple
ที่เลิกใช้งานแล้ว นอกจากนี้ ยังเพิ่มCompositionLocal
,LocalUseFallbackRippleImplementation
ชั่วคราวเพื่อเปลี่ยนคอมโพเนนต์ Material ให้กลับไปใช้rememberRipple/RippleTheme
API ที่เลิกใช้งานแล้ว การตั้งค่านี้จะนำออกในการเผยแพร่เวอร์ชันเสถียรถัดไป และมีไว้เพื่อช่วยในการย้ายข้อมูลชั่วคราวในกรณีที่คุณระบุRippleTheme
ที่กำหนดเอง ดูข้อมูลการย้ายข้อมูลและข้อมูลเบื้องหลังเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่ developer.android.com (af92b21) - เราได้อัปเดต
ColorScheme
ให้เปลี่ยนแปลงไม่ได้ ซึ่งทำให้การอัปเดตสีแต่ละรายการมีประสิทธิภาพน้อยลง แต่ทำให้การใช้สีที่พบบ่อยมีประสิทธิภาพมากขึ้น เหตุผลที่อยู่เบื้องหลังการเปลี่ยนแปลงนี้คือแอปส่วนใหญ่ไม่ได้มี Use Case หลักเป็นการอัปเดตสีแต่ละสี ยังคงทำได้ แต่จะมีการจัดองค์ประกอบใหม่มากกว่าเดิม ซึ่งจะช่วยลดจำนวนการสมัครใช้บริการสถานะผ่านโค้ด Material ทั้งหมดได้อย่างมาก และจะส่งผลต่อต้นทุนการเริ่มต้นและการรันไทม์ของ Use Case มาตรฐานมากขึ้น (f5c48b7) - คอมโพเนนต์ Wear Material และ Wear Material3 ที่แสดง
MutableInteractionSource
ใน API ได้รับการอัปเดตให้แสดงMutableInteractionSource
ที่อนุญาตให้เป็น Null ได้ ซึ่งค่าเริ่มต้นจะเป็น Null ไม่มีการเปลี่ยนแปลงเชิงความหมายที่นี่ การส่งค่า null หมายความว่าคุณไม่ต้องการยกMutableInteractionSource
และระบบจะสร้างภายในคอมโพเนนต์หากจำเป็น การเปลี่ยนเป็น null จะทำให้คอมโพเนนต์บางอย่างไม่จัดสรรMutableInteractionSource
เลย และทำให้คอมโพเนนต์อื่นๆ สร้างอินสแตนซ์เมื่อจำเป็นเท่านั้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพในคอมโพเนนต์เหล่านี้ หากไม่ได้ใช้MutableInteractionSource
ที่ส่งไปยังคอมโพเนนต์เหล่านี้ เราขอแนะนำให้ส่งค่าเป็น null แทน นอกจากนี้ เราขอแนะนำให้คุณทำการเปลี่ยนแปลงที่คล้ายกันในคอมโพเนนต์ของคุณเองด้วย (f8fa920) - เราได้อัปเดต
rememberExpandableState
เพื่อบันทึกสถานะขยาย ซึ่งช่วยให้มั่นใจได้ว่าระบบจะจัดเก็บข้อมูลเมื่อไปยังหน้าจออื่น และจะกู้คืนข้อมูลเมื่อกลับมายังหน้าจอเดิม (5c80095)
การแก้ไขข้อบกพร่อง
- เราได้อัปเดตการตั้งค่า
ReduceMotion
เพื่อใช้เครื่องมือฟังที่รับรู้ถึงวงจรของกิจกรรม (7c6b122) - เราได้อัปเดต Listener ของ
TouchExplorationStateProvider
ให้รับรู้ถึงวงจรของกิจกรรม (be28b01) - เราได้นำเลเยอร์ Materialcore สำหรับ
CompactButton
ออกเพื่อปรับปรุงประสิทธิภาพ (25db8e9) - เราได้ปรับปรุง
BasicSwipeToDismissBox
ให้รองรับออฟเซ็ต NaN ได้ดียิ่งขึ้นเพื่อหลีกเลี่ยงข้อยกเว้น (b983739) - เราได้อัปเดต
BasicSwipeToDismissBox
เพื่อให้มั่นใจว่าค่าอัลฟ่าอยู่ในช่วง 0,1 - เราได้แก้ไขข้อบกพร่องใน
ToggleButton
,SplitToggleButton
,Checkbox
,Switch
และRadioButton
เพื่อไม่ให้ประกาศการช่วยเหลือพิเศษซ้ำ (ก่อนหน้านี้ บทบาทเชิงความหมายซ้ำกัน) (d11eeb7)
เวอร์ชัน 1.3
เวอร์ชัน 1.3.1
3 เมษายน 2024
androidx.wear.compose:compose-*:1.3.1
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.1 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องในการปัดเพื่อแสดง ซึ่งทำให้สามารถโต้ตอบ (และยกเลิก) การดำเนินการที่ทำกับรายการหนึ่งได้โดยเริ่มปัดรายการอื่น (Ide059)
เวอร์ชัน 1.3.0
24 มกราคม 2024
androidx.wear.compose:compose-*:1.3.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.2.0
- ตอนนี้คลาส
SwipeToDismissBoxState
การแจงนับSwipeToDismissValue
และฟังก์ชันส่วนขยายModifier.edgeSwipeToDismiss
เป็นส่วนหนึ่งของแพ็กเกจandroidx.wear.compose.foundation
แต่ละรายการแล้วแทนที่จะเป็นแพ็กเกจandroidx.wear.compose.material
สถาปัตยกรรมที่อัปเดตนี้ช่วยให้คุณใช้การจัดการท่าทางสัมผัสได้อย่างอิสระจากข้อควรพิจารณาด้านการออกแบบอื่นๆ เวิร์กโฟลว์ของ Material Design เช่น การใช้สีจากธีมที่กำหนดค่าไว้ จะได้รับการจัดการแยกกัน - คลาส
SwipeToRevealCard
และSwipeToRevealChip
ช่วยให้คุณใช้recommended swipe-to-reveal guidance
ได้ คลาสSwipeToRevealSample
แสดงวิธีใช้คอมโพเนนต์เหล่านี้ การเปิดตัวเวอร์ชัน 1.3.0-alpha02 ของเราได้มีการเปลี่ยนแปลงที่ทำให้ออบเจ็กต์
Chip
และToggleChip
มีความสูงเพิ่มขึ้นเพื่อรองรับการปรับขนาดแบบอักษรที่ผู้ใช้เลือกได้ดียิ่งขึ้น ซึ่งอาจทำให้เกิดการตัดเสียงบางส่วน ในการแก้ไขปัญหานี้ ตอนนี้large
รูปร่างสำหรับMaterialTheme
ใช้รัศมีมุมที่ใหญ่ขึ้น (26 dp แทน 24 dp) ออบเจ็กต์Chip
และToggleChip
ใช้รัศมีมุมใหม่นี้เพื่อหลีกเลี่ยงการตัดเนื้อหาที่มุมของชิปและToggleChip
Chips
และToggleChips
ส่วนใหญ่จะไม่มีการเปลี่ยนแปลงเนื่องจากมีความสูงเริ่มต้นที่ 52 dp อย่างไรก็ตาม ออบเจ็กต์Chip
และToggleChip
ที่มีข้อความป้ายกำกับหลักหรือรองหลายบรรทัด หรือออบเจ็กต์ที่มีการลบล้างความสูง อาจทำให้การทดสอบด้วยภาพหน้าจอไม่สำเร็จ
การเปลี่ยนแปลงเพิ่มเติม
หากต้องการดูชุดการเปลี่ยนแปลงที่สมบูรณ์ยิ่งขึ้นซึ่งเปิดตัวในเวอร์ชัน 1.3.0 โปรดดูบันทึกประจำรุ่นเบต้า 01
คำแนะนำในการติดตั้งใช้งาน
- หากแอปอนุญาตให้ผู้ใช้เลื่อนดูเนื้อหาของหน้าจอ เช่น ในแอปที่อิงตามแผนที่ ให้ปิดการจัดการการปัดโดยตั้งค่า
userSwipeEnabled
เป็นfalse
ใน ComposableSwipeDismissableNavHost
และใส่ปุ่มที่อนุญาตให้ผู้ใช้ไปที่หน้าจอก่อนหน้า - หากต้องการปิดภาพเคลื่อนไหวสำหรับตัวบ่งชี้ตำแหน่งระหว่างภาพเคลื่อนไหวแบบค่อยๆ ปรากฏและเปลี่ยนตำแหน่งภายในรายการที่เลื่อนได้ ให้ใช้ออบเจ็กต์
SnapSpec
- ขณะรอให้แอปสื่อโหลดเนื้อหาสำหรับการเล่น ให้แสดง Composable ที่ว่างเปล่า
Placeholder
- หากต้องการสร้างคอลเล็กชันของรายการที่ขยายได้ตามต้องการ ให้ลองใช้คลาส
ExpandableStateMapping
เวอร์ชันทดลอง
เวอร์ชัน 1.3.0-rc01
10 มกราคม 2024
androidx.wear.compose:compose-*:1.3.0-rc01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-rc01 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
-
เราได้อัปเดต
MaterialTheme
รูปร่างขนาดใหญ่ให้ใช้รัศมีมุมโค้ง 26dp และตอนนี้ชิปและToggleChip
จะใช้รูปร่างนี้ การเปลี่ยนแปลงนี้จำเป็นต่อการรองรับการปรับความสูงเมื่อเนื้อหาต้องการความสูงเพิ่มเติมเพื่อรองรับขนาดแบบอักษรขนาดใหญ่ มิฉะนั้นรูปร่างสเตเดียมที่มีอยู่จะตัดเนื้อหาข้อความบางส่วนรูปที่ 1: ข้อความที่ถูกตัดที่มุม รูปที่ 2: ข้อความไม่ถูกตัด การเปลี่ยนแปลงนี้อาจทำให้การทดสอบภาพหน้าจอใช้งานไม่ได้ (I2e6ae)
เวอร์ชัน 1.3.0-beta02
13 ธันวาคม 2023
androidx.wear.compose:compose-*:1.3.0-beta02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้กู้คืนการปัดตามที่ตั้งใจไว้ใน
BasicSwipeToDismissBox
แล้ว ซึ่งได้รับการแก้ไขในการเปิดตัวครั้งก่อนเพื่อให้ส่วนสไลด์ของการเปลี่ยนฉากเกิดขึ้นขณะที่นิ้วแตะหน้าจอ (Id8e76)
เวอร์ชัน 1.3.0-beta01
15 พฤศจิกายน 2023
androidx.wear.compose:compose-*:1.3.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta01 มีคอมมิตเหล่านี้
การเปิดตัว Compose สำหรับ Wear OS เวอร์ชัน 1.3-beta01 แสดงให้เห็นว่าไลบรารีเวอร์ชันนี้มีฟีเจอร์ครบถ้วนและ API ถูกล็อกแล้ว (ยกเว้นที่ทำเครื่องหมายว่าเป็นการทดลอง) Wear Compose 1.3 มีฟังก์ชันใหม่ต่อไปนี้
- เราได้ย้ายข้อมูล
SwipeToDismissBoxState
,SwipeToDismissValue
และModifier.edgeSwipeToDismiss
จากandroidx.wear.compose.material
ไปยังandroidx.wear.compose.foundation
พร้อมกับการติดตั้งใช้งานการปัดเพื่อปิดที่เกี่ยวข้องในBasicSwipeToDismissBox
ซึ่งช่วยให้สามารถใช้การจัดการท่าทางสัมผัสสำหรับการปัดเพื่อปิดได้อย่างอิสระจาก Material Design เช่น จากSwipeDismissableNavHost
ในandroidx.wear.compose.navigation
SwipeToDismissBox
จากandroidx.wear.compose.material
ยังคงแนะนำให้ใช้กับ Material Design เนื่องจากจะดึงสีจากMaterialTheme
จากนั้นมอบหมายการติดตั้งใช้งานที่เหลือให้กับBasicSwipeToDismissBox
SwipeDismissableNavHost
รองรับพารามิเตอร์userSwipeEnabled
ใหม่แล้วเพื่อให้ปิดการจัดการการปัดสำหรับหน้าจอที่ไม่จำเป็นได้BasicSwipeToDismissBox
ได้ปรับปรุงการจัดการโฟกัสโดยใช้HierarchicalFocusCoordinator
SwipeToReveal
มี Composable ใหม่SwipeToRevealCard
และSwipeToRevealChip
ใน Material ซึ่งเป็นไปตามคำแนะนำด้าน UX ที่แนะนำสำหรับCard
และChip
นอกจากนี้ยังรองรับการเลิกทำสำหรับการดำเนินการรองด้วยDefaultTextStyle
จะปิดการเว้นวรรคแบบอักษรเพื่อให้สอดคล้องกันในแพลตฟอร์ม AndroidChip
และToggleChip
จะปรับความสูงให้พอดีกับเนื้อหาที่ขยายเนื่องจากแบบอักษรขนาดใหญ่เพื่อการช่วยเหลือพิเศษ- ตอนนี้
PositionIndicator
มีข้อกำหนดของภาพเคลื่อนไหวแต่ละรายการสำหรับภาพเคลื่อนไหวแบบจางเข้า จางออก และเปลี่ยนตำแหน่งแล้ว เราขอแนะนำให้ปิดการจางเข้าและการเปลี่ยนตำแหน่งเมื่อใช้กับรายการที่เลื่อนได้เพื่อประสิทธิภาพ ExpandableStateMapping
มีวิธีใหม่ในการสร้างExpandableStates
เมื่อจำเป็นต้องสร้างตามความต้องการและไม่จำเป็นต้องมีขอบเขต@Composable
Placeholder
ตอนนี้อนุญาตให้รีเซ็ตได้หากเนื้อหาไม่อยู่ในสถานะพร้อมใช้งานอีกต่อไป นอกจากนี้ การตั้งค่าลดการเคลื่อนไหวจะมีผลกับเอฟเฟกต์ระยิบระยับและการเคลื่อนไหวแบบเช็ดออกในPlaceholder
ด้วย
ปัญหาที่ทราบ
PositionIndicator
จะไม่แสดงในตอนแรกเมื่อหน้าจอแสดงเป็นครั้งแรก เราตั้งใจที่จะทำการเปลี่ยนแปลงในเวอร์ชัน 1.4 อัลฟ่าช่วงต้นเพื่อให้แสดงในตอนแรก แต่จะไม่มีภาพเคลื่อนไหว
การเปลี่ยนแปลง API
- เราได้เปลี่ยนชื่อระดับพื้นฐาน
SwipeToDismissBox
เป็นBasicSwipeToDismissBox
ซึ่งจะทำให้เห็นความแตกต่างระหว่างคอมโพเนนต์ระดับ Foundation กับระดับ Material ได้ชัดเจนยิ่งขึ้นSwipeToDismissBox
โดยตัวหลังจะดึงสีจากMaterialTheme
เพื่อใช้ในเลเยอร์กึ่งโปร่งใสและมอบหมายการติดตั้งใช้งานที่เหลือให้กับBasicSwipeToDismissBox
(Ibecfc) - เราได้ทําเครื่องหมาย
rememberExpandableStateMapping
เป็นเวอร์ชันทดลองและปรับปรุงประสิทธิภาพของexpandableItem
(I5f6bc) - เราได้แทนที่คลาส
SwipeToRevealAction
ใน MaterialSwipeToReveal
Card และ Chip API ด้วย API ที่อิงตามสล็อตโดยใช้ ComposableSwipeToRevealPrimaryAction
,SwipeToRevealSecondaryAction
และSwipeToRevealUndoAction
โปรดดูโค้ดตัวอย่างเพื่อดูตัวอย่างวิธีใช้ API ใหม่ (Ia8943) - เราได้แทนที่แฟล็กภาพเคลื่อนไหว
PositionIndicator
ด้วยพารามิเตอร์AnimationSpec
คุณปิดใช้ภาพเคลื่อนไหวแต่ละรายการได้โดยส่งsnap
เป็นAnimationSpec
(I6c523)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องที่เกิดจากข้อความโค้งที่จำกัดเมื่อมีการจำกัดขนาด (I50efe)
- เราได้แก้ไขข้อขัดข้องที่อาจเกิดขึ้นเนื่องจาก NaN ที่เกี่ยวข้องกับ
curvedComposable
(I970eb) แล้ว - เราได้เปลี่ยนกลับการนำภาพเคลื่อนไหวไฮไลต์การเปลี่ยนตำแหน่งใน
PositionIndicator
ออกแล้ว (Ieb424) - เราได้นำเลเยอร์หลักของ Material ออกจากชิป Material เพื่อปรับปรุงประสิทธิภาพ (If2dcb)
เวอร์ชัน 1.3.0-alpha08
18 ตุลาคม 2023
androidx.wear.compose:compose-*:1.3.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha08 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้เพิ่มฟีเจอร์การแจ้งว่าไม่เหมาะสมแต่ละรายการให้กับโอเวอร์โหลด
PositionIndicator
เพื่อควบคุมภาพเคลื่อนไหวต่างๆ ได้แก่showFadeInAnimation
,showFadeOutAnimation
และshowPositionAnimation
เราได้เลิกใช้งาน API เวอร์ชันก่อนหน้าและส่งต่อการเรียกไปยัง API ใหม่แล้ว เพื่อประสิทธิภาพและ UX ที่สอดคล้องกัน เมื่อใช้PositionIndicator
กับรายการที่เลื่อนได้ เราขอแนะนำให้ปิดใช้ FlagshowFadeInAnimation
และshowPositionAnimation
หากใช้PositionIndicator
เป็นตัวบ่งชี้แบบสแตนด์อโลน เช่น สำหรับการเปลี่ยนแปลงระดับเสียง เราขอแนะนำให้เปิดภาพเคลื่อนไหวทั้ง 3 รายการ (I44294) - เราได้เลิกใช้งาน Material
SwipeToDismissBoxState
,SwipeToDismissValue
และedgeSwipeToDismiss
หลังจากย้ายฟังก์ชันการปัดเพื่อปิดไปที่wear.compose.foundation
โปรดแทนที่ด้วยค่าที่เทียบเท่ากับwear.compose.foundation
(Iee8c9)
การแก้ไขข้อบกพร่อง
- เราได้อัปเดตโปรไฟล์พื้นฐานสำหรับไลบรารี Wear Compose Foundation, Material และ Navigation (Idb060)
- เราได้เปลี่ยนกลับลักษณะการทำงานของ
PositionIndicator
ที่เปิดตัวใน CL ก่อนหน้า เพื่อให้PositionIndicator
มีภาพเคลื่อนไหวเมื่อแสดงหน้าจอเป็นครั้งแรก เราตั้งใจที่จะทำการเปลี่ยนแปลงที่คล้ายกันในเวอร์ชันอัลฟ่า 1.4 ช่วงต้น เพื่อให้PositionIndicator
แสดงในตอนแรก แต่จะไม่มีภาพเคลื่อนไหว (I41843) - เราได้แก้ไขปัญหาด้านประสิทธิภาพบางอย่างใน
PositionIndicator
แล้ว (I1c654, b/302399827) - เราได้เพิ่มประสิทธิภาพการติดตั้งใช้งานเริ่มต้นของผู้ให้บริการสถานะการสำรวจการแตะให้ใช้
State<Boolean>
แทนสถานะที่ได้มา (Ieec4d) - เราได้ตั้งค่า
systemGestureExclusion
สี่เหลี่ยมผืนผ้าสำหรับ Android 13 ขึ้นไป (Ib1f4b)
เวอร์ชัน 1.3.0-alpha07
4 ตุลาคม 2023
androidx.wear.compose:compose-*:1.3.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha07 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้เพิ่มฟีเจอร์การแจ้งว่าไม่เหมาะสมใน
PositionIndicator
เพื่อควบคุมภาพเคลื่อนไหวต่างๆ ได้แก่showFadeInAnimation
,showFadeOutAnimation
และshowPositionAnimation
เราได้เลิกใช้งาน API เวอร์ชันก่อนหน้าและส่งต่อการเรียกไปยัง API ใหม่แล้ว เพื่อประสิทธิภาพและ UX ที่สอดคล้องกัน เมื่อใช้PositionIndicator
กับรายการที่เลื่อนได้ เราขอแนะนำให้ปิดใช้ FlagshowFadeInAnimation
และshowPositionAnimation
หากใช้PositionIndicator
เป็นตัวบ่งชี้แบบสแตนด์อโลน เช่น สำหรับการเปลี่ยนแปลงระดับเสียง เราขอแนะนำให้เปิดภาพเคลื่อนไหวทั้ง 3 รายการ (Ia2d63)
การแก้ไขข้อบกพร่อง
- เราได้ปรับปรุงการปัดเพื่อแสดงการเคลื่อนไหวโดยเพิ่มภาพเคลื่อนไหวแบบจางลงในข้อความการกระทำหลัก และทำให้การกระทำรองจางลง/เปลี่ยนขนาดไอคอนเมื่อปัดจนสุด (Ib7223)
- เราขอแนะนำให้คุณทำให้การปัดเพื่อเปิดเผยเข้าถึงได้ และเราได้เพิ่มการดำเนินการเพื่อการช่วยเหลือพิเศษที่กำหนดเองลงในตัวอย่างการปัดเพื่อเปิดเผยแล้ว (I42224)
- เราได้ปรับปรุงประสิทธิภาพของ
SwipeToDismissBox
ซึ่งรวมถึงการรีแฟกเตอร์เพื่อให้มั่นใจว่าตรรกะเริ่มต้นจะไม่ทริกเกอร์การจัดองค์ประกอบใหม่ ตอนนี้SwipeToDismissBox
จะวาดเป็นขนาดเต็มหน้าจอ (Ie0aa2) - เราได้แก้ไขข้อบกพร่องที่ทำให้
PositionIndicator
หายไปอย่างไม่ถูกต้องแล้ว (I2091a) - ปรับปรุงประสิทธิภาพของ
PositionIndicator
โดยการเพิ่มประสิทธิภาพการจัดองค์ประกอบใหม่ มีการเพิ่ม Flag ใหม่เพื่อควบคุมภาพเคลื่อนไหว (fadeIn
,fadeOut
และpositionChange
) ในภายหลัง (ดูการเปลี่ยนแปลง API) (Ifac7d) - เราได้เพิ่มการทดสอบ Microbenchmark สำหรับ
PositionIndicator
(Idf875)
เวอร์ชัน 1.3.0-alpha06
20 กันยายน 2023
androidx.wear.compose:compose-*:1.3.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha06 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- เราได้เพิ่มการรองรับ
Modifier.edgeSwipeToDismiss
ด้วยSwipeToReveal
(I95774, b/293444286) - เราได้เพิ่มตัวอย่างสำหรับวัสดุ
SwipeToRevealChip
และSwipeToRevealCard
(Ieb974) - เราได้อัปเดตโปรไฟล์พื้นฐานสำหรับไลบรารี Wear Compose Foundation และ Material (I1dd1f)
เวอร์ชัน 1.3.0-alpha05
6 กันยายน 2023
androidx.wear.compose:compose-*:1.3.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha05 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- เราได้เพิ่มการจัดการในการปัดเพื่อแสดงเพื่อให้ปัดได้ทีละ 1 รายการเท่านั้น (I3cd7a)
- ปรับปรุงเอกสารประกอบของ
ScalingLazyColumnDefaults
เพื่อให้สอดคล้องกับลักษณะการทำงานจริงได้ดียิ่งขึ้น (I886d3)
เวอร์ชัน 1.3.0-alpha04
23 สิงหาคม 2023
androidx.wear.compose:compose-*:1.3.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha04 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เราได้เพิ่มการรองรับการเลิกทำสำหรับการดำเนินการรองของ
SwipeToReveal
(I7a22d)
การเปลี่ยนแปลง API
- เพิ่ม
HorizontalPageIndicator
ในไลบรารี Wear Material3 (Ifee99) - อัปเดตเครื่องมือแสดงตัวอย่าง Wear Compose เพื่อใช้ไลบรารี
androidx.wear.tooling.preview
(Ib036e)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องในปุ่มกลมที่ตัวแก้ไขไม่เชื่อมโยงอย่างถูกต้อง (I5e162)
เวอร์ชัน 1.3.0-alpha03
9 สิงหาคม 2023
androidx.wear.compose:compose-*:1.3.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้เพิ่ม Composable ใหม่ 2 รายการใน Material สำหรับการใช้งาน
SwipeToReveal
กับการ์ดและชิป Composable เหล่านี้เป็นไปตามคำแนะนำด้าน UX ที่แนะนำเกี่ยวกับคอมโพเนนต์ และช่วยให้นักพัฒนาแอปใช้งานSwipeToReveal
กับคอมโพเนนต์ที่มีอยู่ใน Wear Material ได้ง่ายขึ้น (I7ec65) - เราได้เปิดใช้
FloatRange
คำอธิบายประกอบเป็นข้อจำกัดของ API ซึ่งก่อนหน้านี้ระบุไว้ในความคิดเห็น (Icb401)
การแก้ไขข้อบกพร่อง
- เราได้ย้ายตรรกะการเลื่อนเริ่มต้นของ
ScalingLazyColumn
ไปไว้ในonGloballyPositioned()
แล้ว (Ic90f1) - ตอนนี้เราใช้
drawWithCache
ในPositionIndicator
,ProgressIndicator
และSelectionControls
เพื่อเพิ่มประสิทธิภาพการจัดสรรจังหวะ (I5f225, b/288234617) - เราได้แก้ไขการแสดงเครื่องหมายถูกในช่องทำเครื่องหมายในสถานะที่ปิดใช้แล้ว (Ib25bf)
- เราได้อัปเดต
Placeholder
เพื่ออนุญาตให้รีเซ็ตเพื่อแสดงตัวยึดตำแหน่งหากเนื้อหาไม่อยู่ในสถานะพร้อมใช้งานอีกต่อไป (Ibd820) - เราได้แก้ไขการทดสอบ
Placeholder
ที่ไม่เสถียร (Idb560)
เวอร์ชัน 1.3.0-alpha02
26 กรกฎาคม 2023
androidx.wear.compose:compose-*:1.3.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้จัดเตรียม
ExpandableStateMapping
ซึ่งเป็นวิธีใหม่ในการสร้างExpandableStates
สำหรับกรณีที่ต้องสร้างตามคำขอ ไม่จำเป็นต้องอยู่ภายในขอบเขต@Composable
(Iff9e0) SwipeToDismissBox
ได้ย้ายข้อมูลจากแพ็กเกจandroidx.wear.compose.material
ไปยังแพ็กเกจandroidx.wear.compose.foundation
แล้ว (I275fb)- อัปเดตไฟล์ API เพื่อใส่คำอธิบายประกอบการระงับความเข้ากันได้ (I8e87a, b/287516207)
- เราได้เผยแพร่ค่าคงที่ความสูงสำหรับ
Chip
,CompactChip
และToggleChip
(Idbfde) - เราได้เผยแพร่การเว้นวรรคแนวนอนและแนวตั้งสำหรับ
Chip
และCompactChip
ต่อสาธารณะแล้ว (Ieeaf7) - เพิ่มฟังก์ชันการทำงานเพื่อปิดการจัดการการปัดใน
SwipeDismissableNavHost
ผ่านพารามิเตอร์userSwipeEnabled
ใหม่ (Id2a0b, b/230865655) - เราได้อัปเดตไลบรารีการนำทางของ Wear Compose เพื่อใช้
SwipeToDismissBox
ใหม่จาก Wear Compose Foundation (I4ff8e)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องของลำดับ Z ซึ่ง
expandedItem
ไม่แสดงเนื้อหาที่ถูกต้องหลังจากคลิกพฤติกรรมของปุ่มเมื่อมีปุ่ม (I1899d, b/289991514) - ปรับปรุงการจัดการโฟกัสของ
SwipeToDismissBox
(และSwipeDismissableNavHost
) โดยใช้HierarchicalFocusCoordinator
(I45362, b/277852486) - เราได้แก้ไขการจัดการท่าทางสัมผัสใน
SwipeableV2
แล้ว (I89737) - เราได้สรุปโปรไฟล์พื้นฐานสำหรับการเปิดตัวเวอร์ชัน 1.2 แล้ว (Id5740)
- หลังจากย้ายข้อมูล
SwipeToDismissBox
ไปยัง Foundation แล้ว การใช้งาน MaterialSwipeToDismissBox
จะส่งต่อข้อมูลไปยัง Foundation และระบุค่าสีเริ่มต้นจากธีม (If8451) - เราได้เพิ่มความหมายของส่วนหัวลงใน
ListHeader
(Ic5420) - ตอนนี้
Chip
และToggleChip
จะปรับความสูงให้พอดีกับเนื้อหาที่ขยายเนื่องจากใช้แบบอักษรขนาดใหญ่เพื่อการช่วยเหลือพิเศษเมื่อจำเป็น (Iaf302) - แก้ไขข้อบกพร่องในบทบาทเชิงความหมายของพื้นที่ที่แตะได้ของ
SplitToggleChip
เพื่อการช่วยเหลือพิเศษ (Ieed3a) - ตอนนี้การตั้งค่าลดการเคลื่อนไหวจะปิดเอฟเฟกต์ระยิบระยับและการเคลื่อนไหวแบบเช็ดออกในตัวยึดตำแหน่ง (I91046)
- ตอนนี้
Stepper
และInlineSlider
รองรับการคลิกซ้ำเมื่อกดค้างไว้เพื่อให้คุณเพิ่ม/ลดค่าของStepper
และInlineSlider
ได้อย่างรวดเร็วโดยการกดปุ่ม + หรือ - ค้างไว้ (I27359)
เวอร์ชัน 1.3.0-alpha01
21 มิถุนายน 2023
androidx.wear.compose:compose-*:1.3.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha01 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- ตามที่ได้ประกาศไว้ใน
1.2.0-alpha07
และ1.2.0-alpha10
ตอนนี้เรากำลังเปลี่ยนDefaultTextStyle
เพื่อปิดการเพิ่มระยะขอบแบบอักษรให้สอดคล้องกันในแพลตฟอร์ม Android การเปลี่ยนแปลงนี้จะช่วยแก้ปัญหาข้อความบางส่วนที่ถูกตัดออกเมื่อใช้แบบอักษรขนาดใหญ่ และอาจส่งผลต่อเลย์เอาต์หน้าจอด้วย ดังนั้นคุณจึงต้องอัปเดตการทดสอบภาพหน้าจอ เช่น เราเห็นข้อความที่ถูกตัดที่นี่ (Ic6a86)

- โดยจะไม่มีการแสดงอีกต่อไปเมื่อปิดการเว้นวรรคแบบอักษร

- เราได้อัปเดต
wear.compose.foundation
ให้เป็น API Dependency ของwear.compose.material
(I72004, b/285404743) - เราได้แก้ไขข้อบกพร่องใน
SwipeToDismissBox
แล้ว ตอนนี้ระบบจะส่งคีย์พื้นหลังและเนื้อหาไปยังบล็อกการจดจำเพื่อให้สร้างตัวแก้ไขใหม่เมื่อเนื้อหาหรือพื้นหลังมีการเปลี่ยนแปลง (Ib876c, b/280392104) - เราได้อัปเดต
TimeText
เพื่อใช้ภาษาเมื่อเลือกรูปแบบเวลา 12 หรือ 24 ชั่วโมง (If4a3d) - เราได้แก้ไขความไม่สอดคล้องกันในพารามิเตอร์เริ่มต้นของ
SwipeToDismissBox
contentScrimColor
แล้ว (I2d70f) - เราได้ปรับปรุงการจัดการการเคลื่อนไหวใน
SwipeToReveal
(I28fb7)
ปัญหาที่ทราบ
- การรองรับขนาดแบบอักษรที่ผู้ใช้กำหนดค่าเป็นข้อกำหนดด้านการช่วยเหลือพิเศษ เราทราบว่าชิปหลายบรรทัดอาจทำให้ข้อความถูกตัดออกเมื่อแสดงด้วยแบบอักษรขนาดใหญ่ ดังนั้นเราจะอัปเดตชิปในเวอร์ชันอัลฟ่า 1.3 ช่วงต้นเพื่อปรับความสูงในกรณีดังกล่าว
เวอร์ชัน 1.2
เวอร์ชัน 1.2.1
18 ตุลาคม 2023
androidx.wear.compose:compose-*:1.2.1
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องเมื่อ
PositionIndicator
หายไปอย่างไม่ถูกต้อง (7a167f)
เวอร์ชัน 1.2.0
9 สิงหาคม 2023
androidx.wear.compose:compose-*:1.2.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
- เปิดตัว Compose สำหรับ Wear OS 1.2.0 เวอร์ชันเสถียร (อ่านเพิ่มเติม)
- ดูรายการการเปลี่ยนแปลงที่สำคัญใน Wear Compose 1.2 ได้ในบันทึกประจำรุ่นสำหรับ (Compose สำหรับ Wear OS 1.2 Beta01)
เวอร์ชัน 1.2.0-rc01
26 กรกฎาคม 2023
androidx.wear.compose:compose-*:1.2.0-rc01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-rc01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้สรุปโปรไฟล์พื้นฐานสำหรับการเปิดตัวเวอร์ชัน 1.2 (Id5740)
เวอร์ชัน 1.2.0-beta02
7 มิถุนายน 2023
androidx.wear.compose:compose-*:1.2.0-beta02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เพิ่มตัวแปรทดลองใหม่
LocalReduceMotion
CompositionLocal
ซึ่งจะปิดใช้การปรับขนาดและการจางในScalingLazyColumn
(I58024)
การแก้ไขข้อบกพร่อง
- เราได้อัปเดตโปรไฟล์พื้นฐานสำหรับไลบรารีพื้นฐานและไลบรารีวัสดุของ Wear Compose(I4725d)
- เราได้แก้ไขความไม่สอดคล้องกันในค่าเริ่มต้นของพารามิเตอร์
SwipeToDismissBox
contentScrimColor
(I2d70f) แล้ว - เราได้แก้ไข
DefaultTextStyle
ค่าเริ่มต้นที่ใช้สำหรับการตั้งค่าIncludeFontPadding
(I737ed) แล้ว
เวอร์ชัน 1.2.0-beta01
24 พฤษภาคม 2023
androidx.wear.compose:compose-*:1.2.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta01 มีคอมมิตเหล่านี้
มีอะไรใหม่ใน Compose สำหรับ Wear OS 1.2
การเปิดตัว Compose สำหรับ Wear OS เวอร์ชัน 1.2-beta01 แสดงให้เห็นว่าไลบรารีเวอร์ชันนี้มีฟีเจอร์ครบถ้วนและ API ถูกล็อกแล้ว (ยกเว้นที่ทำเครื่องหมายว่าอยู่ในขั้นทดลอง) Wear Compose 1.2 มีฟังก์ชันใหม่ต่อไปนี้
expandableItem
และexpandableItems
เป็นคอมโพเนนต์Foundation
ใหม่ 2 รายการที่รองรับการขยายรายการภายในScalingLazyColumn
ใช้expandableItem
สำหรับรายการที่ขยายได้รายการเดียว เช่น ข้อความที่มีจำนวนบรรทัด ใช้expandableItems
สำหรับกลุ่มรายการที่ขยายได้ และexpandableButton
เพื่อลดความซับซ้อนในการสร้างปุ่มที่ยุบหลังจากขยายเนื้อหาแล้วHierarchicalFocusCoordinator
- Composable ทดลองนี้ช่วยให้ทำเครื่องหมาย Sub-Tree ของ Composition เป็น Focus Enabled หรือ Focus Disabled ได้Picker
- ตอนนี้ API มีuserScrollEnabled
เพื่อควบคุมว่าเครื่องมือเลือกจะทำงานเมื่อผู้ใช้เลื่อนหรือไม่PickerGroup
- Composable ใหม่สำหรับจัดการ Picker หลายรายการพร้อมกัน โดยจะจัดการโฟกัสระหว่างเครื่องมือเลือกโดยใช้HierarchicalFocusCoordinator
API และเปิดใช้การจัดกึ่งกลางรายการเครื่องมือเลือกโดยอัตโนมัติPlaceholder
- เราได้อัปเดตภาพเคลื่อนไหว "ประกาย" และ "เช็ดออก" ตอนนี้ระบบจะใช้เอฟเฟกต์การลบออกทันทีเมื่อเนื้อหาพร้อมScalingLazyColumn
- เราได้ย้ายข้อมูลScalingLazyColumn
และชั้นเรียนที่เกี่ยวข้องจากandroidx.wear.compose.material.ScalingLazyColumn
ไปยังandroidx.wear.compose.foundation.lazy.ScalingLazyColumn
แล้ว โปรดอัปเดตเพื่อใช้เวอร์ชันFoundation.Lazy
SwipeToReveal
- เราได้เพิ่มการรองรับแบบทดลองสำหรับการปัดเพื่อเปิดเผยเป็นวิธีเข้าถึงการดำเนินการรอง ซึ่งเป็นการเสริมรูปแบบ "กดค้าง" ที่มีอยู่Stepper
- ตอนนี้มีโอเวอร์โหลดพร้อมพารามิเตอร์enableRangeSemantics
เพิ่มเติมเพื่อช่วยในการปิดใช้ความหมายของช่วงเริ่มต้นPreviews
- เราได้เพิ่มคำอธิบายประกอบที่กำหนดเองต่อไปนี้สำหรับการแสดงตัวอย่าง Composable บนหน้าจอ Wear:WearPreviewSmallRound
แสดงตัวอย่าง Composable บนอุปกรณ์ทรงกลมขนาดเล็กWearPreviewLargeRound
แสดงตัวอย่าง Composable บนอุปกรณ์ทรงกลมขนาดใหญ่WearPreviewSquare
แสดงตัวอย่าง Composable บนอุปกรณ์สี่เหลี่ยมจัตุรัส นอกจากนี้ คำอธิบายประกอบต่อไปนี้และคำอธิบายประกอบแบบหลายตัวอย่างWearPreviewFontScales
จะแสดงตัวอย่าง Composable บนอุปกรณ์ Wear ที่มีขนาดแบบอักษรหลายขนาด ส่วนWearPreviewDevices
จะแสดงตัวอย่าง Composable บนอุปกรณ์ Wear ต่างๆ- เราได้เพิ่ม
DefaultTextStyle
ลงใน Wear Compose ซึ่งจะตั้งค่าพร็อพเพอร์ตี้PlatformTextStyle.includeFontPadding
เป็นจริงโดยค่าเริ่มต้น (นี่คือการตั้งค่าปัจจุบัน) ซึ่งจะช่วยให้เราซิงค์การปิดการเพิ่มระยะห่างของแบบอักษรโดยค่าเริ่มต้นกับไลบรารี Compose ในเวอร์ชัน 1.3 อัลฟ่าช่วงต้นได้ โปรดดูข้อมูลเพิ่มเติมที่ 1.2.0-alpha10
ฟีเจอร์ใหม่
- เราได้เพิ่มการรองรับแบบทดลองสำหรับการปิดใช้การปรับขนาดและภาพเคลื่อนไหวแบบจางเมื่อเปิดการตั้งค่า reduce_motion (I58024)
การแก้ไขข้อบกพร่อง
- ปรับปรุงเอกสารประกอบสำหรับ
angularWidthDp
ในCurvedSize.kt
(Iab75c) - ตอนนี้
SwipeDismissableNavHost
จะบันทึกคำเตือนพร้อมสาเหตุที่อาจทำให้ Backstack ว่างเปล่า การดำเนินการนี้มีขึ้นเพื่อป้องกันการขัดข้องที่ไม่คาดคิดซึ่งเกิดจากIllegalArgumentException
ซึ่งจะเกิดขึ้นเมื่อ Backstack ว่างเปล่า (I04a81, b/277700155)
เวอร์ชัน 1.2.0-alpha10
10 พฤษภาคม 2023
androidx.wear.compose:compose-*:1.2.0-alpha10
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha10 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เราได้เพิ่มการรองรับการปัดเพื่อแสดงเป็นวิธีเข้าถึงการดำเนินการรอง รูปแบบนี้จะเสริมรูปแบบ "กดค้าง" ซึ่งเป็นวิธีที่ผู้ใช้ใช้เพื่อแสดงการกระทํารอง (ที่แตกต่างกัน) อยู่แล้ว (I60862)
การเปลี่ยนแปลง API
- เราได้เพิ่ม
RevealScope
ลงใน Action Composable ในSwipeToReveal
ซึ่งจะให้สิทธิ์เข้าถึงออฟเซ็ตที่การดำเนินการเพิ่มเติมจะปรากฏขึ้น (I3fd56)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่
ScalingLazyColumn
ค้างอยู่ที่ Wear API 33 หลังจากปัด (Ic4599) - เราได้ปรับปรุงประสิทธิภาพของ
PositionIndicator
เพื่อลดความกระตุก (I35e92) - เราได้แก้ไขข้อบกพร่องในชิปและ
CompactChip
ซึ่งทำให้ระบบไม่ตั้งค่าบทบาทเชิงความหมายเป็นRole.Button
อีกต่อไป (I93f91, b/277326264)
ปัญหาที่ทราบ
เราพบข้อบกพร่องใน Android Studio ซึ่งทำให้การแสดงตัวอย่างล้มเหลวเมื่อมีการใส่คำอธิบายประกอบด้วย @WearPreviewDevices และ @WearPreviewFontScales โดยเราวางแผนที่จะเผยแพร่การแก้ไขในเร็วๆ นี้ โปรดทราบว่าคำอธิบายประกอบตัวอย่างการสวมใส่อื่นๆ จะทำงานตามที่ตั้งใจไว้ใน Android Studio Giraffe 2022.3.1 ขึ้นไป
ในเวอร์ชัน 1.2.0-alpha07 เราได้เพิ่ม DefaultTextStyle ลงใน Wear Compose โดยยังคงค่า PlatformTextStyle.includeFontPadding ที่มีอยู่เป็นจริง สำหรับข้อมูลพื้นฐาน โปรดดูแก้ไขการเว้นวรรคแบบอักษรใน Compose เราจะเปลี่ยน DefaultTextStyle เพื่อปิดการเว้นวรรคแบบอักษรในเวอร์ชันอัลฟ่า 1.3 ช่วงต้น เพื่อให้สอดคล้องกันในแพลตฟอร์ม Android การเปลี่ยนแปลงนี้จะช่วยแก้ปัญหาข้อความบางส่วนที่ถูกตัดออกเมื่อใช้แบบอักษรขนาดใหญ่ และอาจส่งผลต่อเลย์เอาต์หน้าจอด้วย ดังนั้นคุณจึงต้องอัปเดตการทดสอบภาพหน้าจอ เช่น เมื่อใช้ขนาดแบบอักษรขนาดใหญ่ เราจะเห็นข้อความถูกตัดดังนี้

- โดยจะไม่มีการแสดงอีกต่อไปเมื่อปิดการเว้นวรรคแบบอักษร

คุณใช้การตั้งค่าใหม่ได้แล้วตอนนี้โดยการลบล้างการจัดรูปแบบตัวอักษรในธีม ดูโค้ดตัวอย่าง
เวอร์ชัน 1.2.0-alpha09
19 เมษายน 2023
androidx.wear.compose:compose-*:1.2.0-alpha09
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha09 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
angularSizeDp
ไปยังCurvedModifier
api เพื่อตั้งค่าความกว้างเชิงมุมใน DP (I89a52)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขปัญหาการช่วยเหลือพิเศษในเดโมเครื่องมือเลือกเวลา(Id0eb7) แล้ว
เวอร์ชัน 1.2.0-alpha08
5 เมษายน 2023
androidx.wear.compose:compose-*:1.2.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha08 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้เปลี่ยนชื่อ
ExpandableItemsState
เป็นExpandableState
แล้ว (If85ea) - เราได้เพิ่ม
expandableButton
เพื่อให้การสร้างปุ่มที่ยุบเมื่อขยายเนื้อหาง่ายขึ้น และยังได้อัปเดตตัวอย่างที่ขยายได้ด้วย (Iae309)
การแก้ไขข้อบกพร่อง
- ตัวอย่างที่ขยายได้ที่ได้รับการปรับปรุงเพื่อแสดงความเป็นไปได้ที่มากขึ้น แก้ไขภาพเคลื่อนไหวของ
expandableItem
เพื่อให้เนื้อหาอยู่ตรงกลางตลอดภาพเคลื่อนไหว (I2f637) - อัปเดต
ToggleControls
เพื่อหลีกเลี่ยงการจัดองค์ประกอบใหม่เพิ่มเติมเมื่อเคลื่อนไหวสีด้วยตนเองโดยใช้ State (I5d319)
เวอร์ชัน 1.2.0-alpha07
22 มีนาคม 2023
androidx.wear.compose:compose-*:1.2.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha07 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้ย้ายคอมโพเนนต์รายการที่ขยายได้ (เพิ่มใน 1.2.0-alpha06) จาก Material ไปยัง Foundation เนื่องจากไม่มีการอ้างอิงที่มีความหมายถึง
MaterialTheme
(Ib0525)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อขัดข้องที่เกิดขึ้นในหน้าจอที่ใช้
PickerGroup
โดยตรวจสอบว่าPickerGroup
จัดการโฟกัสได้อย่างถูกต้องเมื่อไม่มีเครื่องมือเลือกใดๆ ที่มีโฟกัส นอกจากนี้ เรายังเพิ่มการรองรับการเลื่อน RSB ในการสาธิต Picker ด้วย (If8c19) - เราได้ปรับปรุงการเปลี่ยนผ่านของกล่องโต้ตอบแล้ว ตอนนี้การเปลี่ยนผ่านตอนต้นจะราบรื่นขึ้นเพื่อให้ตรงกับการเปลี่ยนผ่านตอนท้าย (Ib5af9)
- เราได้เพิ่ม
DefaultTextStyle
ลงใน Wear Compose ซึ่งจะตั้งค่าพร็อพเพอร์ตี้PlatformTextStyle.includeFontPadding
เป็นจริงโดยค่าเริ่มต้น (นี่คือการตั้งค่าปัจจุบัน) ซึ่งจะช่วยให้เราซิงโครไนซ์การปิดการเว้นวรรคแบบอักษรโดยค่าเริ่มต้นกับไลบรารี Compose ได้ในอนาคต โปรดดูข้อมูลพื้นฐานที่ (แก้ไขการเว้นวรรคแบบอักษรใน Compose) (I2aee8) - ย้อนกลับ
UpsideDownCake
การขึ้นต่อกันของตัวอย่างผ่าน activity-compose ที่บล็อกการเผยแพร่แอปไปยัง Google Play Store (I6443d)
เวอร์ชัน 1.2.0-alpha06
8 มีนาคม 2023
androidx.wear.compose:compose-*:1.2.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha06 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มคอมโพเนนต์
CurvedBox
ซึ่งจะวางคอมโพเนนต์ซ้อนกันในโลกโค้ง (I29200) - เพิ่มรายการที่ขยายได้ - คอมโพเนนต์ใหม่ 2 รายการเพื่อรองรับทั้งกลุ่มรายการที่ขยายได้ใน
ScalingLazyColumn
หรือรายการเดียวที่ขยายได้ เช่น ข้อความที่จำนวนบรรทัดขยายได้ (I95dd5) - เราได้เพิ่มคำอธิบายประกอบที่กำหนดเองต่อไปนี้สำหรับการแสดงตัวอย่าง Composable บนหน้าจอ Wear:
WearPreviewSmallRound
แสดงตัวอย่าง Composable บนอุปกรณ์ทรงกลมขนาดเล็กWearPreviewLargeRound
แสดงตัวอย่าง Composable บนอุปกรณ์ทรงกลมขนาดใหญ่WearPreviewSquare
แสดงตัวอย่าง Composable บนอุปกรณ์สี่เหลี่ยมจัตุรัส นอกจากนี้ คำอธิบายประกอบต่อไปนี้และคำอธิบายประกอบแบบหลายตัวอย่างWearPreviewFontScales
จะแสดงตัวอย่าง Composable บนอุปกรณ์ Wear ที่มีขนาดแบบอักษรหลายขนาด ส่วนWearPreviewDevices
จะแสดงตัวอย่าง Composable บนอุปกรณ์ Wear ต่างๆ หากต้องการใช้ตัวอย่างเหล่านี้ คุณต้องใช้ Android Studio เวอร์ชันล่าสุด (Giraffe Canary 6) ขึ้นไป โปรดทราบว่าหากคำอธิบายประกอบเหล่านี้ไม่เหมาะกับวัตถุประสงค์ของคุณ คุณยังคงใช้การแสดงตัวอย่างได้ และรองรับการปรับแต่งเพิ่มเติมผ่านพารามิเตอร์ (I397ff) - เราได้ทำเครื่องหมาย
HierarchicalFocusCoordinator
เป็นฟีเจอร์ทดลองในขณะที่พิจารณาให้เป็นตัวเลือกในการย้ายไปยังไลบรารี Compose หลัก เนื่องจากมีการใช้งานอย่างกว้างขวาง (I3a768)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องใน
HierarchicalFocusCoordinator
เมื่อมีการเปลี่ยนแปลง Lambda ที่ส่งผ่านสำหรับพารามิเตอร์focusEnabled
ตอนนี้เราจะใช้ Lambda ใหม่ได้อย่างถูกต้องแล้ว (Icb353) - เราได้อัปเดตสีเนื้อหาที่ปิดใช้เริ่มต้นเป็นสีพื้นหลังเมื่อใช้สีหลักเป็นพื้นหลังใน
Button
,CompactButton
,Chip
,CompactChip
และToggleButton
ซึ่งจะช่วยปรับปรุงคอนทราสต์เพื่อการช่วยเหลือพิเศษ (I527cc)
เวอร์ชัน 1.2.0-alpha05
22 กุมภาพันธ์ 2023
androidx.wear.compose:compose-*:1.2.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha05 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อัปเดต
PickerGroup
API เพื่ออนุญาตให้ส่งต่อข้อจำกัดขั้นต่ำไปยัง Composable โดยไม่บังคับ เมื่อตั้งค่าเป็น "จริง" ระบบจะอนุญาตข้อจำกัดขั้นต่ำที่ส่งผ่านจาก Composable หลักในPickerGroup
หากตั้งค่าเป็น "เท็จ"PickerGroup
จะรีเซ็ตข้อจำกัดขั้นต่ำ (I3e046) - เราได้เพิ่ม
animateScrollToOption
ลงใน Picker API เพื่อรองรับภาพเคลื่อนไหวแบบเป็นโปรแกรมไปยังตัวเลือก Picker ที่เฉพาะเจาะจง (I6fe67)
การแก้ไขข้อบกพร่อง
- เราได้อัปเดต
HorizontalPageIndicator
เพื่อรองรับเลย์เอาต์จากขวาไปซ้าย (Ia4359) - เพิ่มการทดสอบภาพหน้าจอสำหรับเลย์เอาต์จากขวาไปซ้ายใน
HorizontalPageIndicator
(I6fbb8) - เพิ่มการทดสอบเพิ่มเติมใน
SwipeDismissableNavHostTest
ที่ใช้TestNavHostController
(I61d54)
เวอร์ชัน 1.2.0-alpha04
8 กุมภาพันธ์ 2023
androidx.wear.compose:compose-*:1.2.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
PickerGroup
สำหรับการจัดการตัวเลือกหลายรายการพร้อมกันโดยใช้ Focus API โดยจะจัดการโฟกัสระหว่างเครื่องมือเลือกต่างๆ เปิดใช้การจัดกึ่งกลางอัตโนมัติของเครื่องมือเลือกตามพารามิเตอร์ และอนุญาตให้นักพัฒนาแอปเปลี่ยนโฟกัสระหว่างเครื่องมือเลือกต่างๆ ขณะจัดการเหตุการณ์จากกลุ่ม ในโหมด TalkbackPickerGroup
จะจัดการโฟกัสของ Talkback โดยการย้ายโฟกัสไปยังเครื่องมือเลือกที่เลือกจากกลุ่ม (I60840)
การเปลี่ยนแปลง API
- เราได้เพิ่มการโอเวอร์โหลดให้กับ Stepper ด้วยพารามิเตอร์
enableRangeSemantics
เพิ่มเติมเพื่อช่วยในการปิดใช้ความหมายของช่วงเริ่มต้น (Ia61d4)
การแก้ไขข้อบกพร่อง
- อนุญาตให้ฝัง
ScalingLazyColumn
ไว้ในหน้าเว็บที่เลื่อนในแนวนอน (Iec3f8, b/266555016) - การปรับปรุง kdoc ของ Stepper และ
StepperTest
การล้างข้อมูลการทดสอบ (Ic118e) - อัปเดตการขึ้นต่อกันของ
androidx.navigation
เป็นเวอร์ชัน 2.5.3 (If58ed)
เวอร์ชัน 1.2.0-alpha03
25 มกราคม 2023
androidx.wear.compose:compose-*:1.2.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้ย้ายข้อมูล
ScalingLazyColumn
(และชั้นเรียนที่เกี่ยวข้อง) จากandroidx.wear.compose.material.ScalingLazyColumn
ไปยังandrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn
แล้ว (ดูตัวอย่างนี้สำหรับการย้ายข้อมูล) ตำแหน่งใหม่นี้จะสอดคล้องกับตำแหน่งของcompose.foundation.lazy.LazyColumn
มากขึ้น และดูเป็นธรรมชาติกว่าเนื่องจากไม่ใช่คอมโพเนนต์ Material ที่มีข้อจำกัด การเปลี่ยนแปลงนี้กำลังเกิดขึ้นเพื่อเตรียมพร้อมสำหรับไลบรารี Material3 ใหม่ ซึ่งเราจะดำเนินการควบคู่ไปกับไลบรารี Material ที่มีอยู่ (I060e7)
การเปลี่ยนแปลงต่อไปนี้เป็นส่วนหนึ่งของการย้ายข้อมูล ScalingLazyColumn
จาก Material ไปยัง Foundation.Lazy
PositionIndicator
API ที่กำหนดเป้าหมายเป็น MaterialScalingLazyColumn
ถูกเลิกใช้งานแล้ว โปรดอัปเดตเป็นFoundation.Lazy ScalingLazyColumn
นอกจากนี้ ยังได้เพิ่มฟิลด์anchorType
ลงในScalingLazyListLayoutInfo
ด้วย (I29d95)ScalingLazyColumn
ได้รับการทำเครื่องหมายว่าเลิกใช้งานแล้วในแพ็กเกจ Wear Compose Material (I16d34)- เราได้อัปเดตตัวแก้ไข
ScrollAway
เพื่อใช้ScalingLazyListState
จาก Wear ComposeFoundation.Lazy
และเลิกใช้งานการโอเวอร์โหลดที่ใช้ScalingLazyListState
จาก Wear Compose Material (Ifc42c) - เราได้อัปเดต Dialog API ให้ใช้
ScalingLazyListState
จากFoundation.Lazy
และเลิกใช้งานการโอเวอร์โหลดที่ใช้ MaterialScalingLazyListState
(Ic8960) - เราได้อัปเดต Picker API ให้ใช้
ScalingParams
จากFoundation.Lazy
และเลิกใช้งานโอเวอร์โหลดที่ใช้ MaterialScalingParams
แล้ว (Idc3d8)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องที่ทำให้เกิดการจัดองค์ประกอบใหม่ที่ไม่จำเป็นใน
ScalingLazyListState.centerItemIndex
โดยตรวจสอบว่าระบบจะพุชการอัปเดตก็ต่อเมื่อค่ามีการเปลี่ยนแปลงจริง (Ia9f38) - เราได้ปรับปรุงประสิทธิภาพของ
SwipeToDismissBox
(I3933b) - เพิ่มการทดสอบเปรียบเทียบสำหรับ
ScalingLazyColumn
ใน Wear Compose Foundation (Ie00f9) - เราได้อัปเดตเมธอดของคลาส
ScalingLazyColumn
ภายในบางรายการใน Material เพื่อใช้เมธอดที่เทียบเท่าจากFoundation.Lazy
(I38aab) - เราได้แก้ไขปัญหาบางอย่างในการทดสอบ Picker และเพิ่มการทดสอบเพิ่มเติมเพื่อตรวจสอบการเลื่อนด้วยออฟเซ็ต (I6ac34)
- เราได้ย้ายข้อมูล
ScalingLazyColumn
การสาธิตการผสานรวมให้ขึ้นอยู่กับFoundation.Lazy
แทนที่จะเป็น MaterialScalingLazyColumn
(Ic6caa) - เราได้เพิ่มพารามิเตอร์
fromDate/toDate
ที่ไม่บังคับลงในเดโมDatePicker
(I961cd)
เวอร์ชัน 1.2.0-alpha02
11 มกราคม 2023
androidx.wear.compose:compose-*:1.2.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้การทดสอบ UI ของ Android Compose จะเรียกใช้การส่งเลย์เอาต์สำหรับแต่ละเฟรมเมื่อดำเนินการเฟรมเพื่อให้เข้าสู่สถานะว่าง (เช่น ผ่าน
waitForIdle
) ซึ่งอาจส่งผลต่อการทดสอบที่ยืนยันในแต่ละเฟรมของภาพเคลื่อนไหวเลย์เอาต์ (I8ea08, b/222093277) - เพิ่มพารามิเตอร์
minLines
ลงในข้อความ Wear เพื่อให้มีลักษณะการทำงานที่สอดคล้องกับBasicText
(I24874) CompactChipTapTargetPadding
ได้รับการเผยแพร่ต่อสาธารณะเพื่อให้ปรากฏในเอกสารประกอบ (If1e70, b/234119038)
การแก้ไขข้อบกพร่อง
- ปิดใช้การสร้างหลายแพลตฟอร์มสำหรับแพ็กเกจ
wear.compose
(Iad3d7) - แก้ไข kdocs สำหรับ
scrollToOption
(I6f9a0) PlaceholderState.rememberPlaceholderState()
อัปเดตให้ใช้rememberUpdatedState
เพื่อให้สถานะจะอัปเดตหากเป็น Lambda ของonContentReady
(I02635, b/260343754)- เราได้แก้ไขปัญหาข้อความสั่นที่พบในคอมโพเนนต์
Picker
โดยใช้ประโยชน์จากกลยุทธ์การคอมโพสิตใหม่ที่เพิ่มลงในModifier.graphicsLayer
(I99302) - เราได้แก้ไขข้อบกพร่องที่ทำให้เกิดการกะพริบในเดโม
DatePicker
(I660bd) แล้ว - เราได้ปรับปรุงการช่วยเหลือพิเศษสำหรับการสาธิตเครื่องมือเลือกวันที่และเวลาแบบ 12 ชั่วโมง (I05e12)
- เราได้อัปเดตการสาธิตเครื่องมือเลือกเวลาและวันที่เพื่อให้เครื่องมือเลือกไม่ได้รับผลกระทบจากการเปลี่ยนแปลง RSB เมื่อไม่ได้เลือก (I4aecb)
เวอร์ชัน 1.2.0-alpha01
7 ธันวาคม 2022
androidx.wear.compose:compose-*:1.2.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เราได้อัปเดตฟังก์ชันการทำงานของตัวยึดตำแหน่งเวอร์ชันทดลองเพื่อให้ระบบใช้เอฟเฟกต์ "เช็ดออก" ทันทีเมื่อเนื้อหาพร้อมใช้งาน แทนที่จะรอให้ลูปภาพเคลื่อนไหวถัดไปเริ่ม นอกจากนี้ เรายังได้อัปเดตภาพเคลื่อนไหวแบบกากเพชรและแบบเช็ดออกด้วย (I5a7f4)
การเปลี่ยนแปลง API
- เราได้เพิ่ม
HierarchicalFocusCoordinator
composable เพื่อให้ทำเครื่องหมายซับทรีของ Composition เป็นเปิดใช้โฟกัสหรือปิดใช้โฟกัสได้(I827cb) - เราได้เพิ่มพร็อพเพอร์ตี้ใหม่เพื่อลบล้างบทบาทเชิงความหมายสำหรับ
ToggleButton
.(I67132) - เราได้อัปเดต
TimeTextDefaults.TimeFormat12Hours
เพื่อนำ AM/PM ออกในTimeText
ซึ่งจะเปลี่ยนค่าเริ่มต้นของพารามิเตอร์timeSource
ในTimeText
API (I1eb7f) - เราได้ขยาย Picker API เพื่อปรับปรุงการช่วยเหลือพิเศษสำหรับหน้าจอที่มีเครื่องมือเลือกหลายรายการ มีพร็อพเพอร์ตี้ใหม่
userScrollEnabled
เพื่อควบคุมว่าเครื่องมือเลือกจะทำงานเมื่อผู้ใช้เลื่อนหรือไม่ (I3c3aa)
การแก้ไขข้อบกพร่อง
- เราได้เปลี่ยนความกว้างของเส้นขอบเริ่มต้นสำหรับ
OutlinedButton/OutlinedCompactButton
จาก 2.dp เป็น 1.dp เพื่อให้ตรงกับข้อกำหนด UX สุดท้าย (Icf84d) - เราได้เพิ่ม
autoCentering topPadding
โดยประมาณเมื่อไม่มีเนื้อหา เพื่อลดผลกระทบของรายการแรกที่เพิ่มลงในScalingLazyColumn
ว่างเปล่าที่ดูเหมือนจะเลื่อนเข้าที่ การเปลี่ยนแปลงนี้จะคำนวณจำนวนการเว้นที่ว่างด้านบนที่จำเป็นโดยสมมติว่ารายการเริ่มต้นมีความสูง 0.dp สำหรับScalingLazyListAnchorType.ItemStart
ระบบจะคำนวณระยะห่างจากขอบด้านบนที่ถูกต้อง แต่สำหรับScalingLazyListAnchorType.ItemCenter
การคำนวณนี้จะไม่ถูกต้องเนื่องจากต้องใช้ความสูงของรายการเพื่อปรับขนาดเนื้อหาอย่างถูกต้อง ซึ่งจะส่งผลให้เกิดการเลื่อนเล็กน้อยไปยังตำแหน่งที่ต้องการโดยอิงตามความสูงจริงของรายการ (I239a4) - เราได้อัปเดตเลเยอร์พื้นหลังที่ใช้กับ
SwipeToDismiss
ภาพเคลื่อนไหวให้ตรงกับแพลตฟอร์ม Wear (I9003e) - เราได้แก้ไข
PositionIndicator
การจัดการLazyListState
และScalingLazyListState
สำหรับรายการที่มีขนาด 0 เพื่อหลีกเลี่ยงข้อผิดพลาดจากการหารด้วย 0 แล้ว (Ic28dd)
เวอร์ชัน 1.1
เวอร์ชัน 1.1.2
8 กุมภาพันธ์ 2023
androidx.wear.compose:compose-foundation:1.1.2
androidx.wear.compose:compose-material:1.1.2
และ androidx.wear.compose:compose-navigation:1.1.2
ออกอากาศแล้ว เวอร์ชัน 1.1.2 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขข้อบกพร่องที่ทำให้เกิดการจัดองค์ประกอบใหม่ที่ไม่จำเป็นใน
ScalingLazyListState.centerItemIndex
โดยตรวจสอบว่าระบบจะพุชการอัปเดตก็ต่อเมื่อค่ามีการเปลี่ยนแปลงจริง (Ia9f38)
เวอร์ชัน 1.1.1
11 มกราคม 2023
androidx.wear.compose:compose-foundation:1.1.1
androidx.wear.compose:compose-material:1.1.1
และ androidx.wear.compose:compose-navigation:1.1.1
ออกอากาศแล้ว เวอร์ชัน 1.1.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
PlaceholderState.rememberPlaceholderState()
อัปเดตให้ใช้rememberUpdatedState
เพื่อให้สถานะจะอัปเดตหากเป็น Lambda ของonContentReady
(I02635, b/260343754)
เวอร์ชัน 1.1.0
7 ธันวาคม 2022
androidx.wear.compose:compose-foundation:1.1.0
androidx.wear.compose:compose-material:1.1.0
และ androidx.wear.compose:compose-navigation:1.1.0
ออกอากาศแล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
- เปิดตัว Compose สำหรับ Wear OS 1.1.0 เวอร์ชันเสถียร (อ่านเพิ่มเติม)
- ดูรายการการเปลี่ยนแปลงที่สำคัญใน Wear Compose 1.1 ได้ในบันทึกประจำรุ่นสำหรับ (Compose สำหรับ Wear OS 1.1 Beta01)
ฟีเจอร์ใหม่
- เราได้อัปเดตฟังก์ชันการทำงานของตัวยึดตำแหน่งเวอร์ชันทดลองเพื่อให้ระบบใช้เอฟเฟกต์ "เช็ดออก" ทันทีเมื่อเนื้อหาพร้อมใช้งาน แทนที่จะรอให้ลูปภาพเคลื่อนไหวถัดไปเริ่ม นอกจากนี้ เรายังได้อัปเดตภาพเคลื่อนไหวแบบกากเพชรและแบบเช็ดออกด้วย (I5a7f4)
การแก้ไขข้อบกพร่อง
- เราได้เปลี่ยนความกว้างของเส้นขอบเริ่มต้นสำหรับ
OutlinedButton/OutlinedCompactButton
จาก 2.dp เป็น 1.dp เพื่อให้ตรงกับข้อกำหนด UX สุดท้าย (Icf84d) - เราได้เพิ่ม
autoCentering topPadding
โดยประมาณเมื่อไม่มีเนื้อหา เพื่อลดผลกระทบของรายการแรกที่เพิ่มลงในScalingLazyColumn
ว่างเปล่าที่ดูเหมือนจะเลื่อนเข้าที่ การเปลี่ยนแปลงนี้จะคำนวณจำนวนการเว้นที่ว่างด้านบนที่จำเป็นโดยสมมติว่ารายการเริ่มต้นมีความสูง 0.dp สำหรับScalingLazyListAnchorType.ItemStart
ระบบจะคำนวณระยะห่างจากขอบด้านบนที่ถูกต้อง แต่สำหรับScalingLazyListAnchorType.ItemCenter
การคำนวณนี้จะไม่ถูกต้องเนื่องจากต้องใช้ความสูงของรายการเพื่อปรับขนาดเนื้อหาอย่างถูกต้อง ซึ่งจะส่งผลให้เกิดการเลื่อนเล็กน้อยไปยังตำแหน่งที่ต้องการโดยอิงตามความสูงจริงของรายการ (I239a4) - เราได้อัปเดตเลเยอร์พื้นหลังที่ใช้กับภาพเคลื่อนไหว
SwipeToDismiss
ให้ตรงกับแพลตฟอร์ม Wear แล้ว(I9003e) - เราได้แก้ไข
PositionIndicator
การจัดการLazyListState
และScalingLazyListState
สำหรับรายการที่มีขนาด 0 เพื่อหลีกเลี่ยงข้อผิดพลาดจากการหารด้วย 0 แล้ว (Ic28dd)
เวอร์ชัน 1.1.0-rc01
9 พฤศจิกายน 2022
androidx.wear.compose:compose-foundation:1.1.0-rc01
androidx.wear.compose:compose-material:1.1.0-rc01
และ androidx.wear.compose:compose-navigation:1.1.0-rc01
ออกอากาศแล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้เพิ่มกฎโปรไฟล์พื้นฐานสำหรับ
Placeholders
,ScrollAway
,RadioButton
,Switch
,Checkbox
,OutlinedButton
,OutlinedCompactButton
,OutlinedChip
และOutlinedCompactChip
(I8249c) - เราได้แก้ไขข้อบกพร่องใน
Modifier.scrollAway
เพื่อให้หากitemIndex
ที่ระบุไม่ถูกต้อง (เช่น หากดัชนีรายการนั้นอยู่นอกช่วง) ระบบจะยังคงแสดงTimeText
(I2137a) - เราได้อัปเดต
SwipeToDismissBox
ภาพเคลื่อนไหวให้สอดคล้องกับการติดตั้งใช้งานแพลตฟอร์ม หลังจากภาพเคลื่อนไหวการบีบครั้งแรก ตอนนี้หน้าจอจะเลื่อนออกไปทางขวาเมื่อมีการทริกเกอร์การปิด (I41d34) - เราได้อัปเดต
Modifier.scrollAway
เพื่ออ่านเฉพาะscrollState
ภายในบล็อกการวัดเพื่อหลีกเลี่ยงการจัดองค์ประกอบตัวแก้ไขใหม่หลังจากการวัดซ้ำแต่ละครั้ง (I4c6f1) - เราได้เพิ่มเอกสารประกอบและตัวอย่างลงในตัวยึดตำแหน่งเพื่อแสดงลำดับที่ถูกต้องสำหรับ
Modifier.placeholder
และModifier.placeholderShimmer
เมื่อใช้กับ Composable เดียวกัน (Ie96f4, b/256583229) - เราได้เปลี่ยนความกว้างของเส้นขอบเริ่มต้นสำหรับ
OutlinedCompactChip/OutlinedChip
จาก 2.dp เป็น 1.dp เพื่อให้ตรงกับข้อกำหนด UX สุดท้าย (Ib3d8e) - เราได้แก้ไขข้อบกพร่องใน
rememberPickerState
ซึ่งทำให้ระบบไม่บันทึกอินพุตที่อัปเดต ดังนั้น Composable จึงไม่อัปเดตหลังจากมีการเปลี่ยนแปลงอินพุต (I49ff6, b/255323197) - เราได้ทำการอัปเดต UI บางอย่างกับตัวยึดตำแหน่ง ได้แก่ 1) เปลี่ยนการไล่ระดับสีระยิบระยับเป็น 1.5 เท่าของขนาดหน้าจอ 2) เพิ่มการผ่อนแรง (Cubic Bezier) ของความคืบหน้าของการระยิบระยับ และ 3) เร่งภาพเคลื่อนไหวการลบออก (250 มิลลิวินาที) (Id29c1)
- เราได้แก้ไขข้อบกพร่องของ UI ในเอฟเฟกต์การลบออกของตัวยึดตำแหน่งที่พื้นหลังของชิปและการ์ดถูกลบออกเร็วกว่าปกติเล็กน้อยเนื่องจากไม่ได้คำนึงถึงตำแหน่งของคอมโพเนนต์บนหน้าจอ (I2c7cb)
- เราได้อัปเดตการวาดพื้นหลังของตัวยึดตำแหน่งให้ผสานสีแทนที่จะซ้อนทับกัน (หากเป็นไปได้) เพื่อลดความเสี่ยงของการผสมอัลฟ่าของเลเยอร์ที่ครอบตัดต่างๆ จากการอนุญาตให้สีพื้นฐานซึมผ่านที่ขอบพื้นหลังของตัวยึดตำแหน่ง (I2ea26)
- เราได้แก้ไขการคำนวณ
ScalingLazyListState.centerItemIndex/centerItemOffset
เพื่อให้หากมีสินค้า 2 รายการอยู่ทั้ง 2 ด้านของเส้นกึ่งกลางของวิวพอร์ต ระบบจะพิจารณาสินค้าที่อยู่ใกล้ที่สุดเป็นcenterItem
(I30709, b/254257769) - เราได้แก้ไขข้อบกพร่องใน
ScalingLazyListState.layoutInfo.visibleItemsInfo
ซึ่งรายงานออฟเซ็ตไม่ถูกต้องระหว่างการเริ่มต้นScalingLazyColumn
ตอนนี้ระบบจะแสดงรายการที่ว่างเปล่าจนกว่ารายการทั้งหมดจะปรากฏและมีออฟเซ็ตที่ถูกต้อง เครื่องหมายScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()
จะยืนยันว่าการเริ่มต้นScalingLazyColumn
เสร็จสมบูรณ์และมองเห็นรายการต่างๆ ได้ (I3a3b8)
เวอร์ชัน 1.1.0-beta01
24 ตุลาคม 2022
androidx.wear.compose:compose-foundation:1.1.0-beta01
androidx.wear.compose:compose-material:1.1.0-beta01
และ androidx.wear.compose:compose-navigation:1.1.0-beta01
ออกอากาศแล้ว เวอร์ชัน 1.1.0-beta01 มีคอมมิตเหล่านี้
มีอะไรใหม่ใน Compose สำหรับ Wear OS 1.1
Compose สำหรับ Wear OS เวอร์ชัน 1.1.0-beta01 ระบุว่าไลบรารีรุ่นนี้มีฟีเจอร์ครบถ้วนและ API ล็อกแล้ว
- Wear Compose เวอร์ชัน 1.1 มาพร้อมฟังก์ชันใหม่ต่อไปนี้
- เครื่องมือเลือก - ปรับปรุงการช่วยเหลือพิเศษในเครื่องมือเลือกเพื่อให้หน้าจอเครื่องมือเลือกหลายรายการนำทางได้ด้วยโปรแกรมอ่านหน้าจอและเข้าถึงคำอธิบายเนื้อหาได้
- ตอนนี้ระบบจะใช้พารามิเตอร์ Picker
contentDescription
สำหรับตัวเลือก Picker ที่เลือกเท่านั้น และใช้ String ที่เป็น Null ได้ (ในการคอมมิตก่อนหน้านี้ คุณต้องส่งการแมปจากตัวเลือกไปยังคำอธิบายเนื้อหา แต่ระบบจะใช้เฉพาะตัวเลือกที่เลือกเท่านั้น) - ตอนนี้รายการในเครื่องมือเลือกจะจัดกึ่งกลางเสมอ ซึ่งแก้ไขข้อบกพร่องที่การตั้งค่า
gradientRatio
เป็น 0 จะส่งผลข้างเคียงเป็นการเปลี่ยนการจัดแนว Chip/ToggleChip
- เราได้อัปเดตการไล่ระดับสีเริ่มต้นสำหรับChip/ToggleChip
เพื่อให้สอดคล้องกับข้อกำหนด UX ล่าสุดChipDefaults.gradientBackgroundChipColors
ได้รับการอัปเดตให้เริ่มจาก 50% ของสีหลักแทนที่จะเป็น 32.5%Chip/ToggleChip
- เพิ่มการโอเวอร์โหลดสำหรับการแก้ไขรูปร่างชิปChip/Button/ToggleButton
- เพิ่มสไตล์ใหม่แบบมีเส้นขอบสำหรับชิปและปุ่ม รวมถึง Composable ใหม่OutlinedChip
และOutlinedButton
ที่ให้Chip/Button
แบบโปร่งใสที่มีเส้นขอบบาง- การ์ด - อัปเดตการไล่ระดับสีเริ่มต้นสำหรับการ์ดเพื่อให้สอดคล้องกับข้อกำหนด UX ล่าสุด
CardDefaults.cardBackgroundPainter
ได้รับการอัปเดตให้เริ่มต้นจาก 30% ของสีหลักและสิ้นสุดที่ 20% ของonSurfaceVariant
(เดิมคือ 20% ถึง 10%onSurfaceVariant
)ToggleChip.toggleChipColors
เปลี่ยนจากการไล่ระดับสีแบบเส้นตรงจาก 75% ของสีพื้นผิวเป็น 32.5% ของสีหลักเป็น 0% ของสีพื้นผิวเป็น 50% ของสีหลัก Button/ToggleButton
- เพิ่มพร็อพเพอร์ตี้สำหรับการแก้ไขรูปร่างปุ่ม- ธีม - อัปเดตสีเริ่มต้นจำนวนหนึ่งใน
MaterialTheme
เพื่อปรับปรุงการช่วยเหลือพิเศษ เนื่องจากสีเดิมมีคอนทราสต์ไม่เพียงพอ ทำให้ผู้ใช้แยกความแตกต่างระหว่างพื้นหลังของชิป/การ์ด/ปุ่มกับสีพื้นหลังของธีมได้ยาก InlineSlider/Stepper
- เพิ่มบทบาทของปุ่มเพื่อให้Talkback
ระบุปุ่มได้- Scaffold -
PositionIndicator
ตอนนี้จะอยู่ในตำแหน่งและมีขนาดที่ใช้พื้นที่เท่าที่จำเป็นเท่านั้น ซึ่งจะมีประโยชน์ เช่น หากมีการเพิ่มข้อมูลเชิงความหมายลงในปุ่ม TalkBack จะได้รับขอบเขตที่ถูกต้องของPositionIndicator
บนหน้าจอ CurvedText/TimeText
- เพิ่มModifier.scrollAway
ซึ่งเลื่อนรายการเข้า/ออกจากมุมมองในแนวตั้งตามสถานะการเลื่อน (มีการโอเวอร์โหลดเพื่อให้ทำงานร่วมกับColumn
,LazyColumn
และScalingLazyColumn
) โดยปกติแล้วScrollAway
จะใช้เพื่อเลื่อนTimeText
ออกจากมุมมองเมื่อผู้ใช้เริ่มเลื่อนรายการขึ้นCurvedText/TimeText
- เพิ่มการรองรับfontFamily
,fontStyle
และfontSynthesis
ในCurvedTextStyle
ซึ่งใช้ได้ในcurvedText
และbasicCurvedText
CurvedText/TimeText
- เพิ่มfontWeight
ลงในตัวสร้างและวิธีการคัดลอกในCurvedTextStyle
ToggleControls
- เพิ่มตัวควบคุมการเปิด/ปิดCheckbox
,Switch
และRadioButton
แบบเคลื่อนไหวสำหรับใช้กับToggleChip
และSplitToggleChip
คุณสามารถใช้ไอคอนเหล่านี้แทนไอคอนแบบคงที่ที่ToggleChipDefaults
(switchIcon
,checkboxIcon
และradioIcon
) จัดหาให้ได้- ตัวยึดตำแหน่ง - เพิ่มการรองรับตัวยึดตำแหน่งเวอร์ชันทดลอง โดยมีเอฟเฟกต์ภาพ 3 แบบที่แตกต่างกันซึ่งออกแบบมาให้ทำงานร่วมกัน
- ขั้นแรกคือเอฟเฟกต์แปรงพื้นหลังตัวยึดตำแหน่งที่ใช้ในคอนเทนเนอร์ เช่น ชิปและการ์ด เพื่อวาดทับพื้นหลังปกติเมื่อรอให้เนื้อหาโหลด
- ประการที่สองคือตัวแก้ไข (
Modifier.placeholder()
) เพื่อวาดวิดเจ็ตตัวยึดตำแหน่งรูปทรงสนามกีฬาไว้เหนือเนื้อหาที่กำลังโหลด - ประการที่สามคือเอฟเฟกต์การไล่ระดับสี/การสั่นไหวของตัวแก้ไข (
Modifier.placeholderShimmer()
) ซึ่งวาดทับเอฟเฟกต์อื่นๆ เพื่อระบุให้ผู้ใช้ทราบว่าเรากำลังรอให้ระบบโหลดข้อมูล- เอฟเฟกต์ทั้งหมดนี้ออกแบบมาให้ประสานงานกันและส่องประกาย รวมถึงเช็ดออกในลักษณะที่เรียบเรียงอย่างดีแล้ว
- อัปเดตทรัพยากร Dependency หลักของ Compose จาก 1.2 เป็น 1.3
การเปลี่ยนแปลง API
- ตอนนี้คุณระบุพารามิเตอร์แบบอักษร (
fontFamily
,fontWeight
,fontStyle
และfontSynthesis
) ได้โดยตรงเป็นพารามิเตอร์ของcurvedText
(Idc422)
การแก้ไขข้อบกพร่อง
curveText
และbasicCurvedText
จะทำงานร่วมกับ Talkback ได้อย่างถูกต้องแล้ว (มีโหนด Compose-UI ที่มีขนาดและตำแหน่งที่เหมาะสม (แต่ว่างเปล่า) ซึ่งเชื่อมโยงกับโหนดเหล่านั้น โดยใช้ข้อความเป็นคำอธิบายเนื้อหา) (I7af7c, b/210721259)- แก้ไขข้อบกพร่องใน
Picker
เมื่อPickerState.repeatedItems = false
เพื่อเพิ่มการตั้งค่าที่ชัดเจนของพารามิเตอร์ autoCentering ในScalingLazyColumn
ภายในของ Picker เพื่อให้มั่นใจว่าสามารถเลื่อนตัวเลือกที่ 0 ไปยังกึ่งกลางของมุมมองได้ (I8a4d7)
เวอร์ชัน 1.1.0-alpha07
5 ตุลาคม 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha07
androidx.wear.compose:compose-material:1.1.0-alpha07
และ androidx.wear.compose:compose-navigation:1.1.0-alpha07
ออกอากาศแล้ว เวอร์ชัน 1.1.0-alpha07 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เพิ่มการรองรับตัวยึดตำแหน่งเวอร์ชันทดลองแล้ว โดยมีเอฟเฟกต์ภาพ 3 แบบที่แตกต่างกันซึ่งออกแบบมาให้ทำงานร่วมกัน ขั้นแรกคือเอฟเฟกต์แปรงพื้นหลังตัวยึดตำแหน่งที่ใช้ในคอนเทนเนอร์ เช่น ชิปและการ์ด เพื่อวาดทับพื้นหลังปกติเมื่อรอให้เนื้อหาโหลด ประการที่สองคือตัวแก้ไข (
Modifier.placeholder()
) เพื่อวาดวิดเจ็ตตัวยึดตำแหน่งรูปทรงสนามกีฬาไว้เหนือเนื้อหาที่กำลังโหลด ประการที่สามคือเอฟเฟกต์การไล่ระดับสี/การสั่นไหวของตัวแก้ไข (Modifier.placeholderShimmer()
) ซึ่งวาดทับเอฟเฟกต์อื่นๆ เพื่อระบุให้ผู้ใช้ทราบว่าเรากำลังรอให้ระบบโหลดข้อมูล เอฟเฟกต์ทั้งหมดนี้ออกแบบมาให้ประสานงานกันและส่องประกาย รวมถึงเช็ดออกในลักษณะที่เรียบเรียงอย่างดีแล้ว (I3c339)
การเปลี่ยนแปลง API
- เพิ่มการรองรับ
fontWeight
,fontFamily
,fontStyle
และfontSynthesis
ในCurvedTextStyle
ซึ่งใช้ได้ในcurvedText
และbasicCurvedText
พารามิเตอร์ดังกล่าวสามารถใช้เพื่อระบุแบบอักษรและสไตล์ที่จะใช้กับข้อความโค้งได้(Iaa1a8),(I72759) - อัปเดตพารามิเตอร์ออฟเซ็ตของ
Modifier.scrollAway
เป็น Dp เพื่อให้สอดคล้องกับModifier.offset
(ก่อนหน้านี้เป็นพิกเซล) นอกจากนี้ ยังมีการปรับโครงสร้างใหม่เป็นLayoutModifier
เพื่อประสิทธิภาพ (I9f94b) - เราได้เปลี่ยนชื่อ
RadioButton’s circleColor
เป็นringColor
ซึ่งเป็นส่วนหนึ่งของ API การควบคุมการเปิด/ปิดใหม่ (I28fa9) - เราได้เพิ่มตัวควบคุมการเปิด/ปิด
Checkbox
,Switch
และRadioButton
แบบเคลื่อนไหวเพื่อใช้กับToggleChip
และSplitToggleChip
คุณสามารถใช้ไอคอนเหล่านี้แทนไอคอนแบบคงที่ที่ToggleChipDefaults
(switchIcon
,checkboxIcon
และradioIcon
) จัดหาให้ได้ (I8a8c4)
เวอร์ชัน 1.1.0-alpha06
21 กันยายน 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha06
androidx.wear.compose:compose-material:1.1.0-alpha06
และ androidx.wear.compose:compose-navigation:1.1.0-alpha06
ออกอากาศแล้ว เวอร์ชัน 1.1.0-alpha06 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เพิ่ม
Modifier.scrollAway
ซึ่งจะเลื่อนรายการเข้า/ออกจากมุมมองในแนวตั้งตามสถานะการเลื่อน (มีการโอเวอร์โหลดเพื่อให้ทำงานร่วมกับColumn
,LazyColumn
และScalingLazyColumn
) โดยปกติแล้วScrollAway
จะใช้เพื่อเลื่อนTimeText
ออกจากมุมมองเมื่อผู้ใช้เริ่มเลื่อนรายการขึ้น (I61766)
การแก้ไขข้อบกพร่อง
- ตอนนี้
PositionIndicator
จะมีตำแหน่งและขนาดที่ใช้พื้นที่เท่าที่จำเป็นเท่านั้น ซึ่งจะมีประโยชน์ เช่น หากมีการเพิ่มข้อมูลเชิงความหมายลงในปุ่ม TalkBack จะได้รับขอบเขตที่ถูกต้องของPositionIndicator
บนหน้าจอ (Ie6106, b/244409133)
เวอร์ชัน 1.1.0-alpha05
7 กันยายน 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha05
androidx.wear.compose:compose-material:1.1.0-alpha05
และ androidx.wear.compose:compose-navigation:1.1.0-alpha05
ออกอากาศแล้ว เวอร์ชัน 1.1.0-alpha05 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เพิ่มบทบาทของปุ่มลงใน
InlineSlider
และStepper
เพื่อให้ Talkback รู้จักปุ่มเหล่านั้น (Icb46c, b/244260275) - เราได้แก้ไขลำดับ Z ของตัวบ่งชี้ตำแหน่งและหน้าใน Scaffold แล้ว ตอนนี้ตัวบ่งชี้จะอยู่ด้านบนของภาพขนาดย่อ จึงจะไม่ถูกภาพขนาดย่อบดบังหากมีภาพขนาดย่อ (Ib988f, b/244207528)
เวอร์ชัน 1.1.0-alpha04
24 สิงหาคม 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha04
androidx.wear.compose:compose-material:1.1.0-alpha04
และ androidx.wear.compose:compose-navigation:1.1.0-alpha04
ออกอากาศแล้ว เวอร์ชัน 1.1.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้อัปเดตสีเริ่มต้นหลายสีใน MaterialTheme เพื่อปรับปรุงการช่วยเหลือพิเศษ เนื่องจากสีเดิมมีคอนทราสต์ไม่เพียงพอ ทำให้ผู้ใช้แยกความแตกต่างระหว่างพื้นหลังของชิป/การ์ด/ปุ่มกับสีพื้นหลังของธีมได้ยาก สีที่อัปเดตคือ surface(0xFF202124->0xFF303133), onPrimary(0xFF202124->0xFF303133), onSecondary(0xFF202124->0xFF303133), primaryVariant(0xFF669DF6->0xFF8AB4F8) และ onError(0xFF202124->0xFF000000) การเปลี่ยนแปลงสีแม้จะเล็กน้อย แต่อาจส่งผลต่อการทดสอบภาพหน้าจอที่มีอยู่ (81ab09)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องทางตรรกะใน
ScalingLazyColumn
ซึ่งอาจทำให้รายการที่มีจำนวนรายการน้อย (โดยปกติคือ 2 รายการ) ไม่สามารถเริ่มต้นได้และแสดงผลแบบโปร่งใส (504347)
เวอร์ชัน 1.1.0-alpha03
10 สิงหาคม 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha03
androidx.wear.compose:compose-material:1.1.0-alpha03
และ androidx.wear.compose:compose-navigation:1.1.0-alpha03
ออกอากาศแล้ว เวอร์ชัน 1.1.0-alpha03 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เพิ่มสไตล์ใหม่แบบมีเส้นขอบสำหรับ
Chips
และButtons
รวมถึง Composable ใหม่OutlinedChip
และOutlinedButton
ที่ให้Chip/Button
แบบโปร่งใสที่มีเส้นขอบบาง (Id5972)
การเปลี่ยนแปลง API
- เพิ่มการโอเวอร์โหลดสำหรับการแก้ไขรูปร่างปุ่ม (Icccde)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขขนาดของพื้นที่ควบคุมการสลับของ
ToggleChip
เนื่องจากไม่ตรงกับข้อกำหนด UX ข้อกำหนด UX ระบุว่าควรมีตัวเว้นวรรค 4.dp ระหว่างป้ายกำกับกับพื้นที่ไอคอนควบคุมการสลับขนาด 24x24.dp ซึ่งทำให้มีความกว้างรวม 28.dp อย่างไรก็ตาม การติดตั้งใช้งานให้พื้นที่ควบคุมการสลับ 36x24.dp อย่างไม่ถูกต้อง ซึ่งจะส่งผลให้พื้นที่ป้ายกำกับข้อความที่ใช้ได้ลดลง 8 dp หมายเหตุ: การแก้ไขข้อบกพร่องนี้จะเพิ่มพื้นที่สำหรับป้ายกำกับข้อความ และส่งผล (ในเชิงบวก) ต่อเลย์เอาต์ข้อความสำหรับข้อความที่ล้น หากคุณมีการทดสอบภาพหน้าจอที่รวมToggleChips
คุณอาจต้องอัปเดตการทดสอบ (I514c8, b/240548670)
เวอร์ชัน 1.1.0-alpha02
27 กรกฎาคม 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha02
androidx.wear.compose:compose-material:1.1.0-alpha02
และ androidx.wear.compose:compose-navigation:1.1.0-alpha02
ออกอากาศแล้ว เวอร์ชัน 1.1.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เปลี่ยนทรัพยากร Dependency ของ Compose สำหรับ Wear OS ในไลบรารีหลักของ Compose จาก 1.2.0 เป็น 1.3.0-alpha0X
การเปลี่ยนแปลง API
- เพิ่มการโอเวอร์โหลดสำหรับการแก้ไขรูปร่างชิป (I02e87)
การแก้ไขข้อบกพร่อง
- เราได้สร้างภาพเคลื่อนไหวของการมองเห็นภาพขอบมืดเมื่อแสดง/ซ่อนกล่องโต้ตอบเพื่อให้สอดคล้องกับภาพเคลื่อนไหวการปรับขนาดที่มีอยู่ (Ida33e)
- เราได้แก้ไขข้อบกพร่องที่อาจทำให้เกิดการหารด้วย 0 เมื่อเลื่อนด้วยการปัด (I86cb6)
- แก้ไขข้อบกพร่องใน
ChipDefaults.childChipColor()
เพื่อให้แน่ใจว่าสีพื้นหลังที่ปิดใช้จะโปร่งใสอย่างสมบูรณ์ (I2b3c3, b/238057342)
เวอร์ชัน 1.1.0-alpha01
29 มิถุนายน 2022
androidx.wear.compose:compose-foundation:1.1.0-alpha01
androidx.wear.compose:compose-material:1.1.0-alpha01
และ androidx.wear.compose:compose-navigation:1.1.0-alpha01
ออกอากาศแล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้ระบบจะใช้พารามิเตอร์
contentDescription
ของ Picker สำหรับตัวเลือก Picker ที่เลือกเท่านั้น และใช้ String ที่เป็น Null ได้ (ก่อนหน้านี้จำเป็นต้องส่งการแมปจากตัวเลือกไปยังคำอธิบายเนื้อหา แต่ระบบจะใช้เฉพาะตัวเลือกที่เลือกเท่านั้น) (Ife6a7) - เราได้ปรับปรุงการช่วยเหลือพิเศษในเครื่องมือเลือกเพื่อให้หน้าจอเครื่องมือเลือกหลายรายการสามารถไปยังส่วนต่างๆ ได้ด้วยโปรแกรมอ่านหน้าจอ และสามารถเข้าถึงคำอธิบายเนื้อหาได้ (I64edb)
การแก้ไขข้อบกพร่อง
- เราได้อัปเดตกฎโปรไฟล์พื้นฐานที่มาพร้อมกับไลบรารี Wear Compose (I9c694)
- เราได้แก้ไขทิศทางของการไล่ระดับสีสำหรับชิปในโหมดจากขวาไปซ้ายแล้ว จากบนซ้ายไปล่างขวา ตอนนี้เป็นจากบนขวาไปล่างซ้าย (Ic2e77)
- เราได้อัปเดตการไล่ระดับสีเริ่มต้นสำหรับ
Chip/ToggleChip/Card
เพื่อให้สอดคล้องกับข้อกำหนด UX ล่าสุด และอัปเดตChipDefaults.gradientBackgroundChipColors
ให้เริ่มจาก 50% ของสีหลักแทนที่จะเป็น 32.5%CardDefaults.cardBackgroundPainter
ได้รับการอัปเดตให้เริ่มจาก 30% ของสีหลักและสิ้นสุดที่ 20% ของonSurfaceVariant
(เดิมคือ 20% ถึง 10%onSurfaceVariant
)ToggleChip.toggleChipColors
เปลี่ยนจากการไล่ระดับสีเชิงเส้นจากพื้นผิว 75% เป็นสีหลัก 32.5% เป็นพื้นผิว 0% เป็นสีหลัก 50% (I43bbd) - เราได้เพิ่มสีพื้นหลัง (
MaterialTheme.color.surface
) ด้านหลังChip/ToggleChips
ที่มีพื้นหลังแบบไล่ระดับสีเพื่อให้แน่ใจว่ามองเห็นได้อย่างถูกต้องในกรณีที่ใช้สีอ่อนเป็นพื้นหลัง (Ibe1a4, b/235937657) - ตอนนี้รายการในเครื่องมือเลือกจะจัดกึ่งกลางเสมอ ซึ่งแก้ไขข้อบกพร่องที่การตั้งค่า
gradientRatio
เป็น 0 จะส่งผลข้างเคียงเป็นการเปลี่ยนการจัดแนว (I712b8)
รุ่น 1.0
เวอร์ชัน 1.0.2
7 กันยายน 2022
androidx.wear.compose:compose-foundation:1.0.2
androidx.wear.compose:compose-material:1.0.2
และ androidx.wear.compose:compose-navigation:1.0.2
ออกอากาศแล้ว เวอร์ชัน 1.0.2 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขลำดับ Z ของตัวบ่งชี้ตำแหน่งและหน้าใน Scaffold แล้ว ตอนนี้ตัวบ่งชี้จะอยู่ด้านบนของภาพขนาดย่อ จึงจะไม่ถูกภาพขนาดย่อบดบังหากมีภาพขนาดย่อ (Ib988f, b/244207528)
เวอร์ชัน 1.0.1
24 สิงหาคม 2022
androidx.wear.compose:compose-foundation:1.0.1
androidx.wear.compose:compose-material:1.0.1
และ androidx.wear.compose:compose-navigation:1.0.1
ออกอากาศแล้ว เวอร์ชัน 1.0.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องทางตรรกะใน
ScalingLazyColumn
ซึ่งอาจทำให้รายการที่มีจำนวนรายการน้อย (โดยปกติคือ 2 รายการ) ไม่สามารถเริ่มต้นได้และแสดงผลแบบโปร่งใส (076c61)
เวอร์ชัน 1.0.0
27 กรกฎาคม 2022
androidx.wear.compose:compose-foundation:1.0.0
androidx.wear.compose:compose-material:1.0.0
และ androidx.wear.compose:compose-navigation:1.0.0
ออกอากาศแล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้
ฟีเจอร์หลักของเวอร์ชัน 1.0.0
- นี่คือรุ่นเสถียรแรกของ Compose สำหรับ Wear OS (อ่านเพิ่มเติม)
- Compose สำหรับ Wear OS สร้างขึ้นจากไลบรารีหลักของ Compose โดยมีคอมโพเนนต์เพิ่มเติมที่เฉพาะเจาะจงสำหรับอุปกรณ์ที่สวมใส่ได้ และมีการใช้งานคอมโพเนนต์หลักของ Compose แบบอื่นที่ปรับให้เหมาะกับอุปกรณ์ที่สวมใส่ได้ (หากเหมาะสม)
- ดูรายการคอมโพเนนต์หลักใน Wear Compose ได้ที่บันทึกประจำรุ่นสำหรับ (Compose สำหรับ Wear OS Beta01)
การแก้ไขข้อบกพร่อง
- เราได้สร้างภาพเคลื่อนไหวของการมองเห็นภาพขอบมืดเมื่อแสดง/ซ่อนกล่องโต้ตอบเพื่อให้สอดคล้องกับภาพเคลื่อนไหวการปรับขนาดที่มีอยู่ (Ida33e)
- เราได้แก้ไขข้อบกพร่องที่อาจทำให้เกิดการหารด้วย 0 เมื่อเลื่อนด้วยการปัด (I86cb6)
- แก้ไขข้อบกพร่องใน
ChipDefaults.childChipColor()
เพื่อให้แน่ใจว่าสีพื้นหลังที่ปิดใช้จะโปร่งใสอย่างสมบูรณ์ (I2b3c3, b/238057342)
เวอร์ชัน 1.0.0-rc02
22 มิถุนายน 2022
androidx.wear.compose:compose-foundation:1.0.0-rc02
androidx.wear.compose:compose-material:1.0.0-rc02
และ androidx.wear.compose:compose-navigation:1.0.0-rc02
ออกอากาศแล้ว เวอร์ชัน 1.0.0-rc02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เราได้แก้ไขทิศทางของการไล่ระดับสีสำหรับการ์ดในโหมดขวาไปซ้าย (RTL) แล้ว โดยก่อนหน้านี้จะอ่านจากซ้ายบนไปขวาล่าง แต่ตอนนี้จะอ่านจากขวาบนไปซ้ายล่าง (Ic2e77)
- เราได้อัปเดตการไล่ระดับสีเริ่มต้นสำหรับ
Chip/ToggleChip/Card
เพื่อให้สอดคล้องกับข้อกำหนด UX ล่าสุด และอัปเดตChipDefaults.gradientBackgroundChipColors
ให้เริ่มต้นจาก 50% ของสีหลักแทนที่จะเป็น 32.5%CardDefaults.cardBackgroundPainter
ได้รับการอัปเดตให้เริ่มจาก 30% ของสีหลักและสิ้นสุดที่ 20% ของonSurfaceVariant
(ก่อนหน้านี้คือ 20% ถึง 10% ใน SurfaceVariant)ToggleChip.toggleChipColors
เปลี่ยนจากการไล่ระดับสีแบบเส้นตรงจากพื้นผิว 75% เป็นสีหลัก 32.5% เป็นพื้นผิว 0% เป็นสีหลัก 50% (I43bbd) - เราได้เพิ่มสีพื้นหลัง (
MaterialTheme.color.surface
) ด้านหลังChip/ToggleChips
ที่มีพื้นหลังแบบไล่ระดับสีเพื่อให้แน่ใจว่ามองเห็นได้อย่างถูกต้องในกรณีที่ใช้สีอ่อนเป็นพื้นหลัง (Ibe1a4, b/235937657) - เราได้อัปเดตกฎโปรไฟล์พื้นฐานที่มาพร้อมกับไลบรารี Wear Compose (I9c694)
เวอร์ชัน 1.0.0-rc01
15 มิถุนายน 2022
androidx.wear.compose:compose-foundation:1.0.0-rc01
androidx.wear.compose:compose-material:1.0.0-rc01
และ androidx.wear.compose:compose-navigation:1.0.0-rc01
ออกอากาศแล้ว เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้อินเทอร์เฟซในไลบรารี Compose สร้างขึ้นโดยใช้เมธอดอินเทอร์เฟซเริ่มต้นของ jdk8 (I5bcf1)
การแก้ไขข้อบกพร่อง
- เราได้นำการเรียกใช้
fillMaxWidth()
อย่างชัดเจนในส่วนหัวของรายการออกแล้วเนื่องจากไม่จำเป็นและอาจทำให้เกิดปัญหาหากScalinglazyColumn
มีส่วนประกอบListHeader()
และChip()
ปะปนกัน เนื่องจากความกว้างจะเพิ่มขึ้น/ลดลงเมื่อเลื่อนรายการListHeader
เข้า/ออกจากมุมมอง (I37144, b/235074035) - เราได้แก้ไขข้อบกพร่องใน
ScalingLazyColumn
ที่อาจทำให้รายการไม่แสดงอย่างถูกต้องจนกว่าจะเลื่อน หากรายการที่ 0 มีขนาดใหญ่พอ (รวมถึงระยะขอบ) (Ic6159, b/234328517) - เราได้ปรับ
ScalingLazyColumn
การผ่อนแรงเล็กน้อยเมื่อรายการต่างๆ ไปถึงขอบหน้าจอเพื่อให้สอดคล้องกับการอัปเดตข้อกำหนด UX ค่าเดิมCubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f)
-> ค่าใหม่CubicBezierEasing(0.3f, 0f, 0.7f, 1f)
หากต้องการคงลักษณะการทำงานเดิมไว้ คุณสามารถลบล้างscalingParams
ของScalingLazyColumn
(Ie375c) ได้ - เราได้เพิ่มระยะห่างจากขอบให้กับ
CompactChip
เพื่อให้มั่นใจว่าขนาดเป้าหมายการแตะของปุ่มมีความสูงอย่างน้อย 48dp เพื่อให้เป็นไปตามหลักเกณฑ์การช่วยเหลือพิเศษของ Material ซึ่งอาจส่งผลต่อเลย์เอาต์ที่คุณใช้CompactChips
เนื่องจากจะใช้พื้นที่เพิ่มเติม (I3d57c)
เวอร์ชัน 1.0.0-beta03
1 มิถุนายน 2022
androidx.wear.compose:compose-foundation:1.0.0-beta03
androidx.wear.compose:compose-material:1.0.0-beta03
และ androidx.wear.compose:compose-navigation:1.0.0-beta03
ออกอากาศแล้ว เวอร์ชัน 1.0.0-beta03 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้ทำให้
ScalingLazyColumn
ทำงานในโหมด@Preview
เขียนแล้ว (I3b3b6, b/232947354)
การเปลี่ยนแปลง API
- เราได้เปลี่ยนค่าเริ่มต้นของพร็อพเพอร์ตี้
ScalingLazyColumn.horizontalAlignment
จาก "เริ่ม" เป็นCenterHorizontally
เพื่อให้มั่นใจว่าเมื่อรายการในลิสต์ไม่เต็มความกว้างทั้งหมดของคอลัมน์ รายการจะได้รับการจัดแนวเพื่อให้มองเห็นได้สูงสุด หากต้องการเปลี่ยนกลับไปใช้ลักษณะการทำงานก่อนหน้า ให้ตั้งค่าhorizontalAlignment = Alignment.Start
.(I9ed4b)
ปัญหาที่ทราบ
- ความสูงของการแตะ/สัมผัสของ CompactChip เล็กกว่าหลักเกณฑ์การช่วยเหลือพิเศษของ Material เราจะแก้ไขปัญหานี้ในการเปิดตัวรุ่นถัดไป (15 มิถุนายน) หากคุณใช้ CompactChip จะส่งผลต่อเลย์เอาต์เนื่องจากตอนนี้ CompactChip จะมีระยะห่างเพิ่มเติมด้านบนและด้านล่าง โปรดปรับและทดสอบเลย์เอาต์ หรือดูความคิดเห็นเกี่ยวกับข้อบกพร่องเพื่อดูวิธีแก้ปัญหาชั่วคราวในการใช้ลักษณะการทำงานที่มีอยู่ (b/234332135)
การแก้ไขข้อบกพร่อง
- การสาธิตใหม่เพื่อแสดงภาพเคลื่อนไหวการเพิ่มหรือนำข้อความเริ่มต้นใน
TimeText
ออก (I16d75) - เพิ่มการทดสอบสำหรับ
HorizontalPageIndicator.PagesState
(I64ed0) - อัปเดต
TimeText
ให้ใกล้เคียงกับข้อกำหนด UX มากขึ้น (Ib7ea1)
เวอร์ชัน 1.0.0-beta02
18 พฤษภาคม 2022
androidx.wear.compose:compose-foundation:1.0.0-beta02
androidx.wear.compose:compose-material:1.0.0-beta02
และ androidx.wear.compose:compose-navigation:1.0.0-beta02
ออกอากาศแล้ว เวอร์ชัน 1.0.0-beta02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ตอนนี้เครื่องมือเลือกจะตอบสนองต่อเหตุการณ์การเลื่อนเสมอแม้จะอยู่ในโหมดอ่านอย่างเดียวก็ตาม ซึ่งจะช่วยให้ผู้ใช้ไม่ต้องเลือกเครื่องมือเลือกก่อนโดยการแตะ แล้วจึงเลื่อนได้ ในโหมดอ่านอย่างเดียว ตัวเลือกอื่นๆ นอกเหนือจากตัวเลือกที่เลือกในปัจจุบันจะถูกซ่อนโดยชิมใน
gradientColor
(I72925) - เราได้เปลี่ยนลักษณะการทำงานของ UX ของ
Chip/ToggleChip/CompactChip/SplitToggleChip
เพื่อหยุดไม่ให้ผู้ใช้ทำfillMaxWidth
โดยค่าเริ่มต้น แต่จะขยายให้พอดีกับเนื้อหาแทน หากต้องการคงลักษณะการทำงานเดิมไว้ ให้เพิ่มmodifier = Modifier.fillMaxWidth()
(I60a2c, b/232206371)
การแก้ไขข้อบกพร่อง
CurvedTextStyle
constructor taking aTextStyle
now also respects thefontWeight
(This may be added to the constructor and copy methods in future revisions of the API) (Ieebb9)- การปรับปรุงการปัดขอบ เมื่อใช้
Modifier.edgeSwipeToDismiss
และมีการปัดไปทางซ้ายจากบริเวณขอบ การปัดเพื่อปิดจะไม่ทำงานอีกต่อไปเมื่อทิศทางการปัดเปลี่ยนเป็นขวา ก่อนหน้านี้ คุณสามารถทริกเกอร์การปัดเพื่อปิดได้โดยการปัดไปทางซ้ายแล้วปัดไปทางขวา (I916ea) HorizontalPageIndicator
ตอนนี้จะแสดงได้สูงสุด 6 หน้าบนหน้าจอ หากมีหน้ามากกว่า 6 หน้า ระบบจะแสดงตัวบ่งชี้ขนาดครึ่งหนึ่งทางด้านซ้ายหรือขวา โดยจะเปลี่ยนหน้าอย่างราบรื่น (I2ac29)- ปรับปรุงลักษณะการทำงานเริ่มต้นของการสแนปใน
ScalingLazyColumn
และPicker
(I49539) - การปรับปรุงการปัดขอบ เมื่อใช้
Modifier.edgeSwipeToDismiss
การปัดเพื่อปิดจะทริกเกอร์เมื่อแตะครั้งแรกที่ขอบและปัดไปทางขวาเท่านั้น ก่อนหน้านี้สามารถทริกเกอร์การปัดเพื่อปิดได้โดยการปัดจากส่วนใดก็ได้ของหน้าจอหากการเลื่อนถึงจุดเริ่มต้น (I8ca2a)
เวอร์ชัน 1.0.0-beta01
11 พฤษภาคม 2022
androidx.wear.compose:compose-foundation:1.0.0-beta01
androidx.wear.compose:compose-material:1.0.0-beta01
และ androidx.wear.compose:compose-navigation:1.0.0-beta01
ออกอากาศแล้ว เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้
มีอะไรใน Compose สำหรับ Wear OS 1.0
1.0.0-beta01
ของ Compose สำหรับ Wear OS ถือเป็นก้าวสำคัญเนื่องจากไลบรารีมีฟีเจอร์ครบถ้วนและ API ล็อกแล้ว
คอมโพเนนต์ Material Compose สำหรับ Wear ในรุ่น 1.0 มีดังนี้
- ธีม Material - ใช้แทน Compose สำหรับอุปกรณ์เคลื่อนที่
MaterialTheme
โดยมีสี รูปร่าง และการพิมพ์สำหรับสร้างคอมโพเนนต์ในอุปกรณ์ที่สวมใส่ได้ซึ่งใช้หลักเกณฑ์ UX ของ Material Design สำหรับ Wear โดยไม่ต้องดัดแปลง Button
,CompactButton
และToggleButton
- ปุ่มมีช่องเดียวสำหรับใส่ไอคอน รูปภาพ หรือข้อความสั้นๆ (สูงสุด 3 อักขระ) มีรูปร่างเป็นวงกลมและมีขนาดที่แนะนำสำหรับปุ่มเริ่มต้น ขนาดใหญ่ หรือขนาดเล็กCompactButton
มีช่องเดียวสำหรับใส่เนื้อหา (ไอคอน รูปภาพ หรือข้อความ) และมีรูปร่างเป็นวงกลมโดยมีขนาดพื้นหลังเล็กมากCompactButton
มีการเว้นที่ว่างแบบโปร่งใสรอบพื้นหลัง (ไม่บังคับ) ซึ่งจะเพิ่มพื้นที่ที่คลิกได้ToggleButton
เป็นปุ่มที่มีช่องเดียวสำหรับใส่เนื้อหาใดก็ได้ (ข้อความสั้นๆ ไอคอน หรือรูปภาพ) และมีสถานะเปิด/ปิด (เลือก/ยกเลิกการเลือก) พร้อมการลงสีและไอคอนต่างๆ เพื่อแสดงว่าเลือกหรือไม่- การ์ด - ใช้เพื่อแสดงข้อมูลเกี่ยวกับแอปพลิเคชัน เช่น การแจ้งเตือน การออกแบบที่ยืดหยุ่นสำหรับกรณีการใช้งานที่แตกต่างกันโดยมี
AppCard
และTitleCard
ซึ่งให้เลย์เอาต์ที่แตกต่างกันและรองรับรูปภาพเป็นเนื้อหาการ์ดหรือพื้นหลัง - ชิป - คอมโพเนนต์รูปทรงสนามกีฬาที่คล้ายกับปุ่ม แต่มีพื้นที่ขนาดใหญ่กว่าและมีช่องหลายช่องเพื่อให้ใส่ป้ายกำกับ ป้ายกำกับรอง และไอคอนได้ ในขนาดต่างๆ และรองรับรูปภาพเป็นพื้นหลัง
- ToggleChips และ SplitToggleChips - ชิปที่มีสถานะเลือก/ยกเลิกการเลือก และมีช่อง
ToggleControl
เพื่อแสดงไอคอน เช่น สวิตช์หรือปุ่มตัวเลือก เพื่อแสดงสถานะที่เลือกของคอมโพเนนต์ นอกจากนี้SplitToggleChip
ยังมีพื้นที่ที่แตะได้ 2 แห่ง โดยมีพื้นที่ที่คลิกได้ 1 แห่งและพื้นที่ที่สลับได้ 1 แห่ง - CircularProgressIndicator - สัญญาณบอกสถานะความคืบหน้าของ Wear Material ที่มี 2 รูปแบบ ส่วนแรกแสดงสัดส่วนของงานที่กำลังดำเนินการอยู่ และรองรับช่องว่างในแทร็กวงกลมระหว่างมุมเริ่มต้นและมุมสิ้นสุด ส่วนตัวที่ 2 จะแสดงความคืบหน้าแบบไม่ระบุเวลาสำหรับเวลารอที่ไม่ระบุ
- curvedText - เป็นส่วนหนึ่งของ DSL สำหรับอธิบาย
CurvedLayouts
พร้อมกับcurvedRow
และcurvedColumn
เพื่อจัดวางคอมโพเนนต์รอบอุปกรณ์ทรงกลม ดูรายละเอียดเพิ่มเติมเกี่ยวกับCurvedLayout
และCurvedModifier
(ซึ่งมีบทบาทคล้ายกับตัวแก้ไขในโลกที่ไม่โค้งและช่วยให้กำหนดค่าเลย์เอาต์ ระยะห่าง การไล่ระดับสี ฯลฯ ได้ในหลายๆ ด้าน) ได้ที่ส่วนพื้นฐานของคอมโพเนนต์ Wear ด้านล่าง - กล่องโต้ตอบ การแจ้งเตือน และการยืนยัน - กล่องโต้ตอบจะแสดงกล่องโต้ตอบแบบเต็มหน้าจอที่ซ้อนทับเนื้อหาอื่นๆ และรองรับการปัดเพื่อปิด โดยจะใช้ช่องเดียวซึ่งคาดว่าจะเป็นเนื้อหากล่องโต้ตอบ Material ของ Wear ที่มีข้อคิดเห็น เช่น การแจ้งเตือนหรือการยืนยัน การแจ้งเตือนคือเนื้อหากล่องโต้ตอบที่แสดงความคิดเห็นพร้อมช่องสำหรับไอคอน ชื่อ และข้อความ โดยมีโอเวอร์โหลดสำหรับปุ่มลบและปุ่มบวก 2 ปุ่มที่แสดงอยู่ข้างกัน หรือช่องสำหรับชิปอย่างน้อย 1 รายการที่ซ้อนกันในแนวตั้ง การยืนยันคือเนื้อหากล่องโต้ตอบที่แสดงข้อความตามระยะเวลาที่กำหนด โดยมีช่องสำหรับไอคอนหรือรูปภาพ (ซึ่งอาจเป็นภาพเคลื่อนไหว)
- HorizontalPageIndicator - แสดงตำแหน่งหน้าแนวนอนในรูปแบบที่เหมาะสมกับรูปแบบของอุปกรณ์ที่สวมใส่ได้ ออกแบบมาให้ใช้เต็มหน้าจอและแสดงตัวบ่งชี้โค้งบนอุปกรณ์ทรงกลม ใช้กับโปรแกรมดูหน้า Accompanist ได้
- ไอคอน - การใช้งานไอคอนใน Wear ซึ่งใช้สีและอัลฟ่าจากธีม Material ของ Wear ดูไอคอนที่คลิกได้ที่ปุ่มหรือชิป
- ตัวเลือก - แสดงรายการที่เลื่อนได้ซึ่งมีรายการให้เลือก โดยค่าเริ่มต้น ระบบจะทำซ้ำรายการ "อย่างไม่มีที่สิ้นสุด" ในทั้ง 2 ทิศทาง แสดงในโหมดอ่านอย่างเดียวเพื่อซ่อนตัวเลือกที่ไม่ได้เลือกได้
- PositionIndicator - แสดงตำแหน่งการเลื่อนหรือการระบุตำแหน่งอื่นๆ ในรูปแบบที่เหมาะสมกับรูปแบบของอุปกรณ์ที่สวมใส่ได้ ออกแบบมาให้ใช้เต็มหน้าจอและแสดงตัวบ่งชี้โค้งบนอุปกรณ์ทรงกลม
- Scaffold - ใช้โครงสร้างเลย์เอาต์ภาพพื้นฐานของ Wear Material Design คอมโพเนนต์นี้มี API สำหรับรวมคอมโพเนนต์ Wear Material หลายรายการ (เช่น
TimeText
,PositionIndicator
และVignette
) เพื่อสร้างหน้าจอ ตรวจสอบว่ามีกลยุทธ์เลย์เอาต์ที่เหมาะสมสำหรับคอมโพเนนต์เหล่านั้น และรวบรวมข้อมูลที่จำเป็นเพื่อให้คอมโพเนนต์เหล่านี้ทำงานร่วมกันได้อย่างถูกต้อง - ScalingLazyColumn - คอมโพเนนต์รายการแบบเลื่อนที่ปรับขนาด/ฟิชอาย ซึ่งเป็นส่วนสำคัญของภาษาการออกแบบ Material ของ Wear ให้เอฟเฟกต์การปรับขนาดและความโปร่งใสแก่รายการเนื้อหา
ScalingLazyColumn
ออกแบบมาให้รองรับรายการเนื้อหาจำนวนมากที่อาจเกิดขึ้นได้ โดยจะแสดงและเรียบเรียงเมื่อจำเป็นเท่านั้น - แถบเลื่อน - ช่วยให้ผู้ใช้เลือกจากช่วงของค่าได้ ช่วงของการเลือกจะแสดงเป็นแถบ ซึ่งอาจแสดงพร้อมตัวคั่นหรือไม่ก็ได้
- Stepper - คอมโพเนนต์แบบเต็มหน้าจอที่ช่วยให้ผู้ใช้เลือกจากช่วงค่าได้โดยใช้ปุ่มเพิ่ม/ลดที่ด้านบนและด้านล่างของหน้าจอ โดยมีช่องตรงกลางสำหรับข้อความหรือชิป
- SwipeToDismissBox - จัดการท่าทางสัมผัสการปัดเพื่อปิด โดยจะใช้ช่องเดียวสำหรับพื้นหลัง (แสดงระหว่างท่าทางสัมผัสการปัดเท่านั้น) และเนื้อหาเบื้องหน้า อาจใช้ร่วมกับไลบรารีการนำทาง androidx ได้โดยใช้
SwipeDismissableNavHost
(ดูไลบรารีการนำทาง Wear Compose ด้านล่าง) - ข้อความ - การใช้งานข้อความ Compose Material ใน Wear โดยใช้สีและอัลฟ่าจากธีม Material ของ Wear
- TimeText - คอมโพเนนต์สำหรับแสดงเวลาและสถานะแอปพลิเคชันที่ด้านบนของหน้าจอ ปรับให้เข้ากับรูปร่างหน้าจอโดยใช้ข้อความโค้งบนหน้าจอกลม
Vignette - การปรับแต่งหน้าจอสำหรับใช้ใน Scaffold ซึ่งจะเบลอส่วนบนและส่วนล่างของหน้าจอเมื่อใช้เนื้อหาที่เลื่อนได้
นอกจากนี้ ยังรวมคอมโพเนนต์ต่อไปนี้จาก Wear Compose Foundation ด้วย
CurvedLayout - Wear Foundation
CurvedLayout
เป็นเลย์เอาต์ที่ใช้ร่วมกันได้ซึ่งวางวิดเจ็ตย่อยในส่วนโค้งและหมุนวิดเจ็ตย่อยตามต้องการ ซึ่งคล้ายกับเลย์เอาต์แถวที่โค้งเป็นส่วนของวงแหวน โปรดทราบว่าเนื้อหาของCurvedLayout
ไม่ใช่ Lambda ที่ประกอบได้ แต่เป็น DSL (Domain-Specific Language) องค์ประกอบทั้งหมดใน DSL ของ CurvedLayout รองรับพารามิเตอร์ตัวแก้ไขที่ไม่บังคับ ซึ่งสร้างจากCurvedModifier
basicCurvedText - องค์ประกอบใน DSL ของ
CurvedLayout
basicCurvedText
ช่วยให้นักพัฒนาแอปเขียนข้อความโค้งตามความโค้งของวงกลมได้อย่างง่ายดาย (โดยปกติจะอยู่ที่ขอบของหน้าจอวงกลม)basicCurvedText
สร้างได้ภายในCurvedLayout
เท่านั้นเพื่อให้ได้รับประสบการณ์ที่ดีที่สุด เช่น การระบุตำแหน่ง และการใช้CurvedModifiers
โปรดทราบว่าในกรณีส่วนใหญ่ คุณควรใช้ curvedText แทน เนื่องจากใช้การจัดธีม MaterialcurvedComposable - ห่อหุ้มเนื้อหาที่ใช้ได้กับ Composable ปกติเพื่อให้ใช้กับ
CurvedLayout
ได้ หากcurvedComposable
มีองค์ประกอบหลายรายการอยู่ภายใน ระบบจะวาดองค์ประกอบเหล่านั้นซ้อนกัน (เช่น กล่อง) หากต้องการวาง Composable หลายรายการตามเส้นโค้ง ให้ห่อแต่ละรายการด้วยcurvedComposable
curvedRow และ curvedColumn - คล้ายกับ Row และ Column,
curvedRow
และcurvedColumn
สามารถซ้อนกันภายในCurvedLayout
เพื่อจัดวางองค์ประกอบตามต้องการ สำหรับcurvedRow
คุณอาจระบุทิศทางการจัดวางเชิงมุมและการจัดแนวรัศมีได้ สำหรับcurvedColumn
คุณสามารถระบุการจัดแนวเชิงมุมและทิศทางแนวรัศมีได้CurvedModifier - คอมโพเนนต์โค้งทั้งหมดยอมรับพารามิเตอร์ตัวแก้ไขที่สร้างขึ้นได้โดยใช้
CurvedModifier
: รองรับพื้นหลัง ขนาด น้ำหนัก และระยะเว้นนอกจากนี้ยังรวมคอมโพเนนต์ต่อไปนี้จาก Wear Compose Navigation ด้วย
SwipeDismissableNavHost - จัดเตรียมตำแหน่งในลำดับชั้นของ Compose เพื่อให้การนำทางแบบแยกส่วนเกิดขึ้น โดยมีการนำทางย้อนกลับด้วยท่าทางสัมผัสการปัด เนื้อหาจะแสดงภายใน
SwipeToDismissBox
ซึ่งแสดงระดับการนำทางปัจจุบัน ในระหว่างท่าทางสัมผัสปัดเพื่อปิด ระดับการนำทางก่อนหน้า (หากมี) จะแสดงในพื้นหลังดูรายละเอียดเพิ่มเติมเกี่ยวกับสิ่งที่เผยแพร่แล้วได้ในบันทึกประจำรุ่นก่อนหน้าสำหรับรุ่นอัลฟ่าต่างๆ
การเปลี่ยนแปลง API
- เพิ่มฟังก์ชัน
CurvedModifier.padding*
แล้ว ใช้เพื่อระบุพื้นที่เพิ่มเติมที่จะเพิ่มรอบๆ คอมโพเนนต์โค้ง (I4dbb4) - นำคลาสภายใน
CompositionLocal
(I42490) ออกแล้ว - เราได้เพิ่มค่าคงที่สำหรับขนาดไอคอน
Button
,CompactButton
และToggleButton
เพื่อเป็นแนวทาง (I57cab) - เพิ่มพารามิเตอร์ที่เปิดใช้ไปยัง
AppCard
และTitleCard
ตอนนี้ฟีเจอร์นี้มี API ที่คล้ายกับandroidx.compose.material
การ์ดแล้ว เมื่อตั้งค่าพารามิเตอร์เป็น "เท็จ" คุณจะคลิกการ์ดไม่ได้ (Idc48d, b/228869805)
การแก้ไขข้อบกพร่อง
- ตอนนี้ Stepper จะปิดใช้ปุ่มลดและเพิ่มเมื่อถึงขีดจำกัดล่าง/บน (และใช้ ContentAlpha.disabled กับ iconColor) (I4be9f)
- เราได้เพิ่มระยะขอบ 1dp รอบเนื้อหาของตัวเลือกเมื่อวาดด้วยการไล่ระดับสีเพื่อป้องกันการสั่นของข้อความที่เห็นเมื่อปัด (I0b7b9)
- เพิ่มการทดสอบภาพหน้าจอสำหรับ
PositionIndicator
(I5e8bc) - เพิ่มการทดสอบสำหรับ
AppCard
และTitleCard
(I85391, b/228869805)
เวอร์ชัน 1.0.0-alpha21
20 เมษายน 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha21
androidx.wear.compose:compose-material:1.0.0-alpha21
และ androidx.wear.compose:compose-navigation:1.0.0-alpha21
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha21 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มตัวแก้ไขโค้งใหม่เพื่อระบุพื้นหลังขององค์ประกอบโค้ง:
CurvedModifier.background
,.radialGradientBackground
และ.angularGradientBackground
(I8f392) - อนุญาตให้ระบุโหมดข้อความโค้งที่ล้น (ตัด/จุดไข่ปลา/มองเห็นได้) (I8e7aa)
- เพิ่มตัวแก้ไข
CurvedModifier.weight
ซึ่งคล้ายกับตัวแก้ไขในฟีเจอร์เขียน คุณใช้แอตทริบิวต์นี้กับองค์ประกอบย่อยของ curvedRow และ CurvedLayout (สำหรับความกว้าง) รวมถึงองค์ประกอบย่อยของ curvedColumn (สำหรับความสูง) ได้ (I8abbd) - เพิ่มตัวแก้ไข
CurvedModifier.size
,.angularSize
และ.radialSize
เพื่อระบุขนาดขององค์ประกอบโค้ง (I623c7)
การเปลี่ยนแปลง API
- จัดเรียงพารามิเตอร์ใหม่เพื่อให้พื้นหลังอยู่ก่อนสีอย่างสม่ำเสมอใน Wear Compose API (I43208)
- นำพารามิเตอร์
insideOut
และ clockwise ออก แล้วแทนที่ด้วยค่าคงที่ที่มีรายละเอียดมากขึ้นในคลาสใหม่ ตอนนี้เลย์เอาต์โค้งสามารถรับรู้LayoutDirection
และจะรับค่าเมื่อไม่ได้ระบุ (If0e6a) - เราได้แทนที่
autoCenter: Boolean
ด้วยautoCenter: AutoCentringParams
เพื่อแก้ไขปัญหา API กับScalingLazyColumn
(Ia9c90) - เราได้เปลี่ยนชื่อ
iconTintColor
และtoggleControlTintColor
เป็นiconColor
และtoggleControlColor
ใน API ทั้งหมด (Chip/ToggleChip/Dialog/Slider/Stepper/...) เนื่องจากมีการใช้สีกับช่องไอคอน/toggleControl (Ied238) - เขียน enum
PageIndicatorStyle
ใหม่เป็นคลาสค่า (I2dc72) - เราได้เพิ่ม
RowScope/ColumnScope/BoxScope
ลงในช่องบางช่องใน Composables เพื่อระบุให้นักพัฒนาแอปทราบถึงสมมติฐานของเลย์เอาต์ ซึ่งจะช่วยให้นักพัฒนาแอปใช้ตัวแก้ไขเพิ่มเติมกับเนื้อหาบางอย่างในช่องได้ และไม่ต้องระบุองค์ประกอบเลย์เอาต์เพิ่มเติม นอกจากนี้ เรายังได้อัปเดตสี AppCard/TitleCard เล็กน้อยเพื่อให้timeColor
และappColor
เป็นcontentColor
โดยค่าเริ่มต้น แต่คุณยังคงลบล้างพร็อพเพอร์ตี้เหล่านี้ทีละรายการได้หากต้องการ (I26b59) - ตั้งค่าออบเจ็กต์
SwipeToDismissBoxState.Companion
เป็นส่วนตัว (I39e84) - แก้ไขลำดับพารามิเตอร์สำหรับ
InlineSlider
และStepper
การเปลี่ยนแปลงเล็กน้อยเพื่อให้เป็นไปตามหลักเกณฑ์ของ API (I11fec) - เราได้นำออบเจ็กต์ Saver สำหรับ
SwipeToDismissBoxState
ออกแล้วเนื่องจากไม่มีการใช้งาน (Ifb54e) - เราได้อัปเดต
CompactChip
เพื่อให้สอดคล้องกับข้อกำหนด UX ล่าสุด เราได้ลดระยะขอบเป็นแนวนอน = 12.dp และแนวตั้ง = 0.dp เปลี่ยนแบบอักษรสำหรับป้ายกำกับจากปุ่มเป็น caption1 แล้ว ขนาดไอคอนที่แนะนำคือ 20x20 เมื่อมีทั้งไอคอนและป้ายกำกับ และ 24x24 สำหรับชิปขนาดกะทัดรัดที่มีไอคอนเท่านั้น สำหรับกรณีการใช้งานไอคอนเท่านั้น เรายังได้ตรวจสอบว่าไอคอนอยู่ตรงกลาง (Iea2be) - เราได้เพิ่มช่องใหม่หลายช่องลงใน
ScalingLazyListLayoutInfo
เพื่อให้นักพัฒนาแอปทราบจำนวนcontentPadding
และautoCenteringPadding
ที่ใช้ ซึ่งอาจมีประโยชน์สำหรับนักพัฒนาซอฟต์แวร์เมื่อคำนวณการปัด/เลื่อน (I7577b) - เราได้ใช้การเปลี่ยนฉากเข้า/ออกสำหรับ Dialog แล้ว เราได้เพิ่มพารามิเตอร์
showDialog
และตอนนี้กล่องโต้ตอบจะควบคุมระดับการมองเห็นของตัวเอง (ซึ่งช่วยให้กล่องโต้ตอบเรียกใช้ภาพเคลื่อนไหวตอนต้นและตอนท้ายได้เมื่อกล่องโต้ตอบแสดง/ซ่อน) โปรดทราบว่าระบบจะไม่แสดงภาพเคลื่อนไหวตอนท้ายเมื่อผู้ใช้ออกจากกล่องโต้ตอบผ่านการปัดเพื่อปิด นอกจากนี้ เรายังได้เพิ่มค่าเริ่มต้นสำหรับรัฐในSwipeToDismissBox
โอเวอร์โหลดที่เพิ่งเพิ่มเข้ามาด้วย (I682a0) - เราได้เปลี่ยน
ToggleChip
และSplitToggleChip
เพื่อให้รองรับ i18n และ a11y ได้ดียิ่งขึ้น จึงทำให้ช่องtoggleControl
ไม่มีค่าเริ่มต้นอีกต่อไป นอกจากนี้ เรายังได้เปลี่ยนแปลงToggleChipDefaults
เพื่อให้เมธอดต่อไปนี้แสดงผลเป็น ImageVector แทน Icon (โปรดทราบว่าเนื่องจากเมธอดเหล่านี้ไม่ได้แสดงผล @Composables อีกต่อไป จึงเปลี่ยนเป็นขึ้นต้นด้วยตัวพิมพ์เล็ก)SwitchIcon()->switchIcon()
,CheckboxIcon->checkboxIcon()
และRadioIcon()->radioIcon()
ซึ่งจะช่วยให้นักพัฒนาแอปสร้าง ComposableIcon()
ของตนเองด้วยชุดcontentDescription
ที่เหมาะสมได้ (I5bb5b) - เราได้เพิ่มพารามิเตอร์
SwipeDismissableNavHostState
ลงในSwipeDismissableNavHost
แล้ว ซึ่งรองรับการปัดจากขอบบนหน้าจอที่ใช้เป็นปลายทางการนำทาง เนื่องจากตอนนี้สามารถยกSwipeToDismissBoxState
ขึ้นและใช้เพื่อเริ่มต้นทั้งSwipeDismissableNavHostState
และModifier.edgeSwipeToDismiss
บนหน้าจอที่ต้องใช้การปัดจากขอบ (I819f5, b/228336555)
การแก้ไขข้อบกพร่อง
- ตรวจสอบว่าได้อัปเดตเลย์เอาต์โค้งเมื่อจำเป็น (Ie8bfa, b/229079150)
- แก้ไขข้อบกพร่องสำหรับ https://issuetracker.google.com/issues/226648931 (Ia0a0a, b/226648931)
- นำคำอธิบายประกอบการทดลองที่ไม่จำเป็นออก (I88d7e)
เวอร์ชัน 1.0.0-alpha20
6 เมษายน 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha20
androidx.wear.compose:compose-material:1.0.0-alpha20
และ androidx.wear.compose:compose-navigation:1.0.0-alpha20
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha20 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มตัวปรับแต่ง
edgeSwipeToDismiss
สำหรับSwipeToDismiss
อนุญาตให้swipeToDismiss
ใช้งานได้เฉพาะที่ขอบด้านซ้ายของวิวพอร์ต ใช้เมื่อตรงกลางของหน้าจอต้องสามารถจัดการการแบ่งหน้าในแนวนอนได้ เช่น การเลื่อนแผนที่แบบ 2 มิติหรือการปัดในแนวนอนระหว่างหน้าต่างๆ (I3fcec, b/200699800)
การเปลี่ยนแปลง API
- การใช้งานพื้นฐานของ
CurvedModifiers
ซึ่งจะเปิดทางให้เราแนะนำวิธีปรับแต่งเนื้อหาโค้ง (แต่ยังไม่มีCurvedModifiers
และความสามารถในการสร้างตัวแก้ไขที่กำหนดเองอาจพร้อมใช้งานในภายหลัง) (I9b8df) EdgeSwipe
อัปเดตเอกสารประกอบตัวแก้ไขและค่าเริ่มต้นเพื่อให้เข้าใจได้ดียิ่งขึ้น (I6d00d)- เพิ่มช่อง
PageIndicator
ลงใน Scaffold การเพิ่มPageIndicator
ลงใน Scaffold โดยตรงอาจช่วยให้มั่นใจได้ว่าระบบจะแสดงอย่างถูกต้องในอุปกรณ์ทรงกลม (Ia6042) - นำไอคอนเริ่มต้นออกจากพารามิเตอร์
InlineSlider
และ Stepper ซึ่งจะช่วยให้นักพัฒนาแอปใส่ใจข้อกำหนดด้านการแปลและการช่วยเหลือพิเศษมากขึ้น การใช้งานไอคอนเริ่มต้นแสดงอยู่ในเดโมและตัวอย่าง (I7e6fd) - แทนที่ชื่อพารามิเตอร์ Trailing และ Leading ด้วย Start และ End ใน TimeText (Iaac32)
- เราได้เพิ่ม
SwipeToDismissBox
โอเวอร์โหลดด้วยพารามิเตอร์onDismissed
เพื่อรองรับการใช้งานทั่วไปในการทริกเกอร์เหตุการณ์การนำทางเมื่อท่าทางสัมผัสการปัดเสร็จสมบูรณ์ (I50353, b/226565726) - นำคำอธิบายประกอบ
ExperimentalWearMaterialApi
ออกจากการใช้งานTimeText
(Ide520) - เราได้ทำเครื่องหมายอินเทอร์เฟซขอบเขตและข้อมูล
ScalingLazyList/Column
ว่าเป็นแบบปิด เนื่องจากไม่ได้มีไว้สำหรับนักพัฒนาแอปภายนอก และจะช่วยให้เราเพิ่มสมาชิกใหม่ในอินเทอร์เฟซเหล่านี้ได้ในอนาคตโดยไม่มีการเปลี่ยนแปลงที่ทำให้ไบนารีใช้งานไม่ได้ (I7d99f) - เราได้เพิ่มพร็อพเพอร์ตี้
flingBehaviour
ใหม่ลงใน Picker และเมธอดPickerDefaults.flingBehaviour()
เพื่อเปิดใช้การกำหนดค่าลักษณะการปัด เช่น การเพิ่มการรองรับ RSB ตอนนี้PickerState
ได้ติดตั้งใช้งานอินเทอร์เฟซScrollableState
แล้ว (Ib89c7)
การแก้ไขข้อบกพร่อง
- อัปเดตกฎโปรไฟล์พื้นฐานของ Android Runtime (ART) สำหรับไลบรารี Wear Compose ART สามารถใช้ประโยชน์จากกฎโปรไฟล์ในอุปกรณ์เพื่อคอมไพล์แอปพลิเคชันบางส่วนล่วงหน้าเพื่อปรับปรุงประสิทธิภาพของแอปพลิเคชัน โปรดทราบว่าการดำเนินการนี้จะไม่มีผลกับแอปพลิเคชันที่แก้ไขข้อบกพร่องได้ (Iaa8ef)
- ปรับปรุงเอกสารประกอบ (I2c051)
เวอร์ชัน 1.0.0-alpha19
23 มีนาคม 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha19
androidx.wear.compose:compose-material:1.0.0-alpha19
และ androidx.wear.compose:compose-navigation:1.0.0-alpha19
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha19 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
CurvedRow
เป็นCurvedLayout
และปรับใหม่ให้เป็นขอบเขตที่มี DSL การใช้ DSL นี้จะช่วยให้ระบุเลย์เอาต์โค้งที่ซับซ้อนมากขึ้นได้โดยใช้ชุดของcurvedRow
และcurvedColumn
ที่ซ้อนกัน (ซึ่งเทียบเท่ากับเลย์เอาต์โค้งของแถวและคอลัมน์) ภายในองค์ประกอบเลย์เอาต์เหล่านี้ คุณสามารถใช้องค์ประกอบ 3 อย่าง ได้แก่curvedComposable
(เพื่อเพิ่ม @Composable),basicCurvedText
(ข้อความโค้งของ Foundation) และcurvedText
(ข้อความโค้งที่รับรู้ถึง Wear Material) (Ib776a) - ทำให้ฝั่ง
PositionIndicator
กำหนดค่าได้ ตอนนี้คุณกำหนดค่าตำแหน่งของ PositionIndicator พื้นฐานให้เป็น End (รับรู้ทิศทางการจัดวาง), OppositeRsb (พิจารณาการหมุนหน้าจอเพื่อวางตำแหน่งตรงข้ามกับ RSB จริง) หรือ Left และ Right แบบสัมบูรณ์ได้แล้ว (I2f1f3) - สำหรับ
SwipeToDismissBox
เราได้เปลี่ยนชื่อSwipeDismissTarget
.Original เป็นSwipeToDismissValue.Default
และSwipeDismissTarget.Dismissal
เป็นSwipeToDismissValue.Dismissed
นอกจากนี้ เรายังได้ย้ายSwipeToDismissBoxDefaults.BackgroundKey
และSwipeToDismissBoxDefaults.ContentKey
ไปยังSwipeToDismissKeys.Background
และSwipeToDismissKeys.Content
ตามลำดับ (I47a36) - เราได้เพิ่มโหมดอ่านอย่างเดียวลงใน Picker สำหรับหน้าจอที่มี Picker หลายรายการซึ่งแก้ไขได้ทีละรายการเท่านั้น เมื่อเครื่องมือเลือกเป็นแบบอ่านอย่างเดียว เครื่องมือจะแสดงตัวเลือกที่เลือกอยู่ในปัจจุบันและป้ายกำกับ (หากมี) (I879de)
- เราได้ปรับโครงสร้าง
SwipeToDismissBoxState
เพื่อจำกัดขอบเขตของExperimentalWearMaterialApi
ให้เหลือเพียงModifier.swipeable
และSwipeableState
ซึ่งตอนนี้ใช้ภายในแล้ว ตอนนี้SwipeToDismissBoxState
มีสมาชิกcurrentValue
,targetValue
,isAnimationRunning
และsnapTo
เพื่อรองรับ Use Case ทั่วไป โปรดแจ้งให้เราทราบหากคุณต้องการให้เราเพิ่มพร็อพเพอร์ตี้อื่นๆ นอกจากนี้ ยังแก้ไขลักษณะการทำงานของSwipeableState
ในกรณีที่ออฟเซ็ตการปัดอยู่ภายในข้อผิดพลาดในการปัดเศษของจุดยึดด้วย (I58302)
การแก้ไขข้อบกพร่อง
- ปรับปรุงและแก้ไขโค้ดเพื่อตรวจหาว่าเนื้อหาของ
ScalingLazyColumn
เลื่อนได้หรือไม่ (ใช้เพื่อตัดสินใจว่าจะแสดงแถบเลื่อนหรือไม่) (I7bce0) - แก้ไขข้อบกพร่องในตัวบ่งชี้ตำแหน่งเมื่อใช้กับสถานะมากกว่า 1 สถานะและสลับระหว่างสถานะเหล่านั้น (I320b5)
- เราได้อัปเดตการจัดรูปแบบข้อความ/แบบอักษรของธีม Compose for Wear OS เริ่มต้นให้สอดคล้องกับคำแนะนำด้าน UX ล่าสุด โปรดทราบว่าตอนนี้ display1 (40.sp) และ display2 (34.sp) มีขนาดเล็กกว่าค่าก่อนหน้า และเราได้ทำการอัปเดตเล็กๆ น้อยๆ อื่นๆ เกี่ยวกับความสูงของบรรทัดและการเว้นบรรทัดด้วย (Ie3077)
- เราได้เพิ่มความต้านทานให้กับ
SwipeToDismissBox
เพื่อให้การเคลื่อนไหวเกิดขึ้นเมื่อปัดเพื่อปิดเท่านั้น และไม่เกิดขึ้นในทิศทางตรงกันข้าม (Ifdfb9) - เราได้เปลี่ยนค่าพารามิเตอร์เริ่มต้นบางค่าสำหรับฟังก์ชัน
CircularProgressIndicator
เพื่อให้สอดคล้องกับคำแนะนำ UX ของ Material Design สำหรับ Wear สำหรับเวอร์ชัน Spinner/Indeterminant เราได้อัปเดตขนาด (40->24.dp), indicatorColor (primary->onBackground), ความโปร่งใสของ trackColor (30%->10%) และความกว้างของเส้น (4->3dp) สำหรับเวอร์ชันความคืบหน้า/กำหนดค่าได้ เราได้อัปเดตความโปร่งใสของ trackColor (30%-> 10%) แล้ว (I659cc) - เราได้อัปเดตพารามิเตอร์การปรับขนาดเริ่มต้นของ
ScalingLazyColumn
ให้สอดคล้องกับข้อกำหนด UX ของ Material Design ล่าสุดสำหรับ Wear ในเชิงภาพ การดำเนินการนี้จะส่งผลให้รายการในลิสต์เริ่มมีการปรับขนาดใกล้กับกึ่งกลางของลิสต์มากขึ้น แต่มีการปรับขนาดน้อยลงที่ขอบของลิสต์กว่าเดิม (Ica8f3) - การปรับเปลี่ยนบางอย่างใน
ScalingLazyColumnDefaults.snapFlingBehavior
เพื่อปรับปรุงตอนท้ายของภาพเคลื่อนไหว (If3260)
เวอร์ชัน 1.0.0-alpha18
9 มีนาคม 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha18
androidx.wear.compose:compose-material:1.0.0-alpha18
และ androidx.wear.compose:compose-navigation:1.0.0-alpha18
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha18 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ปรับปรุง PositionIndicator หลายรายการ: ShowResult เปลี่ยนชื่อเป็น PositionIndicatorVisibility ปรับปรุงประสิทธิภาพบางอย่างเพื่อหลีกเลี่ยงการคำนวณซ้ำเมื่อไม่จำเป็น (Iaed9d)
- เราได้อัปเดตการระบายสีที่แนะนำสำหรับ
SplitToggleChip
แล้ว ตอนนี้ SplitToggleChip มีพื้นหลังสีทึบเมื่อเลือกหรือยกเลิกการเลือก โดยการระบายสีของ ToggleControl จะเป็นตัวบ่งชี้หลักว่าคอมโพเนนต์ได้รับการเลือกหรือไม่ เราได้เพิ่มToggleDefaults.splitToggleChipColors()
ใหม่เพื่อรองรับรูปแบบสีใหม่ นอกจากนี้ เรายังได้ปรับปรุงtoggleChipColors()
วิธีการนำ splitBackgroundOverlayColor (I7e66e) ออกให้เรียบง่ายขึ้น - เราได้เพิ่ม unadjustedSize ลงใน
ScalingLazyListItemInfo
เนื่องจากไม่ปลอดภัยที่จะคำนวณขนาดเดิมของสินค้าโดยใช้ขนาดที่ปรับและปัจจัยการปรับขนาดเนื่องจากความแม่นยำทางคณิตศาสตร์ของจำนวนทศนิยม (I54657, b/221079441) - เพิ่ม
HorizontalPageIndicator
โดยจะแสดงจำนวนหน้าทั้งหมดและหน้าเว็บที่เลือก อาจเป็นเส้นตรงหรือโค้งก็ได้ ขึ้นอยู่กับรูปร่างของอุปกรณ์ นอกจากนี้ยังรองรับรูปร่างตัวบ่งชี้ที่กำหนดเอง ซึ่งจะกำหนดวิธีแสดงตัวบ่งชี้แต่ละรายการด้วยภาพ (Iac898) - เราได้อัปเดต
PickerState
เพื่อให้สามารถอัปเดต numberOfOptions ได้ ซึ่งรองรับกรณีการใช้งาน เช่นDatePicker
เมื่อจำนวนวันในเดือนเปลี่ยนแปลงตามเดือนที่เลือก พารามิเตอร์ตัวสร้างสำหรับ PickerState เปลี่ยนเป็น initialNumberOfOptions ตามนั้น (Iad066) - ซ่อน
PositionIndicator
เมื่อเป็นแถบเลื่อนและเลื่อนไม่ได้ (Id0a7f) - ตอนนี้คอมโพเนนต์ Dialog แบบเต็มหน้าจอจะแสดง
PositionIndicator
และVignette
เพื่อให้สอดคล้องกับ Scaffold นอกจากนี้ เรายังใช้ScalingLazyColumn
แทนColumn
ซึ่งหมายความว่าตอนนี้เนื้อหาของกล่องโต้ตอบอยู่ในScalingLazyListScope
(และโดยปกติแล้วจะต้องอยู่ในรายการ { /* content */ }) กล่องโต้ตอบรองรับพารามิเตอร์ verticalArrangement ตามนั้น (Idea13) - เราได้เปลี่ยนชื่อพร็อพเพอร์ตี้
ToggleChip
และSplitToggleChip
toggleIcon เป็น toggleControl เพื่อให้สอดคล้องกับ Material Design มากขึ้น เพื่อช่วยให้นักออกแบบและนักพัฒนาซอฟต์แวร์ไปยังส่วนต่างๆ ของ API ได้ (If5921, b/220129803) - เราได้เพิ่มคำบรรยายใหม่ caption3 ลงใน Wear Material Theme Typology โดย Caption3 เป็นแบบอักษรขนาดเล็กที่ใช้สำหรับการเขียนแบบยาวพิเศษ เช่น ข้อความทางกฎหมาย (I74b13, b/220128356)
การแก้ไขข้อบกพร่อง
- หยุดภาพเคลื่อนไหวการสแนปเมื่อเราอยู่ที่นั่น (Idb69d)
- สร้างภาพเคลื่อนไหวการเปลี่ยนแปลงใน PositionIndicator (I94cb9)
- เราได้เปลี่ยน
ScalingLazyColumn
การจัดกึ่งกลางอัตโนมัติScalingLazyListState.initialCenterItemIndex
ตามความคิดเห็นเกี่ยวกับ UI/UX เพื่อให้มีพื้นที่เพียงพอที่จะทำให้มั่นใจว่ารายการที่มีดัชนีScalingLazyListState.initialCenterItemIndex
ขึ้นไปจะเลื่อนไปที่กึ่งกลางของ Viewport ได้อย่างเต็มที่ ซึ่งช่วยให้นักพัฒนาแอปวางไอเทม 1 หรือ 2 รายการเกี่ยวกับไอเทมนั้นไว้ตรงกลางในตอนแรกได้โดยไม่ต้องเลื่อนไปตรงกลาง ซึ่งหมายความว่าScalingLazyColumn
ที่มี autoCenter จะเลื่อนเหนือinitialCenterItemIndex/initialCenterItemScrollOffset
(I22ee2) ไม่ได้ - เราได้เพิ่มการสาธิตเครื่องมือเลือกวันที่และแก้ไขข้อบกพร่องใน
PickerState
ซึ่ง initiallySelectedOption จะไม่ได้รับการใช้จนกว่าจะมีการแสดงเครื่องมือเลือก (Id0d7e) - เราได้เพิ่มระยะห่างจากขอบด้านซ้ายและขวาของเนื้อหาเริ่มต้นจาก 8 เป็น 10 dp เพื่อลดการตัด
ScalingLazyColumn
รายการที่กว้างขึ้นบนหน้าจอวงกลม (I0d609) - ตรวจสอบว่า
PositionIndicator
แสดงขึ้นเมื่อเลื่อน (Ied9a2)
เวอร์ชัน 1.0.0-alpha17
23 กุมภาพันธ์ 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha17
androidx.wear.compose:compose-material:1.0.0-alpha17
และ androidx.wear.compose:compose-navigation:1.0.0-alpha17
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha17 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เพิ่มการรองรับ Snap ที่ใช้กับ
ScalingLazyColumn
ได้ ตั้งค่าflingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state)
เพื่อเปิดใช้การรองรับ Snap (I068d3, b/217377069) - เราได้เพิ่มการสาธิตสำหรับเครื่องมือเลือกที่ใช้เพื่อ เลือกเวลาในนาฬิกาแบบ 24 ชั่วโมงหรือ 12 ชั่วโมง (Ie5552)
การเปลี่ยนแปลง API
- แก้ไขปัญหาเกี่ยวกับ
TimeText
แบบอักษรและสไตล์ที่กำหนดเองในอุปกรณ์สี่เหลี่ยมจัตุรัส (Iea76e) - ตอนนี้
ScalingLazyListLayoutInfo
มีพร็อพเพอร์ตี้reverseLayout
,viewportSize
และการวางแนวที่ตรงกับพร็อพเพอร์ตี้จากLazyListLayoutInfo
(I4f258, b/217917020) ScalingLazyColumn
มีพร็อพเพอร์ตี้userScrollEnabled
ที่ตรงกับพร็อพเพอร์ตี้จากLazyList
(I164d0, b/217912513) แล้ว- ตอนนี้ตัวเลือกจะมีแถบไล่ระดับสีที่ด้านบนและด้านล่างโดยค่าเริ่มต้น (Iab92a)
การแก้ไขข้อบกพร่อง
- เราได้แก้ไข
ScalingLazyColumn
เพื่อไม่ให้ใช้พื้นที่ทั้งหมดในองค์ประกอบระดับบนสุดอีกต่อไป แต่จะใช้ขนาดจากขนาดของเนื้อหาแทน ซึ่งจะทำให้สอดคล้องกับลักษณะการทำงานของLazyColumn
หากต้องการคืนค่าลักษณะการทำงานแบบเดิม ให้ส่งModifier.fillMaxWidth()/width()/widthIn()
ไปยังScalingLazyColumn
(I51bf8) - เราได้ปรับปรุงข้อความข้อยกเว้นใน
SwipeDismissableNavHost.kt
ที่ทริกเกอร์หาก Backstack ของการนำทางว่างเปล่า (I1b1dc)
เวอร์ชัน 1.0.0-alpha16
9 กุมภาพันธ์ 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha16
androidx.wear.compose:compose-material:1.0.0-alpha16
และ androidx.wear.compose:compose-navigation:1.0.0-alpha16
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha16 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม
CircularProgressIndicator
ตัวบอกสถานะความคืบหน้าจะแสดงระยะเวลาของกระบวนการหรือเวลารอที่ไม่ระบุ รองรับช่องว่าง (รอยบาก) สำหรับ TimeText หรือคอมโพเนนต์อื่นๆ หากใช้แบบเต็มหน้าจอ (Iab8da)
การเปลี่ยนแปลง API
- ตอนนี้ตัวเลือกมีพารามิเตอร์
flingBehavior
แล้ว ค่าเริ่มต้นจะทำให้ตัวเลือกสแนปกับตัวเลือกที่ใกล้ที่สุดเมื่อเลื่อน/ปัด (I09000) - API จำนวนเต็มเพิ่มเติมสำหรับ InlineSlider และ Stepper (I1b5d6)
การแก้ไขข้อบกพร่อง
- เราได้เปลี่ยน initialCenterItemIndex เริ่มต้นสำหรับ
ScalingLazyListState
จาก 0 เป็น 1 ซึ่งหมายความว่าหากไม่ได้ลบล้างในการสร้างสถานะด้วยScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =
)
รายการที่ 2 ในลิสต์ (ดัชนี == 1) จะอยู่ตรงกลาง Viewport เมื่อเริ่มต้น และรายการแรก (ดัชนี == 0) จะอยู่ก่อนรายการที่ 2 ซึ่งจะช่วยให้เอฟเฟกต์ภาพเริ่มต้นดีขึ้นทันทีที่ใช้งาน เนื่องจากรายการส่วนใหญ่ในวิวพอร์ตจะเต็มไปด้วยรายการ (I0c623, b/217344252) - We have reduced the
ScalingLazyColumn
defaultextraPadding
that is provided to ensure that there are plenty of list items to draw (even when we are scaling some of them down in size) from 10% to 5%. This will avoid composing extra list items that might not appear in the viewport. If non standard scalingParams are being used (more extreme scaling for instance) the developer can adjust extra padding usingviewportVerticalOffsetResolver
. (I76be4) - แก้ไขปัญหาเกี่ยวกับ TimeText ในหลายบรรทัดบนอุปกรณ์สี่เหลี่ยมจัตุรัส (Ibd3fb)
- เราได้แก้ไข
ScalingLazyColumn
เพื่อไม่ให้ใช้พื้นที่ทั้งหมดในองค์ประกอบระดับบนสุดอีกต่อไป แต่จะใช้ขนาดจากขนาดของเนื้อหาแทน ซึ่งจะทำให้สอดคล้องกับลักษณะการทำงานของLazyColumn
หากต้องการคืนค่าลักษณะการทำงานแบบเดิม ให้ส่งModifier.fillMaxSize()
ไปยังScalingLazyColumn
- หมายเหตุ: การเปลี่ยนแปลงนี้ยังไม่สมบูรณ์และจะได้รับการแก้ไขในการเปลี่ยนแปลงติดตามผลในรุ่นอัลฟ่าถัดไป (I3cbfa)
เวอร์ชัน 1.0.0-alpha15
26 มกราคม 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha15
androidx.wear.compose:compose-material:1.0.0-alpha15
และ androidx.wear.compose:compose-navigation:1.0.0-alpha15
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha15 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้เพิ่มพร็อพเพอร์ตี้ใหม่
autoCentering
ลงในScalingLazyColumn
เมื่อเป็นจริง (ค่าเริ่มต้น) จะช่วยให้มั่นใจได้ว่ารายการทั้งหมด รวมถึงรายการแรกและรายการสุดท้าย สามารถเลื่อนเพื่อให้มองเห็นได้ตรงกลางของช่องแสดงผลรายการ โปรดทราบว่าหากใช้การจัดกึ่งกลางอัตโนมัติ คุณอาจต้องตั้งค่าระยะห่างจากขอบด้านบนและด้านล่างของเนื้อหาเป็น 0.dp หากระบุทั้ง autoCentering และการเว้นที่ว่างเนื้อหาแนวตั้ง ระบบจะเว้นที่ว่างเพิ่มเติมก่อนรายการแรกและหลังรายการสุดท้าย ทำให้เลื่อนรายการได้ไกลยิ่งขึ้น (I2a282, b/214922490) - เราได้เพิ่ม
Dialog
คอมโพเนนต์ที่ช่วยให้ Composable ใดๆ สามารถทริกเกอร์กล่องโต้ตอบแบบเต็มหน้าจอที่อยู่ด้านบนของเนื้อหาอื่นๆ ได้ เมื่อแสดง กล่องโต้ตอบจะรองรับการปัดเพื่อปิด และจะแสดงเนื้อหาขององค์ประกอบหลักในพื้นหลังระหว่างท่าทางสัมผัสการปัด เนื้อหาของกล่องโต้ตอบควรเป็นAlert
หรือConfirmation
(เปลี่ยนชื่อจากคอมโพเนนต์ก่อนหน้าAlertDialog
และConfirmationDialog
) -Alert
,Confirmation
และDialog
ทั้งหมดอยู่ในแพ็กเกจandroidx.wear.compose.material.dialog
คุณใช้การแจ้งเตือนและการยืนยันเป็นปลายทางการนำทางได้ นอกจากนี้ ยังเพิ่ม ColumnScope ลงในพารามิเตอร์การแจ้งเตือนและการยืนยันตามที่จำเป็นด้วย (Ia9014) - เราได้นำ
onSurfaceVariant2
ออกจากสีธีม Material สำหรับ Compose สำหรับ WearOS และแทนที่การใช้งานในไลบรารีด้วยonSurfaceVariant
(Icd592) - เพิ่มวิธีการเลือกตัวเลือกแบบเป็นโปรแกรมใน
PickerState
ตอนนี้คุณยังระบุตัวเลือกที่เลือกไว้ตอนแรกเมื่อสร้างPickerState
ได้ด้วย (I92bdf) - เราได้เพิ่มการรองรับการปรับแต่งลักษณะการปัดของ
ScalingLazyColumn
(I1ad2e, b/208842968) - เราได้เพิ่ม
NavController.currentBackStackEntryAsState()
ลงในคลังWear.Compose.Navigation
แล้ว (If9028, b/212739653) - เพิ่ม
Modifier.onRotaryScrollEvent()
และModifier.onPreRotaryScrollEvent()
สำหรับอุปกรณ์ Wear ที่มีปุ่มด้านข้างแบบหมุน (I18bf5, b/210748686)
เวอร์ชัน 1.0.0-alpha14
12 มกราคม 2022
androidx.wear.compose:compose-foundation:1.0.0-alpha14
androidx.wear.compose:compose-material:1.0.0-alpha14
และ androidx.wear.compose:compose-navigation:1.0.0-alpha14
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha14 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
เราได้เพิ่มวิธีการหลายอย่างลงใน
ScalingLazyListState
เพื่อให้ผู้พัฒนาควบคุมการเลื่อนไปยังรายการที่เฉพาะเจาะจง รวมถึงการตั้งค่ารายการเริ่มต้นและออฟเซ็ตได้การเปลี่ยนแปลงนี้ยังรวมถึงการแก้ไข ScalingLazyList เพื่อให้วางแนวรอบกึ่งกลางของวิวพอร์ตของ ScalingLazyList แทนที่จะเป็นจุดเริ่มต้นของวิวพอร์ต
เพิ่มพร็อพเพอร์ตี้ใหม่
anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter
ลงในScalingLazyList
เพื่อควบคุมว่าจะจัดแนวศูนย์ (ScalingLazyListAnchorType.ItemCenter
) หรือEdge
(ScalingLazyListAnchorType.ItemStart
) ให้ตรงกับเส้นกึ่งกลางของวิวพอร์ตหรือไม่ด้วยเหตุนี้
ScalingLazyListItemInfo.offset
และScalingLazyListItemInfo.adjustedOffset
จึงมีการเปลี่ยนแปลง และตอนนี้จะแสดงออฟเซ็ตของรายการที่สัมพันธ์กับทั้งตำแหน่งของรายการในลิสต์และanchorType
ของลิสต์ เช่น สำหรับScalingLazyColumn
ที่มีanchorType
ของItemCenter
และรายการที่วางตำแหน่งโดยมีกึ่งกลางอยู่บนเส้นกึ่งกลางของวิวพอร์ต ออฟเซ็ตจะเป็น0
วิธีการใหม่คือ
scrollTo
,animatedScrollTo
,centerItemIndex
และcenterItemOffset
(I61b61)เราได้เพิ่มตัวแฮนเดิลปุ่มย้อนกลับไปยัง
SwipeDismissableNavHost
เพื่อให้การกดปุ่มย้อนกลับเป็นการไปยังระดับก่อนหน้าในลำดับชั้นการนำทาง (I5b086, b/210205624)
เวอร์ชัน 1.0.0-alpha13
15 ธันวาคม 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha13
androidx.wear.compose:compose-material:1.0.0-alpha13
และ androidx.wear.compose:compose-navigation:1.0.0-alpha13
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha13 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้เปลี่ยนเป็น
RangeIcons
ภายใน (อ้างอิงภายในโดยInlineSlider
และStepper
) (I927ec)
การแก้ไขข้อบกพร่อง
แก้ไขปัญหาที่
SwipeDismissableNavHost
จะเพิ่มปลายทางลงในลำดับชั้นของ Compose ก่อนที่จะถึงสถานะวงจรการใช้งานCREATED
ซึ่งส่งผลให้เกิดIllegalStateException
การแก้ไขนี้เป็นข้อกำหนดเบื้องต้นในการอัปเดตการขึ้นต่อกันในnavigation-compose
เป็น2.4.0-beta02
และเวอร์ชันต่อๆ ไป (I40a2b, b/207328687)เพิ่มคลาสการแจงนับ Drawables สำหรับรับทรัพยากรที่วาดได้ภายในไลบรารี Wear Compose เพื่อให้ไม่ต้องใช้การสะท้อนอีกต่อไป การแก้ไขนี้จะแก้ข้อบกพร่องที่ระบบนำ Drawable ของไลบรารีออกเมื่อ
minifyEnabled=true
หรือshrinkResources=true
(Ib2a98)เพิ่มการทดสอบสำหรับ
Stepper
ใน Wear Compose (I2d03a)เพิ่มตัวอย่างสำหรับ
SwipeDismissableNavHost
ในการนำทาง Wear Compose (I85f06)
เวอร์ชัน 1.0.0-alpha12
1 ธันวาคม 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha12
androidx.wear.compose:compose-material:1.0.0-alpha12
และ androidx.wear.compose:compose-navigation:1.0.0-alpha12
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha12 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
เราได้เพิ่มคอมโพเนนต์ Stepper ซึ่งช่วยให้ผู้ใช้เลือกจากช่วงของค่าได้ Stepper เป็นตัวควบคุมแบบเต็มหน้าจอที่มีปุ่มเพิ่มและลดที่ด้านบนและด้านล่าง และมีช่องตรงกลาง (คาดว่าจะใช้ชิปหรือข้อความ) คุณปรับแต่งไอคอนปุ่มได้หากต้องการ (I625fe)
เราได้เพิ่ม Composable ใหม่ 2 รายการสำหรับการแสดงกล่องโต้ตอบ ดังนี้ AlertDialog รอการตอบกลับจากผู้ใช้และแสดงชื่อ ไอคอน ข้อความ และ a) ปุ่ม 2 ปุ่มสำหรับตัวเลือกเชิงบวก/เชิงลบอย่างง่าย หรือ b) ชิปที่ซ้อนกันในแนวตั้งหรือชิปสลับสำหรับตัวเลือกที่ยืดหยุ่นมากขึ้น ConfirmationDialog แสดงการรับทราบพร้อมการหมดเวลา กล่องโต้ตอบแบบง่ายนี้มีช่องสำหรับชื่อและไอคอน (เคลื่อนไหว) (Ic2cf8)
การเปลี่ยนแปลง API
- เพิ่มหน่วย (มิลลิวินาที) ให้กับค่าระยะเวลาของกล่องโต้ตอบที่แนะนำ (I09b48)
เวอร์ชัน 1.0.0-alpha11
17 พฤศจิกายน 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha11
androidx.wear.compose:compose-material:1.0.0-alpha11
และ androidx.wear.compose:compose-navigation:1.0.0-alpha11
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha11 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เพิ่มคอมโพเนนต์เครื่องมือเลือกที่ช่วยให้ผู้ใช้เลือกรายการจากรายการที่เลื่อนได้ โดยค่าเริ่มต้น ระบบจะทำซ้ำรายการที่เลือกได้ "อย่างไม่มีที่สิ้นสุด" ในทั้ง 2 ทิศทางเพื่อให้ดูเหมือนกระบอกสูบหมุนเมื่อมองจากด้านข้าง เราจะเพิ่มฟีเจอร์ 2 อย่างในการเปิดตัวครั้งต่อๆ ไป ได้แก่ การสแนปค่าหลังจากปัด/ดีด และการเพิ่มฟังก์ชันลงใน PickerState เพื่อตั้งค่า/เลื่อนไปยังค่าปัจจุบัน (I6461b)
การเปลี่ยนแปลง API
- เพิ่ม ScalingLazyItemScope และตัวแก้ไขใหม่บางรายการ fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight เพื่อให้กำหนดขนาดของรายการในรายการตามขนาดของคอนเทนเนอร์ระดับบนสุดได้ คุณตั้งค่าให้รายการเติมขนาดทั้งหมดหรือบางส่วนของขนาดขององค์ประกอบระดับบนได้ ซึ่งจะแสดงฟังก์ชันที่มีอยู่ใน LazyRow/Column (I4612f) อยู่แล้ว
- เพิ่มการรองรับ ScalingLazyColumn เพื่อให้รายการมีคีย์ได้ นอกจากนี้ยังเพิ่มวิธีการที่สะดวกเพื่อให้เพิ่มรายการจากอาร์เรย์และรายการได้ (Ic1f89)
การแก้ไขข้อบกพร่อง
- ตัวอย่างเพิ่มเติมสำหรับ TimeText (I8cb64)
เวอร์ชัน 1.0.0-alpha10
3 พฤศจิกายน 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha10
androidx.wear.compose:compose-material:1.0.0-alpha10
และ androidx.wear.compose:compose-navigation:1.0.0-alpha10
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha10 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
เพิ่ม InlineSlider สำหรับ Wear Compose InlineSlider ช่วยให้ผู้ใช้เลือกจากช่วงของค่าได้ ช่วงของการเลือกจะแสดงเป็นแถบระหว่างค่าต่ำสุดและค่าสูงสุดของช่วง ซึ่งผู้ใช้สามารถเลือกค่าใดค่าหนึ่งได้ (If0148)
การเปลี่ยนแปลง API
- ตอนนี้ Macrobenchmark มี
minSdkVersion
ของ23
แล้ว (If2655)
การแก้ไขข้อบกพร่อง
- อัปเดตการจัดการการเปลี่ยนใน SwipeDismissableNavHost ใน SideEffect (I04994, b/202863359)
- อัปเดตการจัดการการเปลี่ยนใน SwipeDismissableNavHost (I1cbe0, b/202863359)
เวอร์ชัน 1.0.0-alpha09
27 ตุลาคม 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha09
androidx.wear.compose:compose-material:1.0.0-alpha09
และ androidx.wear.compose:compose-navigation:1.0.0-alpha09
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha09 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เราได้เปิดตัวตัวอย่างสำหรับนักพัฒนาแอปของ Compose ใน Wear OS แล้ว โปรดดูบล็อกโพสต์ของเราซึ่งจะรีวิว Composable หลักและลิงก์ไปยังแหล่งข้อมูลเพิ่มเติมเพื่อเริ่มต้นใช้งาน
การเปลี่ยนแปลง API
- เราได้เพิ่มการรองรับให้นักพัฒนาแอปปรับแต่งสีทั้งหมดในธีมสี Material Design ของ Wear ได้ (I4759b, b/199754668)
การแก้ไขข้อบกพร่อง
- เพิ่มตัวอย่าง SwipeToDismissBox ที่คงสถานะ (Ibaffe)
- เพิ่มลิงก์ไปยังคำแนะนำใน developer.android.com จาก KDocs สำหรับ CurvedText, TimeText และ SwipeToDismissBox (I399d4)
- ตอนนี้ SwipeDismissableNavHost จะแสดงข้อผิดพลาดหากไม่มีปลายทางปัจจุบัน (ซึ่งบ่งชี้ว่าไม่ได้สร้าง NavGraph ด้วยฟังก์ชันยูทิลิตี wear.compose.navigation.composable) (I91403)
- เพิ่มเอกสารประกอบและตัวอย่างเพิ่มเติมสำหรับการใช้แหล่งเวลาใน TimeText (I4f6f0)
เวอร์ชัน 1.0.0-alpha08
13 ตุลาคม 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha08
androidx.wear.compose:compose-material:1.0.0-alpha08
และ androidx.wear.compose:compose-navigation:1.0.0-alpha08
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha08 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เราได้เปลี่ยนชื่อพร็อพเพอร์ตี้ AppCard และ TitleCard เป็น
content
และย้ายไปไว้ที่ส่วนท้ายของรายการพร็อพเพอร์ตี้เพื่อให้ระบุเป็น Lambda ต่อท้ายได้body
นอกจากนี้ เรายังเปลี่ยนชื่อbodyColor
เป็นcontentColor
เพื่อให้สอดคล้องกับชื่อสล็อตใหม่ด้วย (I57e78)
การแก้ไขข้อบกพร่อง
- เพิ่มลิงก์ไปยังคำแนะนำใน developer.android.com จาก KDocs สำหรับปุ่ม การ์ด ชิป ธีม ตัวบ่งตำแหน่ง และคอมโพเนนต์ LazyColumn ที่ปรับขนาดได้ (I22428)
- แก้ไขปัญหาที่ WearOS SwipeToDismissBox ไม่จัดการการปัดในบางครั้ง (I9387e)
- เพิ่มตัวอย่างสำหรับ Button, CompactButton, Chip, CompactChip, AppCard, TitleCard, ToggleButton, ToggleChip, SplitToggleChip (Iddc15)
- เพิ่มการทดสอบประสิทธิภาพแบบไมโครเบนช์มาร์กสำหรับ Card, Chip, ToggleChip, TimeText และ ScalingLazyColumn (If2fe9)
เวอร์ชัน 1.0.0-alpha07
29 กันยายน 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha07
androidx.wear.compose:compose-material:1.0.0-alpha07
และ androidx.wear.compose:compose-navigation:1.0.0-alpha07
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มคอมโพเนนต์ CurvedText ใน Material ซึ่งเป็นคอมโพเนนต์ที่ช่วยให้นักพัฒนาแอปเขียนข้อความโค้งตามความโค้งของวงกลมได้อย่างง่ายดาย (โดยปกติจะอยู่ที่ขอบของหน้าจอวงกลม) (I19593)
การเปลี่ยนแปลง API
- เพิ่มการทดสอบสำหรับ TimeText (Idfead)
- เปลี่ยน ArcPaddingValues เป็นอินเทอร์เฟซ (Iecd4c)
- เพิ่มภาพเคลื่อนไหวลงใน SwipeToDismissBox (I9ad1b)
- เพิ่มพารามิเตอร์ hasBackground ลงใน SwipeToDismissBox API เพื่อให้ปิดใช้ท่าทางสัมผัสการปัดได้เมื่อไม่มีเนื้อหาพื้นหลังที่จะแสดง (I313d8)
rememberNavController()
ตอนนี้รับชุดอินสแตนซ์Navigator
ที่ไม่บังคับซึ่งจะเพิ่มลงในNavController
ที่ส่งคืนเพื่อรองรับ Navigator ที่ไม่บังคับได้ดียิ่งขึ้น เช่น Navigator จากสื่อการนำทางของ Accompanist (I4619e)- อ้างอิง NamedNavArgument จาก navigation-common และนำสำเนาออกจาก wear.compose.navigation (I43af6)
การแก้ไขข้อบกพร่อง
- แก้ไขความไม่เสถียรของการทดสอบ CurvedRow ในอุปกรณ์ขนาดเล็ก (If7941)
- แก้ไขการกะพริบที่อาจเกิดขึ้นใน CurvedRow เมื่อเนื้อหาอัปเดต และตรวจสอบว่าได้วัดแถวโค้งใหม่แล้ว (Ie4e06)
- เราได้อัปเดต ChipDefaults.gradientBackgroundChipColors() ให้สอดคล้องกับการเปลี่ยนแปลงข้อกำหนด UX แล้ว ตอนนี้การไล่ระดับสีจะเริ่มต้นด้วย MaterialTheme.colors.primary ที่มีอัลฟ่า 32.5% และสิ้นสุดด้วย MaterialTheme.colors.surface ที่มีอัลฟ่า @ 0% บนพื้นหลังของ MaterialTheme.colors.surface ที่มีอัลฟ่า 75% (Id1548)
- เราได้อัปเดตสีของ ToggleChip เมื่ออยู่ในสถานะที่เลือกให้ตรงกับคำแนะนำล่าสุดเกี่ยวกับข้อกำหนด UX ของ Wear Material Design เมื่อเลือกแล้ว ตอนนี้ ToggleChip จะมีพื้นหลังแบบไล่ระดับสีจาก MaterialTheme.color.surface @ 0% alpha ที่ด้านซ้ายบน ไปจนถึง MaterialTheme.color.primary @ 32% alpha ที่ด้านขวาล่าง โดยมีพื้นหลังเป็น MaterialTheme.color.surface @ 75% alpha ซึ่งจะทำให้ ToggleChip มีความแตกต่างระหว่างสถานะที่เลือกและไม่ได้เลือกอย่างชัดเจนยิ่งขึ้น (Idd40b)
เวอร์ชัน 1.0.0-alpha06
15 กันยายน 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha06
androidx.wear.compose:compose-material:1.0.0-alpha06
และ androidx.wear.compose:compose-navigation:1.0.0-alpha06
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เราได้เพิ่ม Scaffold ซึ่งเป็นแอปพลิเคชันระดับบนสุดที่สามารถคอมโพสได้ซึ่งมีโครงสร้างสำหรับการจัดการตำแหน่ง PositionIndicators (เช่น การเลื่อนหรือระดับเสียง) พื้นที่ที่ด้านบนของหน้าจอสำหรับแสดงเวลาและสถานะแอปพลิเคชัน และยังรองรับ Vignette เพื่อเบลอขอบด้านบนและด้านล่างของหน้าจอสำหรับเนื้อหาที่เลื่อนได้ พื้นที่หลักของ Scaffold คือที่วางเนื้อหาของแอปพลิเคชัน (I5e0bf)
- เพิ่มการใช้งาน TimeText สำหรับ Wear Compose (I5654c)
ไลบรารีการนำทางของ Wear Compose
เราได้เพิ่มการเปิดตัวครั้งแรกของไลบรารีการนำทาง Wear Compose ซึ่งช่วยให้ผสานรวมไลบรารี Wear Compose กับ Androidx Navigation ได้ ซึ่งเป็นวิธีง่ายๆ ในการไปยังฟังก์ชัน @Composable เป็นปลายทางในแอปพลิเคชัน
การเปิดตัวครั้งแรกนี้มีฟีเจอร์ต่อไปนี้
SwipeDismissableNavHost
Composable ที่โฮสต์กราฟการนำทางและให้การนำทางย้อนกลับผ่านท่าทางสัมผัสการปัดNavGraphBuilder.composable
ส่วนขยายเพื่อช่วยสร้างกราฟการนำทางrememberSwipeDismissableNavController()
เพื่ออนุญาตสถานะการย้าย
ตัวอย่างการใช้งานที่เราสร้าง 2 หน้าจอและไปยังมาระหว่างหน้าจอเหล่านั้น
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") } } }
Wear Compose Navigation จะรวมอยู่ในแพ็กเกจเป็นไลบรารีแยกต่างหาก เพื่อให้แอปพลิเคชัน Wear Compose แบบง่ายๆ ที่ใช้การนำทางที่สร้างขึ้นเองไม่จำเป็นต้องใช้ไลบรารีการนำทางของ Androidx
การเปลี่ยนแปลง API
- อัปเดต
SwipeDismissableNavHost
เพื่อรองรับrememberSaveable
โดยการตั้งค่าข้อมูลประจำตัวหลักสำหรับพื้นหลังและเนื้อหา (I746fd) - เราได้เพิ่มอะแดปเตอร์ PositionIndicator ที่จัดการ LazyListState ได้ (I21b88)
- อัปเดต SwipeToDismissBox ให้รองรับ rememberSaveable (Ie728b)
- เราได้เพิ่มการรองรับ reverseLayout ลงใน ScalingLazyColumn ซึ่งจะช่วยให้สามารถย้อนทิศทางการเลื่อนและเลย์เอาต์ได้ (I9e2fc)
- เลิกใช้งาน
performGesture
และGestureScope
ซึ่งถูกแทนที่ด้วยperformTouchInput
และTouchInjectionScope
(Ia5f3f, b/190493367) - เราได้เปลี่ยนชื่อ VignetteValue เป็น VignettePosition และเปลี่ยนชื่อ VignetteValue.Both เป็น VignettePosition.TopAndBottom (I57ad7)
- เราได้เปลี่ยนชื่อ ScalingLazyColumnState เป็น ScalingLazyListState, ScalingLazyColumnItemInfo เป็น ScalingLazyListItemInfo, ScalingLazyColumnLayoutInfo เป็น ScalingLazyListLayoutInfo และ ScalingLazyColumnScope เป็น ScalingLazyListScope ในกรณีที่เราตัดสินใจที่จะเพิ่มการติดตั้งใช้งาน ScalingLazyRow ในอนาคต (I22734)
การแก้ไขข้อบกพร่อง
- อัปเดตเอกสารประกอบ CompactChip เพื่ออธิบายสิ่งที่จะเกิดขึ้นหากไม่ได้ระบุทั้งไอคอนและป้ายกำกับ (I4ba88)
- เราได้ปรับเปลี่ยนคอมโพเนนต์การ์ด Wear บางอย่าง (I6b3d0)
- ลดระยะห่างระหว่าง TitleCard กับ Title และ Body จาก 8.dp เป็น 2.dp
- เปลี่ยนแบบอักษรส่วนหัวของ TitleCard จาก body เป็น title3
- เปลี่ยนการไล่สีพื้นหลังของการ์ดเพื่อให้พื้นหลังดูเข้มขึ้น
เวอร์ชัน 1.0.0-alpha05
1 กันยายน 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha05
และ androidx.wear.compose:compose-material:1.0.0-alpha05
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- ทำเครื่องหมาย ArcPaddingValues เป็น @Stable (I57deb)
- ตอนนี้ ScalingLazyColumnState ได้ใช้การติดตั้งอินเทอร์เฟซ ScrollableState แล้ว ซึ่งช่วยให้นักพัฒนาแอปเข้าถึงการเลื่อนคอมโพเนนต์แบบเป็นโปรแกรมได้ (I47dbc)
การแก้ไขข้อบกพร่อง
- เราได้ลดระยะห่างระหว่างไอคอนกับข้อความในชิปและ ToggleChip เพื่อให้สอดคล้องกับการอัปเดตข้อกำหนด UX (I83802)
เวอร์ชัน 1.0.0-alpha04
18 สิงหาคม 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha04
และ androidx.wear.compose:compose-material:1.0.0-alpha04
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม SwipeToDismissBox และตัวแก้ไขที่ปัดได้ซึ่งใช้เพื่อ รองรับท่าทางสัมผัสปัดจากซ้ายไปขวาเพื่อปิดได้ แม้ว่าจะไม่ขึ้นอยู่กับคอมโพเนนต์การนำทาง แต่คาดว่าจะใช้เพื่อออกจากหน้าจอหนึ่งและไปยังอีกหน้าจอหนึ่ง เพิ่ม การทดสอบการผสานรวมเพื่อสาธิตการปัดเพื่อปิด (I7bbaa)
- เราได้เพิ่มอินเทอร์เฟซ ScalingLazyColumnItemInfo และ ScalingLazyColumnLayoutInfo ลงในคลาส ScalingLazyColumnState เพื่อให้นักพัฒนาแอปทราบตำแหน่งและขนาดจริงของรายการใน ScalingLazyColumn หลังจากใช้การปรับขนาดแล้ว นอกจากนี้ เรายังแก้ไขข้อบกพร่องเกี่ยวกับวิธีคำนวณการปรับขนาดเมื่อใช้การเว้นวรรคเนื้อหา "ด้านบน" กับ ScalingLazyColumn (I27c07)
การเปลี่ยนแปลง API
- เพิ่มคลาส CurvedTextStyle เพื่อระบุตัวเลือก การจัดรูปแบบข้อความโค้ง คล้ายกับ TextStyle แต่ตอนนี้รองรับเฉพาะสี fontSize และพื้นหลัง และเราจะเพิ่มตัวเลือกการจัดรูปแบบอื่นๆ ในอนาคต (I96ac3)
- เราได้เพิ่มอินเทอร์เฟซ ScalingLazyColumnItemInfo และ ScalingLazyColumnLayoutInfo ลงในคลาส ScalingLazyColumnState เพื่อให้นักพัฒนาแอปทราบตำแหน่งและขนาดจริงของรายการใน ScalingLazyColumn หลังจากใช้การปรับขนาดแล้ว นอกจากนี้ เรายังแก้ไขข้อบกพร่องเกี่ยวกับวิธีคำนวณการปรับขนาดเมื่อใช้การเว้นวรรคเนื้อหา "ด้านบน" กับ ScalingLazyColumn (I27c07)
- เพิ่ม
@ExperimentalWearMaterialApi
ไปยังการแจงนับSwipeDismissTarget
ซึ่งเป็นส่วนหนึ่งของSwipeToDismissBox
API (I48b5e)
การแก้ไขข้อบกพร่อง
- เพิ่มสื่อการทดสอบสำหรับ SwipeToDismissBox (I9febc)
เวอร์ชัน 1.0.0-alpha03
4 สิงหาคม 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha03
และ androidx.wear.compose:compose-material:1.0.0-alpha03
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เพิ่มคอมโพเนนต์ CurvedText ซึ่งช่วยให้นักพัฒนาแอปเขียนข้อความตาม ความโค้งของวงกลม (มักจะอยู่ที่ขอบของหน้าจอวงกลม) ได้อย่างง่ายดาย (Id1267)
- เราได้เปลี่ยนชื่อ
CardDefaults.imageBackgroundPainter()
เป็นCardDefaults.imageWithScrimBackgroundPainter()
เพื่อให้ชัดเจนว่าภาพพื้นหลังจะมีภาพกึ่งโปร่งแสงซ้อนอยู่ (I53206) - เพิ่มคอมโพเนนต์ ScalingLazyColumn ที่มีคอมโพเนนต์รายการสำหรับ Wear Material ซึ่งให้มุมมองฟิชอายโดยที่เนื้อหาของรายการจะลดขนาดลงและโปร่งใสขึ้นเมื่อเลื่อนไปที่ขอบของคอมโพเนนต์ (I7070c)
การแก้ไขข้อบกพร่อง
- เราได้เปลี่ยนสีเริ่มต้นของเนื้อหา appName ใน AppCard เพื่อตอบสนองต่อการอัปเดตข้อกำหนด UX ตอนนี้สีเริ่มต้นสำหรับ appName คือ
MaterialTheme.colors.onSurfaceVariant
นอกจากนี้ ยังได้เพิ่มคำอธิบายเอกสารพารามิเตอร์ที่ขาดหายไปสำหรับช่องชื่อ (Ic4ad1)
เวอร์ชัน 1.0.0-alpha02
21 กรกฎาคม 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha02
และ androidx.wear.compose:compose-material:1.0.0-alpha02
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มคลาส CurvedRow ใหม่ไปยัง Composable ที่จัดวางในส่วนโค้ง (I29941)
- เพิ่มการ์ดประเภทใหม่เพื่อใช้ในแอปพลิเคชัน (TitleCard) รวมถึงเพิ่มการรองรับการใช้รูปภาพเป็นพื้นหลังของการ์ดเพื่อเน้นเนื้อหา (I53b0f)
การเปลี่ยนแปลง API
- เพิ่มการรองรับการจัดแนวรัศมีให้กับ CurvedRow (คล้ายกับการ จัดแนวตั้งในแถว) (Id9de5)
- เพิ่มคลาส CurvedRow ใหม่ไปยัง Composable ที่จัดวางในส่วนโค้ง (I29941)
- เพิ่มการ์ดประเภทใหม่เพื่อใช้ในแอปพลิเคชัน (TitleCard) รวมถึงเพิ่มการรองรับการใช้รูปภาพเป็นพื้นหลังของการ์ดเพื่อเน้นเนื้อหา (I53b0f)
- เพิ่มไอคอนสลับ (ช่องทําเครื่องหมาย สวิตช์ และปุ่มตัวเลือก) ลงใน ToggleChipDefaults เพื่อให้นักพัฒนาแอปกําหนดค่า ToggleChip และ SplitToggleChips ได้ง่ายขึ้น (I7b639)
- เราได้อัปเดตระยะขอบเนื้อหาเริ่มต้นและสิ้นสุดสำหรับชิปเพื่อให้มีขนาด 14.dp อย่างสม่ำเสมอ ไม่ว่าชิปจะมีไอคอนหรือไม่ก็ตาม (ก่อนหน้านี้คือ 12.dp หากมีไอคอน และ 14.dp หากไม่มี) (I34c86)
การแก้ไขข้อบกพร่อง
- เพิ่มการทดสอบสำหรับ CurvedRow (I93cdb)
- เชื่อมโยงทรัพยากร Dependency ของ Wear Compose กับ Compose 1.0.0-rc01 (Ie6bc9)
- เปลี่ยนการจัดการการวาดภาพพื้นหลังใน Cards และ Chips เพื่อให้ระบบครอบตัดรูปภาพแทนที่จะยืดรูปภาพเพื่อรักษาขนาดสัดส่วนของรูปภาพ (I29b41)
- เพิ่มการสาธิตและการทดสอบการผสานรวมสำหรับ Button และ ToggleButton (5e27ed2)
- เพิ่มการทดสอบชิปเพื่อครอบคลุมสีเนื้อหาสำหรับ ImageBackgroundChip (Ia9183)
เวอร์ชัน 1.0.0-alpha01
1 กรกฎาคม 2021
androidx.wear.compose:compose-foundation:1.0.0-alpha01
และ androidx.wear.compose:compose-material:1.0.0-alpha01
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
Wear Compose เป็นไลบรารีที่ใช้ Kotlin และ Compose ซึ่งรองรับ Material Design สำหรับ Wear ซึ่งเป็นส่วนขยายของ Material Design สำหรับอุปกรณ์ที่สวมใส่ได้ของ WearOS การเปิดตัวเวอร์ชันอัลฟ่าครั้งแรกนี้มีการใช้งานฟังก์ชันเบื้องต้นต่อไปนี้
- ธีม Material - กำหนดค่าสี การพิมพ์ และรูปร่างอย่างสอดคล้องกันในคอมโพเนนต์ที่ใช้จากไลบรารีนี้
- ชิป, CompactChip - ชิปมีรูปร่างเป็นรูปสนามกีฬาและมีรูปแบบต่างๆ ให้เลือกใช้เพื่อนำเนื้อหาไอคอน ป้ายกำกับ และป้ายกำกับรอง
- - ToggleChip, SplitToggleChip - ชิปประเภทพิเศษที่มีช่องสำหรับไอคอนสลับ 2 สถานะ เช่น ปุ่มตัวเลือกหรือช่องทำเครื่องหมาย นอกจากนี้ SplitToggleChip ยังมีพื้นที่ที่แตะได้ 2 ส่วน โดยส่วนหนึ่งคลิกได้และอีกส่วนหนึ่งสลับได้
- Button, CompactButton - ปุ่มมีรูปร่างเป็นวงกลม โดยมีช่องเนื้อหาเดียวสำหรับไอคอนหรือข้อความสั้นๆ (สูงสุด 3 อักขระ)
- ToggleButton - ปุ่มที่เปิดหรือปิดการดำเนินการ โดยมีช่องเดียวสำหรับไอคอนหรือข้อความสั้นๆ (สูงสุด 3 อักขระ)
- การ์ด, AppCard - รูปสี่เหลี่ยมผืนผ้าที่มีมุมโค้งมน มีช่องสำหรับเนื้อหา เช่น ไอคอนแอป เวลา ชื่อ และเนื้อหา
ในรุ่นต่อๆ ไป เราจะขยายชุดวิดเจ็ตโดยเพิ่มการรองรับตัวเลือก แถบเลื่อน รายการ ตัวบ่งชี้หน้า ไดอะล็อก ตัวบ่งชี้แถบเลื่อน ข้อความแจ้ง และอื่นๆ ของ Material Design สำหรับ Wear
นอกจากนี้ เรายังจะให้การสนับสนุนฟีเจอร์อื่นๆ ที่เฉพาะเจาะจงสำหรับอุปกรณ์ที่สวมใส่ได้ เช่น เลย์เอาต์และข้อความโค้ง รวมถึงโครงสร้างพื้นฐานที่จะช่วยให้นักพัฒนาแอปสร้างแอป/ภาพซ้อนทับสำหรับอุปกรณ์ที่สวมใส่ได้ง่ายขึ้น
Wear Compose Material ออกแบบโดยใช้หลักการเดียวกับ Compose Material แม้ว่าจะมุ่งเป้าไปที่อุปกรณ์ที่สวมใส่ได้ก็ตาม ควรใช้ไลบรารี Material ของ Wear Compose แทนไลบรารี Material ของ Compose เมื่อสร้างแอปสำหรับอุปกรณ์ที่สวมใส่ได้
ไลบรารี "Material" ทั้ง 2 รายการควรพิจารณาว่าไม่สามารถใช้ร่วมกันได้และไม่ควรใช้ร่วมกันในแอปเดียวกัน หากนักพัฒนาแอปพบว่าตนเองรวมไลบรารี Compose Material ไว้ในการอ้างอิง แสดงว่า a) ไลบรารี Wear Compose Material ไม่มีคอมโพเนนต์บางอย่าง โปรดแจ้งให้เราทราบว่าคุณต้องการอะไร หรือ b) คุณกำลังใช้คอมโพเนนต์ที่เราไม่แนะนำให้ใช้ในอุปกรณ์ที่สวมใส่ได้