Wear Compose

  
เขียนแอปพลิเคชัน Jetpack Compose สำหรับอุปกรณ์ Wear OS โดย จัดฟังก์ชันการทำงานเพื่อรองรับขนาดอุปกรณ์และ ท่าทางสัมผัสการนำทางที่แตกต่างกัน
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า รุ่นอัลฟ่า
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 เพื่อให้ใช้ API SwipeToReveal ใน Wear Compose Material และ Wear Compose Material3 แทน โปรดแทนที่การนำเข้า Wear Foundation SwipeToReveal ด้วยการนำเข้า 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 ลงใน Composable SwipeToReveal; นำความสามารถในการปรับแต่ง 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 แทนเพื่อจดจำฟังก์ชัน Lambda contentDescription ล่าสุด (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 ใน Foundation SwipeToReveal ได้ย้ายไปที่แพ็กเกจ 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 ตอนนี้ลักษณะการทำงานเริ่มต้นของ Foundation SwipeToReveal คือการไม่อนุญาตให้ปัดเมื่อท่าทางสัมผัสเริ่มต้นจากขอบ ตอนนี้ลักษณะการทำงานเริ่มต้นของ Material3 SwipeToReveal คือการไม่อนุญาตให้ปัดเมื่อท่าทางสัมผัสเริ่มต้นจากขอบ เมื่อตั้งค่า 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 ด้วยพารามิเตอร์ Int maxFlingPages ซึ่งใช้เพื่อระบุจำนวนหน้าสูงสุดที่ 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 ผู้โทรปิดใช้การมอร์ฟอัตโนมัติได้โดยใช้ Wrapper TransformExclusion ใหม่ (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 Foundation LazyColumn ได้ชัดเจนยิ่งขึ้น (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 พร้อมด้วย API LazyColumnState และ 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 OS
  • SwipeDismissableNavHost ตอนนี้มีภาพเคลื่อนไหวเมื่อกดเข้าสำหรับการเปลี่ยนฉากในแอปแล้ว
  • PositionIndicator จะแสดงโดยค่าเริ่มต้นเมื่อหน้าจอแสดงเป็นครั้งแรก

การเปลี่ยนแปลงเพิ่มเติม

เวอร์ชัน 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 ใน Composable SwipeDismissableNavHost และใส่ปุ่มที่อนุญาตให้ผู้ใช้ไปที่หน้าจอก่อนหน้า
  • หากต้องการปิดภาพเคลื่อนไหวสำหรับตัวบ่งชี้ตำแหน่งระหว่างภาพเคลื่อนไหวแบบค่อยๆ ปรากฏและเปลี่ยนตำแหน่งภายในรายการที่เลื่อนได้ ให้ใช้ออบเจ็กต์ 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 จะปิดการเว้นวรรคแบบอักษรเพื่อให้สอดคล้องกันในแพลตฟอร์ม Android
  • Chip และ ToggleChip จะปรับความสูงให้พอดีกับเนื้อหาที่ขยายเนื่องจากแบบอักษรขนาดใหญ่เพื่อการช่วยเหลือพิเศษ
  • ตอนนี้ PositionIndicator มีข้อกำหนดของภาพเคลื่อนไหวแต่ละรายการสำหรับภาพเคลื่อนไหวแบบจางเข้า จางออก และเปลี่ยนตำแหน่งแล้ว เราขอแนะนำให้ปิดการจางเข้าและการเปลี่ยนตำแหน่งเมื่อใช้กับรายการที่เลื่อนได้เพื่อประสิทธิภาพ
  • ExpandableStateMapping มีวิธีใหม่ในการสร้าง ExpandableStates เมื่อจำเป็นต้องสร้างตามความต้องการและไม่จำเป็นต้องมีขอบเขต @Composable
  • Placeholder ตอนนี้อนุญาตให้รีเซ็ตได้หากเนื้อหาไม่อยู่ในสถานะพร้อมใช้งานอีกต่อไป นอกจากนี้ การตั้งค่าลดการเคลื่อนไหวจะมีผลกับเอฟเฟกต์ระยิบระยับและการเคลื่อนไหวแบบเช็ดออกใน Placeholder ด้วย

ปัญหาที่ทราบ

  • PositionIndicator จะไม่แสดงในตอนแรกเมื่อหน้าจอแสดงเป็นครั้งแรก เราตั้งใจที่จะทำการเปลี่ยนแปลงในเวอร์ชัน 1.4 อัลฟ่าช่วงต้นเพื่อให้แสดงในตอนแรก แต่จะไม่มีภาพเคลื่อนไหว

การเปลี่ยนแปลง API

  • เราได้เปลี่ยนชื่อระดับพื้นฐาน SwipeToDismissBox เป็น BasicSwipeToDismissBox ซึ่งจะทำให้เห็นความแตกต่างระหว่างคอมโพเนนต์ระดับ Foundation กับระดับ Material ได้ชัดเจนยิ่งขึ้นSwipeToDismissBox โดยตัวหลังจะดึงสีจาก MaterialTheme เพื่อใช้ในเลเยอร์กึ่งโปร่งใสและมอบหมายการติดตั้งใช้งานที่เหลือให้กับ BasicSwipeToDismissBox (Ibecfc)
  • เราได้ทําเครื่องหมาย rememberExpandableStateMapping เป็นเวอร์ชันทดลองและปรับปรุงประสิทธิภาพของ expandableItem (I5f6bc)
  • เราได้แทนที่คลาส SwipeToRevealAction ใน Material SwipeToReveal Card และ Chip API ด้วย API ที่อิงตามสล็อตโดยใช้ Composable SwipeToRevealPrimaryAction, 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 กับรายการที่เลื่อนได้ เราขอแนะนำให้ปิดใช้ Flag showFadeInAnimation และ 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 กับรายการที่เลื่อนได้ เราขอแนะนำให้ปิดใช้ Flag showFadeInAnimation และ 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 แล้ว การใช้งาน Material SwipeToDismissBox จะส่งต่อข้อมูลไปยัง 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)
ข้อความถูกตัดเมื่อใช้แบบอักษรขนาดใหญ่
รูปที่ 1: ข้อความถูกตัด
  • โดยจะไม่มีการแสดงอีกต่อไปเมื่อปิดการเว้นวรรคแบบอักษร
ข้อความไม่ถูกตัดเมื่อใช้แบบอักษรขนาดใหญ่
รูปที่ 2: ข้อความไม่ถูกตัด
  • เราได้อัปเดต 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

เวอร์ชัน 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: ข้อความไม่ถูกตัด

คุณใช้การตั้งค่าใหม่ได้แล้วตอนนี้โดยการลบล้างการจัดรูปแบบตัวอักษรในธีม ดูโค้ดตัวอย่าง

เวอร์ชัน 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 โดยจะจัดการโฟกัสระหว่างเครื่องมือเลือกต่างๆ เปิดใช้การจัดกึ่งกลางอัตโนมัติของเครื่องมือเลือกตามพารามิเตอร์ และอนุญาตให้นักพัฒนาแอปเปลี่ยนโฟกัสระหว่างเครื่องมือเลือกต่างๆ ขณะจัดการเหตุการณ์จากกลุ่ม ในโหมด Talkback PickerGroup จะจัดการโฟกัสของ 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 ที่กำหนดเป้าหมายเป็น Material ScalingLazyColumn ถูกเลิกใช้งานแล้ว โปรดอัปเดตเป็น Foundation.Lazy ScalingLazyColumn นอกจากนี้ ยังได้เพิ่มฟิลด์ anchorType ลงใน ScalingLazyListLayoutInfo ด้วย (I29d95)
  • ScalingLazyColumn ได้รับการทำเครื่องหมายว่าเลิกใช้งานแล้วในแพ็กเกจ Wear Compose Material (I16d34)
  • เราได้อัปเดตตัวแก้ไข ScrollAway เพื่อใช้ ScalingLazyListState จาก Wear Compose Foundation.Lazy และเลิกใช้งานการโอเวอร์โหลดที่ใช้ ScalingLazyListState จาก Wear Compose Material (Ifc42c)
  • เราได้อัปเดต Dialog API ให้ใช้ ScalingLazyListState จาก Foundation.Lazy และเลิกใช้งานการโอเวอร์โหลดที่ใช้ Material ScalingLazyListState (Ic8960)
  • เราได้อัปเดต Picker API ให้ใช้ ScalingParams จาก Foundation.Lazy และเลิกใช้งานโอเวอร์โหลดที่ใช้ Material ScalingParams แล้ว (Idc3d8)

การแก้ไขข้อบกพร่อง

  • เราได้แก้ไขข้อบกพร่องที่ทำให้เกิดการจัดองค์ประกอบใหม่ที่ไม่จำเป็นใน ScalingLazyListState.centerItemIndex โดยตรวจสอบว่าระบบจะพุชการอัปเดตก็ต่อเมื่อค่ามีการเปลี่ยนแปลงจริง (Ia9f38)
  • เราได้ปรับปรุงประสิทธิภาพของ SwipeToDismissBox (I3933b)
  • เพิ่มการทดสอบเปรียบเทียบสำหรับ ScalingLazyColumn ใน Wear Compose Foundation (Ie00f9)
  • เราได้อัปเดตเมธอดของคลาส ScalingLazyColumn ภายในบางรายการใน Material เพื่อใช้เมธอดที่เทียบเท่าจาก Foundation.Lazy (I38aab)
  • เราได้แก้ไขปัญหาบางอย่างในการทดสอบ Picker และเพิ่มการทดสอบเพิ่มเติมเพื่อตรวจสอบการเลื่อนด้วยออฟเซ็ต (I6ac34)
  • เราได้ย้ายข้อมูลScalingLazyColumnการสาธิตการผสานรวมให้ขึ้นอยู่กับ Foundation.Lazy แทนที่จะเป็น Material ScalingLazyColumn (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

  • เราได้เพิ่ม HierarchicalFocusCoordinatorcomposable เพื่อให้ทำเครื่องหมายซับทรีของ 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

ฟีเจอร์ใหม่

  • เราได้อัปเดตฟังก์ชันการทำงานของตัวยึดตำแหน่งเวอร์ชันทดลองเพื่อให้ระบบใช้เอฟเฟกต์ "เช็ดออก" ทันทีเมื่อเนื้อหาพร้อมใช้งาน แทนที่จะรอให้ลูปภาพเคลื่อนไหวถัดไปเริ่ม นอกจากนี้ เรายังได้อัปเดตภาพเคลื่อนไหวแบบกากเพชรและแบบเช็ดออกด้วย (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 a TextStyle now also respects the fontWeight(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 แทน เนื่องจากใช้การจัดธีม Material

  • curvedComposable - ห่อหุ้มเนื้อหาที่ใช้ได้กับ 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() ซึ่งจะช่วยให้นักพัฒนาแอปสร้าง Composable Icon() ของตนเองด้วยชุด 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 default extraPadding 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 using viewportVerticalOffsetResolver. (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)

  • ดู Codelab ใหม่สำหรับ Compose สำหรับ WearOS

การเปลี่ยนแปลง 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)
    1. ลดระยะห่างระหว่าง TitleCard กับ Title และ Body จาก 8.dp เป็น 2.dp
    2. เปลี่ยนแบบอักษรส่วนหัวของ TitleCard จาก body เป็น title3
    3. เปลี่ยนการไล่สีพื้นหลังของการ์ดเพื่อให้พื้นหลังดูเข้มขึ้น

เวอร์ชัน 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) คุณกำลังใช้คอมโพเนนต์ที่เราไม่แนะนำให้ใช้ในอุปกรณ์ที่สวมใส่ได้