การเขียนของ Wear

  
เขียนแอปพลิเคชัน Jetpack Compose สำหรับอุปกรณ์ Wear OS โดย ให้ฟังก์ชันการทำงานเพื่อรองรับขนาดอุปกรณ์และ ท่าทางสัมผัสการนำทางที่แตกต่างกัน
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า รุ่นอัลฟ่า
7 ตุลาคม 2026 1.7.1 - - 1.8.0-alpha01

การประกาศทรัพยากร Dependency

หากต้องการเพิ่มทรัพยากร Dependency ใน Wear คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google

เพิ่มทรัพยากร Dependency สำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับ แอปหรือโมดูล

Groovy

dependencies {
    implementation "androidx.wear.compose:compose-foundation:1.7.1"

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

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

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.7.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.7.1")

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

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.7.1")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.7.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.
}

ดูข้อมูลเพิ่มเติมเกี่ยวกับทรัพยากร Dependency ได้ที่เพิ่มทรัพยากร Dependency ของบิลด์

ความคิดเห็น

ความคิดเห็นของคุณช่วยให้ Jetpack ทำงานได้ดีขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว

สร้างปัญหาใหม่

ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของ Issue Tracker

เวอร์ชัน 1.8

เวอร์ชัน 1.8.0-alpha01

7 ตุลาคม 2026

androidx.wear.compose:compose-*:1.8.0-alpha01 เปิดตัวแล้ว เวอร์ชัน 1.8.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

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

  • เพิ่มโอเวอร์โหลด AppScaffold และ ScreenScaffold ใหม่โดยไม่มีพารามิเตอร์ timeText ซึ่งเป็นการกำหนดทิศทางที่แนะนำสำหรับ Wear Compose 1.8 ในการย้ายข้อมูลไปยังแถบสถานะระบบใหม่ เมื่อใช้ในบิลด์เก่าที่ไม่มีแถบสถานะระบบ การโอเวอร์โหลดใหม่เหล่านี้จะกลับไปใช้ค่าเริ่มต้น TimeText ตอนนี้การโอเวอร์โหลดที่มีอยู่จะย้ายไปยังแถบสถานะของระบบโดยค่าเริ่มต้น เว้นแต่จะมีการระบุ timeText ที่กำหนดเองอย่างชัดเจน (I40a5e)
  • เพิ่ม StatusBarSuppression Helper Composable เพื่อระงับแถบสถานะของระบบภายในคอมโพเนนต์แบบเต็มหน้าจอและแบบซ้อนทับ (I387c3)
  • เปิดตัว Modifier.curveToEdge ซึ่งใช้ Shader เพื่อโค้งงอคอมโพเนนต์ไปยังเส้นขอบของคอนเทนเนอร์หลักรอบๆ กึ่งกลาง โดยจะถือว่าคอนเทนเนอร์เป็นวงกลมเสมอ ปัญหาที่ทราบแล้ว: คอมโพเนนต์ที่คลิกได้จะมีขอบเขตที่คลิกได้ไม่ถูกต้องและ TalkBack จะไฮไลต์คอมโพเนนต์ไม่ถูกต้อง (I8bbaa)
  • เพิ่ม PullToRefreshBox และ PullToRefreshState ลงใน Material 3 ของ Wear Compose พร้อมระยะทางการลากและเกณฑ์การรีเฟรชที่ปรับให้เหมาะกับอุปกรณ์ Wear OS(Iee9a5)
  • เลื่อนระดับ PullToRefreshBox, PullToRefreshDefaults และ PullToRefreshState เป็น API สาธารณะที่เสถียรใน Wear Compose Material 3 (I079b6)
  • เพิ่มการโอเวอร์โหลดของ SwipeToReveal ด้วยพารามิเตอร์การเปลี่ยนรูปแบบเพื่อรองรับการเปลี่ยนรูปแบบคอนเทนเนอร์ใน TransformingLazyColumn (I328ce)
  • ตอนนี้ไลบรารีจะกำหนดเป้าหมายเป็น Kotlin 2.2 และต้องใช้ kotlinc 2.2 (I82396, b/498369605)
  • นำแฟล็กฟีเจอร์เวอร์ชันทดลองออกแล้ว WearComposeFoundationFlags.isTransformingLazyColumnClickableThresholdEnabled ตอนนี้เราเปิดใช้เกณฑ์ที่คลิกได้ใน TransformingLazyColumn เสมอ (Ib68c8)
  • นำ Flag การทดสอบ WearComposeFoundationFlags.isTransformingLazyColumnPinnableContainerEnabled ออกแล้ว (Ibad2e)

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

  • แก้ไขข้อบกพร่องใน Wear Compose Foundation HorizontalPager ซึ่งการจัดการท่าทางสัมผัสไม่สามารถจัดลำดับความสำคัญระหว่างการแบ่งหน้าและการปัดเพื่อปิดได้อย่างถูกต้อง (I54caf)
  • เพิ่ม Modifier.testTag("time_text") ลงใน TimeText เพื่อให้ตรวจพบได้ในกรณีทดสอบที่แถบสถานะของระบบกลับไปใช้ TimeText ที่ใช้ได้โดยค่าเริ่มต้น (Iacb09)
  • แก้ไขปัญหา IllegalStateException ใน OneHandedGestureModifier.updateCompositionLocals ที่เกิดจากการเข้าถึงโหนดก่อนการแนบ (I662271)
  • เพิ่มการรองรับท่าทางสัมผัส AlertDialog เพื่อให้การเลื่อนลงและการคลิกปุ่ม Confirm พร้อมใช้งานโดยค่าเริ่มต้น (I51f81)
  • แก้ไขTimeTextแฟลชในแอปเมื่อเปลี่ยนไปใช้แถบสถานะที่รับช่วงมาด้วยการปรับปรุงตรรกะการระงับการมองเห็นใน ScreenContent (I12dd01)
  • แก้ไขปัญหาที่คอมโพเนนต์ที่ระงับแถบสถานะระบบ (เช่น Stepper) กลับไปแสดงผล TimeText ในแอป (I86830)
  • แก้ไขStatusBarSuppression()ให้LocalStatusBarEnabledเมื่อปิดใช้แถบสถานะส่วนกลาง เพื่อป้องกันการส่งเลย์เอาต์ที่ไม่จำเป็นในกล่องโต้ตอบ (I4f77f6)
  • แก้ไขปัญหาใน Wear Material3 Scaffold ที่ currentScrollInfoProvider ไม่ได้สืบทอดมาจากหน้าจอพื้นฐานเมื่อหน้าจอด้านบนแสดงค่าเป็น Null (I97874)
  • เพิ่มการรองรับการระงับแถบสถานะ Dialog และ ScreenScaffold ที่ซ้อนกันใน Scaffold ของ Wear Material3 (I01772)
  • แก้ไขปัญหาใน AppScaffold ที่การวางซ้อนแถบสถานะปรากฏขึ้นอีกครั้งขณะเลื่อนเมื่อรายการ Anchor ด้านบน (I421b3)
  • แก้ไขปัญหาที่ScreenScaffoldการเว้นวรรคด้านบนยุบเมื่อเปิดหน้าจอที่มีโหมดแถบสถานะที่ปิดใช้ (I7cf4f)
  • เพิ่มการรองรับการจัดระเบียบแถบสถานะแบบหลายหน้าต่างลงในโครงสร้างพื้นฐานของ Material3 สำหรับ Wear Compose เพื่อให้กล่องโต้ตอบและหน้าต่างแยกต่างหากขับเคลื่อนตัวควบคุมแถบสถานะของระบบได้เอง (Ibf82c)
  • ปรับปรุง TransformingLazyColumn ให้รองรับการเว้นวรรคของรายการเชิงลบ (I99ac7)
  • ปรับปรุงตัวบ่งชี้ท่าทางสัมผัสโดยแทนที่พื้นหลังของตัวชี้ตัวบ่งชี้ในทรัพยากรด้วยฟังก์ชัน Canvas โดยใช้เส้นทาง (Iee2b7)
  • ปรับปรุงตัวบ่งชี้ท่าทางสัมผัสโดยแทนที่ AVD หลักและ AVD ที่ยกเลิกในทรัพยากรด้วยฟังก์ชันการวาดโดยใช้เส้นทาง (Ib2d05)
  • อัปเดตทรัพยากร Dependency ของ androidx.lifecycle:lifecycle-runtime เป็น 2.10.0 แล้ว ต้องใช้เวอร์ชันนี้เพื่อให้การตรวจสอบ Lint ของรันไทม์วงจรการใช้งานแบบรวมทำงานร่วมกับ AGP เวอร์ชัน 9.5.0-alpha04 ขึ้นไปได้ (I99bfd, b/556807521)
  • อัปเดตโปรไฟล์พื้นฐานสำหรับไลบรารี Wear Compose Foundation, Material3 และ Navigation3 (I9b0a3)

เวอร์ชัน 1.7

เวอร์ชัน 1.7.1

7 ตุลาคม 2026

androidx.wear.compose:compose-*:1.7.1 เปิดตัวแล้ว เวอร์ชัน 1.7.1 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขOneHandedGestureHintScrollIndicatorภาพเคลื่อนไหวที่กะพริบ (I650c6)
  • นำการล็อกการเลื่อนออกจาก OneHandedGestureScrollIndicator และจัดการระดับการมองเห็นตัวบ่งชี้ใน ScreenScaffold ด้วย Composition Local (I13050)
  • แก้ไข IllegalStateException ใน Modifier.oneHandedGesture (I35151)

เวอร์ชัน 1.7.0

23 กันยายน 2026

androidx.wear.compose:compose-*:1.7.0 เปิดตัวแล้ว เวอร์ชัน 1.7.0 มีการเปลี่ยนแปลงเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.6.0

  • เปิดตัว API ใหม่สำหรับท่าทางสัมผัสด้วยมือเดียว ซึ่งประกอบด้วยตัวแฮนเดิลท่าทางสัมผัสสำหรับการดำเนินการหลัก (การบีบสองนิ้ว) และการดำเนินการปิด (การหมุนข้อมือ) รวมถึงตัวบ่งชี้แบบเคลื่อนไหวสำหรับการคลิก/การเลื่อน/การแบ่งหน้าที่จะแสดงเมื่อมีท่าทางสัมผัส
  • เพิ่มการรองรับ PinnableContainer ใน TransformingLazyColumn เพื่อเก็บรายการไว้ในหน่วยความจำแทนที่จะทิ้งเมื่อเลื่อนรายการออกจากวิวพอร์ต
  • TransformingLazyColumn ตอนนี้รองรับการเคลื่อนไหวของรายการต่างๆ ขณะที่เลื่อนออกจากวิวพอร์ตแล้ว ซึ่งช่วยให้รายการต่างๆ เลื่อนออกจากหน้าจอได้อย่างราบรื่นแทนที่จะจางหายไป
  • เพิ่ม firstLayoutItemProvider ลงใน TransformingLazyColumn เป็นการปรับแต่งที่ไม่บังคับสำหรับรายการเลย์เอาต์แรก เมื่อระบุ ผู้ให้บริการจะกำหนดรายการและขอบของรายการที่ใช้เป็นข้อมูลอ้างอิงตำแหน่งเริ่มต้น ซึ่งมีประโยชน์ในการควบคุมทิศทางการเลื่อนเนื้อหาเมื่อมีการอัปเดตรายการแบบไดนามิก
  • การปรับปรุง SwipeToReveal เพื่อรองรับการเลื่อนที่ซ้อนกัน การปัดอย่างรวดเร็ว การสั่นครั้งที่ 2 เมื่อเปิดเผยบางส่วน และ actionContentSpacing สำหรับระยะห่างระหว่างเนื้อหาหลักกับปุ่มการทำงาน
  • เปิดตัวคำอธิบายประกอบ @FrequentlyChangingValue และ @RememberInComposition ที่แสดงคำเตือนของ Lint เพื่อป้องกันปัญหาด้านประสิทธิภาพที่เกิดจากการอ่านการอัปเดตสถานะความถี่สูงหรือการลืมออบเจ็กต์ระหว่างการจัดองค์ประกอบ

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

  • อัปเดตทรัพยากร Dependency ของ androidx.lifecycle:lifecycle-runtime เป็น 2.10.0 แล้ว ต้องใช้เวอร์ชันนี้เพื่อให้การตรวจสอบ Lint ของรันไทม์วงจรการใช้งานแบบรวมทำงานร่วมกับ AGP เวอร์ชัน 9.5.0-alpha04 ขึ้นไปได้ (If8e16)

เวอร์ชัน 1.7.0-rc01

9 กันยายน 2569

androidx.wear.compose:compose-*:1.7.0-rc01 เปิดตัวแล้ว เวอร์ชัน 1.7.0-rc01 มีการคอมมิตเหล่านี้

  • การเผยแพร่ครั้งนี้จะอัปเดต Compose สำหรับ Wear OS เวอร์ชัน 1.7.0 เป็นรุ่นที่อาจได้รับการเผยแพร่ แต่ไม่มีการเปลี่ยนแปลงที่สำคัญอื่นๆ จากรุ่น 1.7.0-beta02

เวอร์ชัน 1.7.0-beta02

26 สิงหาคม 2026

androidx.wear.compose:compose-*:1.7.0-beta02 เปิดตัวแล้ว เวอร์ชัน 1.7.0-beta02 มีการเปลี่ยนแปลงเหล่านี้

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

  • อัปเดตโปรไฟล์พื้นฐานสำหรับไลบรารี Wear Compose Foundation, Material3 และ Navigation3 (I9b0a3)
  • แก้ไขการกะพริบของภาพเคลื่อนไหวคำแนะนำท่าทางสัมผัสใน OneHandedGestureScrollIndicator (6e0c1cb)

เวอร์ชัน 1.7.0-beta01

12 สิงหาคม 2569

androidx.wear.compose:compose-*:1.7.0-beta01 เปิดตัวแล้ว เวอร์ชัน 1.7.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

การเปิดตัว Compose สำหรับ Wear OS เวอร์ชัน 1.7.0-beta01 แสดงให้เห็นว่าไลบรารีเวอร์ชันนี้มีฟีเจอร์ครบถ้วนและ API ถูกล็อกแล้ว Wear Compose 1.7.0-beta01 มีฟังก์ชันการทำงานใหม่ต่อไปนี้

  • รองรับท่าทางสัมผัสด้วยมือเดียว ซึ่งประกอบด้วยตัวแฮนเดิลท่าทางสัมผัสสำหรับการดำเนินการหลัก (เช่น การบีบนิ้วสองครั้ง) และการดำเนินการยกเลิก (เช่น การหมุนข้อมือ) รวมถึงตัวบ่งชี้ภาพเคลื่อนไหวที่จะแสดงเมื่อท่าทางสัมผัสพร้อมใช้งานในองค์ประกอบ UI ที่คลิกได้ (เช่น ปุ่มและการ์ด) รายการที่เลื่อนได้ และเพจเจอร์
  • เพิ่มการรองรับ PinnableContainer ใน TransformingLazyColumn เพื่อเก็บรายการไว้ในหน่วยความจำแทนที่จะทิ้งเมื่อเลื่อนรายการออกจากวิวพอร์ต
  • TransformingLazyColumn ตอนนี้รองรับการเคลื่อนไหวของรายการต่างๆ ขณะที่เลื่อนออกจากวิวพอร์ตแล้ว ซึ่งช่วยให้รายการต่างๆ เลื่อนออกจากหน้าจอได้อย่างราบรื่นแทนที่จะจางหายไป
  • เพิ่ม firstLayoutItemProvider ลงใน TransformingLazyColumn เป็นการปรับแต่งที่ไม่บังคับสำหรับรายการเลย์เอาต์แรก เมื่อระบุ ผู้ให้บริการจะกำหนดรายการและขอบของรายการที่ใช้เป็นข้อมูลอ้างอิงตำแหน่งเริ่มต้น ซึ่งมีประโยชน์ในการควบคุมทิศทางการเลื่อนเนื้อหาเมื่อมีการอัปเดตรายการแบบไดนามิก
  • การปรับปรุง SwipeToReveal เพื่อรองรับการเลื่อนที่ซ้อนกัน การปัดอย่างรวดเร็ว การสั่นครั้งที่ 2 เมื่อเปิดเผยบางส่วน และ actionContentSpacing สำหรับระยะห่างระหว่างเนื้อหาหลักกับปุ่มการทำงาน
  • เปิดตัวคำอธิบายประกอบ @FrequentlyChangingValue และ @RememberInComposition ที่แสดงคำเตือนของ Lint เพื่อป้องกันปัญหาด้านประสิทธิภาพที่เกิดจากการอ่านการอัปเดตสถานะความถี่สูงหรือการลืมออบเจ็กต์ระหว่างการจัดองค์ประกอบ

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

  • เปลี่ยนชื่อ GestureAction เป็น OneHandedGestureAction, GesturePriority เป็น OneHandedGesturePriority และ GestureIndicatorSize เป็น OneHandedGestureIndicatorSize (Ifc7f4, b/522761843)

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

  • แก้ไขปัญหาใน ScrollInfoProvider ซึ่งทำให้ TimeText กะพริบหรือหายไปเมื่อรายการในลิสต์มีการเปลี่ยนแปลงหรือปรับขนาด (Ief762, b/537433564)

เวอร์ชัน 1.7.0-alpha07

29 กรกฎาคม 2026

androidx.wear.compose:compose-*:1.7.0-alpha07 เปิดตัวแล้ว เวอร์ชัน 1.7.0-alpha07 มีการเปลี่ยนแปลงเหล่านี้

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

  • OneHandedGesture API ที่ปรับโครงสร้างใหม่ ซึ่งแทนที่สถานะตัวบ่งชี้บูลีน (ที่ต้องรีเซ็ตหลังจากแสดงตัวบ่งชี้) ด้วยฟังก์ชันระงับเพื่อเรียกใช้ภาพเคลื่อนไหว ตอนนี้ตัวบ่งชี้แต่ละประเภทมีคลาสสถานะตัวบ่งชี้ของตัวเอง ซึ่งห่อหุ้มตรรกะของภาพเคลื่อนไหวสำหรับตัวบ่งชี้นั้น เปลี่ยนชื่อจาก key เป็น gestureId ใน GestureConfiguration (I7974f, b/522761843)
  • เพิ่มCompactButtonการโอเวอร์โหลดเนื้อหาแบบช่องเดียว (Idaffc, b/527889640)
  • เพิ่มการรองรับ PinnableContainer ใน TransformingLazyColumn (Id3dc9, b/492418172)

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

  • เพิ่มและอัปเดตเอกสารประกอบระดับโมดูลสำหรับ Wear Compose Foundation, Material 3 และ Navigation 3 (I111d7, b/498153783)
  • แก้ไขปัญหาใน ScreenScaffold ที่การจัดองค์ประกอบใหม่อาจทำให้ ScrollInfoProvider ที่ไม่ได้จดจำรีเซ็ตสถานะการติดตามการเลื่อน (I8be02, b/524620765)
  • แก้ไขข้อผิดพลาด IllegalArgumentException: maxWidth must be >= than minWidth ที่เกิดจากการเว้นวรรคแนวนอนขนาดใหญ่ (I014e8, b/531192734)
  • แก้ไขภาพเคลื่อนไหว EdgeButton เมื่อปัดอย่างรวดเร็ว (I9657f, b/512700520)

เวอร์ชัน 1.7.0-alpha06

15 กรกฎาคม 2026

androidx.wear.compose:compose-*:1.7.0-alpha06 เปิดตัวแล้ว เวอร์ชัน 1.7.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้

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

  • ย้าย Composable ของ ButtonContent, AppCardContent และ TitleCardContent สำหรับ Material3 ไปยังออบเจ็กต์ ButtonDefaults และ CardDefaults ตามลำดับ (I8d589, b/527889640)
  • นำค่าเริ่มต้นออกจากพารามิเตอร์ Modifier.oneHandedGesture gestureLabel (Ica100, b/527068051)
  • เปลี่ยนชื่อ gestureLabel เป็น onGestureLabel ใน Modifier.oneHandedGesture และทำให้เป็นค่า Null ได้ เพื่อให้สอดคล้องกับพารามิเตอร์ contentDescription อื่นๆ (I952a8, b/527068051)
  • เปิดตัว OneHandedGestureIndicatorState เพื่อประสานงานการมองเห็นและภาพเคลื่อนไหวระหว่าง Modifier.oneHandedGesture() กับตัวบ่งชี้ท่าทางสัมผัส แทนที่ InteractionSource ด้วยแนวทางที่ขับเคลื่อนด้วยสถานะนี้เพื่อการควบคุมวงจรที่ดีขึ้น เพิ่มพารามิเตอร์ wrapAround ลงใน OneHandedGestureDefaults.scrollToNextPage เพื่อให้สอดคล้องกับฟังก์ชันการเลื่อนด้วยท่าทางสัมผัสเริ่มต้นอื่นๆ (I9e1e3, b/522761843)

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

  • ชี้แจงเอกสารประกอบ interactionSource สำหรับ Modifier.oneHandedGesture เพื่อระบุว่ามีการโต้ตอบใดบ้างที่ปล่อยออกมา (I2dc8d)
  • เราได้นำการรองรับท่าทางสัมผัสด้วยมือเดียวใน AlertDialog ออกชั่วคราวโดยค่าเริ่มต้น เนื่องจากปัญหาเกี่ยวกับ Dependency ใน Wear SDK ในอุปกรณ์ของผู้บริโภคที่ไม่ได้ใช้ Wear SDK หรือท่าทางสัมผัสด้วยมือเดียว (Ib19e0, b/503841738)
  • ปรับปรุง TransformingLazyColumn เพื่อรองรับภาพเคลื่อนไหวของตําแหน่งสําหรับรายการที่เคลื่อนที่ออกจาก Viewport ซึ่งจะช่วยให้รายการเลื่อนออกนอกหน้าจอแทนที่จะจางหายไป นอกจากนี้ ยังแก้ไขปัญหาการสแนปภาพที่รายการที่ปรับขนาดแบบไดนามิกจะสแนปไปยังความสูงเป้าหมายทันทีระหว่างภาพเคลื่อนไหวการวาง (I89d84, b/525071281)
  • ใช้ ItemInfo ตามดัชนีใน firstVisibleItemLayoutItemInfo (I256e3, b/527881678)
  • แก้ไขลักษณะการทำงานของTimePickerภาพเคลื่อนไหวเมื่อเปิดใช้การเคลื่อนไหวลดลง (Ic9150, b/467288916)

เวอร์ชัน 1.7.0-alpha05

1 กรกฎาคม 2026

androidx.wear.compose:compose-*:1.7.0-alpha05 เปิดตัวแล้ว เวอร์ชัน 1.7.0-alpha05 มีการคอมมิตเหล่านี้

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

  • เพิ่มTransformingLazyColumnFirstLayoutItemProviderอินเทอร์เฟซใน Foundation เพื่อให้ปรับแต่งเนื้อหาที่เปลี่ยนทิศทางระหว่างการอัปเดตเนื้อหาได้ พร้อมด้วยการติดตั้งใช้งาน rememberTransformingLazyColumnFirstLayoutItemProvider และ rememberTransformingLazyColumnFirstVisibleItemProvider ที่พร้อมใช้งานใน Material3 (I54814, b/503353428)

  • เปลี่ยนชื่อพารามิเตอร์สำรองจาก current เป็น centerItem ใน TransformingLazyColumnFirstLayoutItemProvider เพิ่มTransformingLazyColumnStateส่วนขยายfirstVisibleItemLayoutItemInfoและlayoutItemInfoOf รวมถึงอัปเดตrememberTransformingLazyColumnFirstLayoutItemProviderให้ใช้ Lambda ที่สะอาดและอิงตามพารามิเตอร์ (I9a8d9, b/503353428)

  • เพิ่มการโอเวอร์โหลดสำหรับเนื้อหาปุ่มและ Card ของ Material3 แบบหลายช่อง เพื่อใช้กับท่าทางสัมผัสด้วยมือเดียว (I74ccb, b/515718015, b/490343658)

  • เพิ่มการรองรับการช่วยเหลือพิเศษในท่าทางสัมผัสด้วยมือเดียว (I0054d, b/519085906)

  • เปลี่ยนชื่อ OneHandedGestureDefaults.scrollToNextItem() เป็น OneHandedGestureDefaults.scrollDownToNextItem และเพิ่มพารามิเตอร์ wrapAround ลงในฟังก์ชันการเลื่อน OneHandedGestureDefaults (I940ce, b/509639667)

  • เพิ่ม Modifier.oneHandedGesture() ที่ไม่ใช่ Composable หากนักพัฒนาแอปต้องการระบุคีย์ด้วยตนเอง (I191e1, b/504712626)

  • เปลี่ยนชื่อ offsetOf API ใน RevealState เป็น positionOf (I2675f, b/522387997)

  • เปิดตัวพารามิเตอร์ actionContentSpacing ใน SwipeToReveal ซึ่งช่วยให้นักพัฒนาแอปปรับแต่งระยะห่างระหว่างช่องการดำเนินการกับเนื้อหาได้ (I2abaf, b/507073912)

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

  • แก้ไขปัญหาใน ScreenScaffold ที่การจัดองค์ประกอบใหม่อาจทำให้ ScrollInfoProvider ที่ไม่ได้จดจำรีเซ็ตสถานะการติดตามการเลื่อน (I98f6d, b/524620765)
  • TransformingLazyColumn สีแถบเลื่อนจะตามสีพื้นหลังของตัวบ่งชี้ท่าทางสัมผัสระหว่างภาพเคลื่อนไหวของตัวบ่งชี้ (I353fb, b/524915104)
  • เปลี่ยน OneHandedGestureIndicator gestureIndicatorTint เริ่มต้นเป็น LocalContentColor (I1abd3, b/524228063)
  • กำหนดพารามิเตอร์คำอธิบายเนื้อหาของเครื่องมือเลือกวันและปีของ DatePicker เพื่อรองรับการแปล (I5dcd9, b/430563857)
  • แนะนําความถี่ในการแสดงแบบปรับได้ให้กับ GestureIndicators โดยพิจารณาว่าตัวบ่งชี้แสดงภายในหรือภายนอกคอมโพเนนต์ UI โฮสต์ (Ic618f, b/515071642)
  • แก้ไขปัญหาการทำงานพร้อมกันเมื่อทริกเกอร์ท่าทางสัมผัสด้วยมือเดียว (I7b95f, b/512086558)

เวอร์ชัน 1.7.0-alpha04

3 มิถุนายน 2026

androidx.wear.compose:compose-*:1.7.0-alpha04 เปิดตัวแล้ว เวอร์ชัน 1.7.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้

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

  • เพิ่ม RevealState.drag(), SwipeToRevealDragScope และเปิดเผย flingBehavior ที่กำหนดเองใน SwipeToReveal เพื่อให้ควบคุมท่าทางการปัด ออฟเซ็ต และภาพเคลื่อนไหวการวางแบบเป็นโปรแกรมได้ (Ibfe56, [b/484185090]
  • ขยาย OneHandedGestureIndicator เพื่อรองรับทั้งการดำเนินการหลักและการดำเนินการปิด โดยย้ายสถาปัตยกรรมการเชื่อมโยงไปยัง InteractionSource เพื่อการจัดการวงจรแบบอัตโนมัติ (I7e893, [b/512836472]
  • เพิ่มการเลื่อนตามท่าทางสัมผัสแบบใหม่สำหรับคอมโพเนนต์ที่อิงตาม ScalingLazyColumn และกล่องโต้ตอบการแจ้งเตือน การอัปเดตนี้จะเปิดตัวการเลื่อนหน้าจอ 50% โดยค่าเริ่มต้นเพื่อให้คาดการณ์ได้ดียิ่งขึ้น และมีโหมดสแนปกับรายการที่ไม่บังคับสำหรับการไปยังส่วนต่างๆ อย่างแม่นยำ (Ie9cfb, [b/509639667]
  • แทนที่แฟล็ก isOneHandedGesturesInAlertDialogEnabled ของ Wear Compose Material3 ด้วย LocalOneHandedGestureEnabled CompositionLocal ซึ่งใช้เพื่อปิดใช้ท่าทางสัมผัสด้วยมือเดียวในลําดับชั้นของคอมโพเนนต์ได้ (Ib9240, [b/516777416]
  • เลิกใช้งานแล้ว ButtonDefaultsExtraSmallIconSize และ ButtonDefaultsSmallIconSize ค่าเริ่มต้นเหล่านี้ใช้กับ CompactButton โดยเฉพาะ และได้ย้ายไปที่ CompactButtonDefaults แล้วExtraSmallIconSize และ CompactButtonDefaultsSmallIconSize ตามลำดับ (Id747c, [b/513588028]

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

  • แก้ไขภาพเคลื่อนไหว EdgeButton เมื่อปัดอย่างรวดเร็ว (I88215, [b/512700520]
  • แก้ไข AppScaffold TimeText ไม่อัปเดตเมื่อมีการจัดองค์ประกอบใหม่ (Iecea5, [b/512439755]
  • ScreenScaffold ควรใช้ PaddingValues ที่ได้รับจาก Lambda ของเนื้อหาภายในอย่างชัดเจน (I20d71, [b/512355364]
  • เปิดตัวคำอธิบายประกอบ @FrequentlyChangingValue และ @RememberInComposition เพื่อแสดงคำเตือนของ Lint เพื่อป้องกันปัญหาด้านประสิทธิภาพที่เกิดจากการอ่านการอัปเดตสถานะความถี่สูงหรือการลืมออบเจ็กต์ระหว่างการจัดองค์ประกอบ (I955f4, [b/409488336]
  • ตรวจสอบว่าเอฟเฟกต์ระลอกคลื่นมาจากตรงกลางปุ่มเมื่อทริกเกอร์ท่าทางด้วยมือเดียวสำหรับ Button Composable (Ie61ec, [b/514600304]
  • แก้ไขปัญหาการชนกันของคีย์ที่สำคัญใน Modifier.oneHandedGesture โดยการรวมการทำงานของท่าทางสัมผัสและลำดับความสำคัญไว้ในคีย์ที่สร้างขึ้นโดยอัตโนมัติ (I49760, [b/517045657]

เวอร์ชัน 1.7.0-alpha03

19 พฤษภาคม 2026

androidx.wear.compose:compose-*:1.7.0-alpha03 เปิดตัวแล้ว เวอร์ชัน 1.7.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้

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

  • เพิ่ม Modifier.oneHandedGesture() ที่ไม่ใช่ Composable หากนักพัฒนาแอปต้องการระบุคีย์ด้วยตนเอง (I191e1, b/504712626)
  • นำตัวบ่งชี้ท่าทางสัมผัสออกจาก OneHandedGestureDefaults และเพิ่มการรองรับสีให้กับท่าทางสัมผัสด้วยมือเดียว (I7934f, b/505009712, b/504712626)
  • เพิ่มการจัดการที่ชัดเจนสำหรับท่าทางสัมผัสการปิดด้วยมือเดียวใน AlertDialog (Id71e8, b/509675781)
  • DeferredTargetAnimation ไม่ใช่ฟีเจอร์ทดลองอีกต่อไป โปรดนำการเลือกใช้ฟีเจอร์ออก (I1e4ae, b/500030165)

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

  • แก้ไขปัญหาการทำงานพร้อมกันเมื่อทริกเกอร์ท่าทางสัมผัสด้วยมือเดียว (I7b95f, b/512086558)
  • แก้ไขปัญหาที่ตัวบ่งชี้ท่าทางสัมผัสด้วยมือเดียวจะแสดงแบบกระจกตามการวางแนวข้อมือแทนที่จะเป็น LayoutDirection (I6db5d, b/512003346)
  • แก้ไขการวาดเส้นขอบในรายการ TLC (I0c3c1, b/510772213)
  • เพิ่มตัวอย่างรูปภาพในบรรทัดสำหรับตัวอย่างใน Kdoc สำหรับ SurfaceTransformation.kt, SwitchButton.kt และ TextButton.kt ตอนนี้รูปภาพเหล่านี้จะแสดงในเอกสารประกอบสำหรับหน้า DAC ของ Wear Compose Material 3 ซึ่งจะช่วยให้นักพัฒนาแอปเห็นบริบทภาพของปุ่มแต่ละรูปแบบและตัวอย่างได้ทันที (Ib53ae, b/484905061)
  • เพิ่มตัวอย่างรูปภาพในบรรทัดสำหรับตัวอย่างทั้งหมดใน Kdoc ของ Button.kt ตอนนี้รูปภาพเหล่านี้จะแสดงผลโดยตรงในเอกสารประกอบบนหน้า DAC ของ Material 3 สำหรับ Wear Compose ซึ่งจะช่วยให้นักพัฒนาแอปเห็นบริบทภาพของปุ่มแต่ละรูปแบบและตัวอย่างได้ทันที (Ie2fb5, b/484905061)
  • เพิ่มตัวอย่างรูปภาพในบรรทัดสำหรับตัวอย่างใน KDoc ภายใน Card.kt, IconButton.kt, LevelIndicator.kt และ ListHeader.kt ตอนนี้รูปภาพเหล่านี้จะแสดงในเอกสารประกอบสำหรับหน้า DAC ของ Material 3 สำหรับ Wear Compose (I371bc, b/484905061)
  • เพิ่มตัวอย่างรูปภาพในบรรทัดสำหรับตัวอย่างใน KDoc สำหรับ Picker, SegmentedCircularProgressIndicator, Slider และ Stepper ตอนนี้รูปภาพเหล่านี้จะแสดงในเอกสารประกอบสำหรับหน้า DAC ของ Wear Compose Material 3 ซึ่งจะช่วยให้นักพัฒนาแอปเห็นบริบทของภาพสำหรับคอมโพเนนต์และตัวอย่างเหล่านี้ได้ทันที (I6c6ef, b/484905061)
  • เพิ่มตัวอย่างรูปภาพในบรรทัดสำหรับตัวอย่างใน KDoc สำหรับ CheckboxButton, SplitCheckboxButton, CircularProgressIndicator, ConfirmationDialog, SuccessConfirmationDialog, FailureConfirmationDialog และ curvedText ตอนนี้รูปภาพเหล่านี้จะแสดงในเอกสารประกอบสำหรับหน้า DAC ของ Wear Compose Material 3 ซึ่งจะช่วยให้นักพัฒนาแอปเห็นบริบทของภาพสำหรับคอมโพเนนต์และตัวอย่างเหล่านี้ได้ทันที (Ie4662, b/484905061)
  • Fix AlertDialogScreenshotTest test (I9be58, b/508678506)
  • เพิ่มตัวอย่างรูปภาพในบรรทัดสำหรับตัวอย่างใน KDoc สำหรับ NonClickableCard, OpenOnPhoneDialog, VerticalPageIndicator, VerticalPagerScaffold และ RadioButton ตอนนี้รูปภาพเหล่านี้จะแสดงในเอกสารประกอบสำหรับหน้า DAC ของ Wear Compose Material 3 ซึ่งจะช่วยให้นักพัฒนาแอปเห็นบริบทของภาพสำหรับคอมโพเนนต์และตัวอย่างเหล่านี้ได้ทันที (I2aa2d, b/484905061)

เวอร์ชัน 1.7.0-alpha02

6 พฤษภาคม 2026

androidx.wear.compose:compose-*:1.7.0-alpha02 เปิดตัวแล้ว เวอร์ชัน 1.7.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้

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

  • ขนาด GestureIndicator คงที่ใน AlertDialogs (I0c16e, b/504912009)
  • ปรับ LeftRevealed/RightRevealed แองเคอร์ของ SwipeToReveal สำหรับการวางตำแหน่งที่เปิดเผยซึ่งอยู่นอกขอบเขต (Id84ff, b/498681589)
  • เพิ่มคำอธิบายสถานะใน Checkbox และ Switch (Iba12e, b/485098874)
  • แก้ไขข้อบกพร่องด้านภาพใน FadingExpandingLabel ซึ่งข้อความเก่าจะกะพริบเมื่อจำนวนบรรทัดลดลง (Ia40c9, b/503709020)
  • เพิ่มการรองรับท่าทางสัมผัสมือเดียวเริ่มต้นใน Material3 AlertDialog (I5848e, b/479098589)
  • นำตรรกะการมองเห็นในตัวสำหรับการใช้งานมือเดียวออกแล้ว (I8c602, b/502903320)

เวอร์ชัน 1.7.0-alpha01

8 เมษายน 2026

androidx.wear.compose:compose-*:1.7.0-alpha01 เปิดตัวแล้ว เวอร์ชัน 1.7.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

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

  • เปิดตัว API ใหม่สําหรับท่าทางสัมผัสด้วยมือเดียว ซึ่งจะลงทะเบียนการเรียกกลับที่จัดลําดับความสําคัญสําหรับการดําเนินการหลักและการดําเนินการยกเลิกได้ ระบบจะระบุเป้าหมายบนหน้าจอที่เกี่ยวข้องมากที่สุดโดยอัตโนมัติเพื่อให้แน่ใจว่าท่าทางสัมผัสและตัวบ่งชี้จะทริกเกอร์เฉพาะองค์ประกอบที่ผู้ใช้เห็นและโต้ตอบได้ในขณะนั้น เพิ่ม Modifier.oneHandedGesture ไปยัง Composable ที่เชื่อมโยงกับท่าทางสัมผัส (เช่น ปุ่ม) และใช้ OneHandedGestureDefaults.GestureIndicator เพื่อระบุให้ผู้ใช้ทราบเมื่อการดำเนินการของท่าทางสัมผัสพร้อมใช้งาน นอกจากนี้ยังทริกเกอร์การเลื่อนและการแบ่งหน้าด้วยท่าทางสัมผัสหลักได้ด้วย โดยแนะนำให้ใช้ OneHandedGestureDefaults.scrollDown และ OneHandedGestureDefaults.scrollToNextPage ในการเรียกกลับ OneHandedGestureDefaults.ScrollGestureIndicator และ OneHandedGestureDefaults.VerticalPageGestureIndicator มีไว้เพื่อใช้แทน ScrollIndicator และ PageIndicator ตามลำดับ เพื่อแสดงตัวบ่งชี้ท่าทางสัมผัสต่อผู้ใช้ชั่วคราว (Ic6324, b/479098447, b/485488443)
  • เพิ่ม requestAnchorItem ใน TransformingLazyColumnState และเปิดตัว TransformingLazyColumnAnchorType เพื่อให้นักพัฒนาแอปควบคุมทิศทางการขยายรายการและการยึดเลย์เอาต์ได้อย่างแม่นยำ (I0c1e6, b/494301025)
  • เพิ่มแฟล็กisSwipeToRevealDualFlingThresholdEnabled ซึ่งเปิดอยู่โดยค่าเริ่มต้น แต่ปิดใช้ได้หากการแก้ไขข้อบกพร่องเกี่ยวกับลักษณะการทำงานของการปัดใน SwipeToReveal ในรุ่นนี้ทำให้เกิดการเกิดปัญหาซ้ำ (ในกรณีนี้ โปรดรายงานข้อบกพร่องโดยเร็วที่สุด) (Ie6db6, b/497743775)

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

  • ปรับปรุง SwipeToReveal เพื่อรองรับการปัดอย่างรวดเร็ว ซึ่งช่วยให้ผู้ใช้เปิดเผยการกระทำได้อย่างเต็มที่โดยไม่คำนึงถึงระยะทางการปัด (ปิดใช้การเปลี่ยนแปลงนี้ได้โดยปิดค่าสถานะ isSwipeToRevealDualFlingThresholdEnabled) (I833fd, b/490728860)
  • แก้ไข SwipeToReveal เพื่อทริกเกอร์การปัดแบบเต็มเมื่อปัดเกิน 75% ของความกว้างหน้าจอ (ปิดใช้การเปลี่ยนแปลงนี้ได้โดยปิดค่าสถานะ isSwipeToRevealDualFlingThresholdEnabled) (Id5604, b/490728860)
  • เพิ่มการตอบสนองแบบรู้สึกได้ครั้งที่ 2 สำหรับ SwipeToReveal เมื่อการปัดถึงสถานะการแสดงบางส่วน (ปิดใช้การเปลี่ยนแปลงนี้ได้โดยการปิดค่าสถานะ isSwipeToRevealDualFlingThresholdEnabled) (Ic27e3, b/492273799)
  • แก้ไขปัญหาใน TransformingLazyColumn ที่ภาพเคลื่อนไหวของรายการ (Modifier.animateItem) หยุดทำงาน (I904ec, b/493167084)
  • แก้ไขข้อบกพร่องใน PickerGroup (และ DatePicker) เพื่อป้องกันไม่ให้การแตะหลายครั้งทำให้เกิดการเลื่อนที่ตั้งใจไว้ในคอลัมน์ Picker ที่ไม่ได้เลือก (Id76c5, b/378646798)

Wear Compose เวอร์ชัน 1.6

เวอร์ชัน 1.6.2

19 พฤษภาคม 2026

androidx.wear.compose:compose-*:1.6.2 เปิดตัวแล้ว เวอร์ชัน 1.6.2 มีการคอมมิตเหล่านี้

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

  • แก้ไขการวาดเส้นขอบในรายการ TransformingLazyColumn (I0c3c1, b/510772213)

  • แก้ไขการกำหนด itemSpacing ในTransformingLazyColumnกลยุทธ์การวัดผลการเพิ่มเนื้อหา (I12d2f, b/498137919)

เวอร์ชัน 1.6.1

8 เมษายน 2026

androidx.wear.compose:compose-*:1.6.1 เปิดตัวแล้ว เวอร์ชัน 1.6.1 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขปัญหาที่ภาพเคลื่อนไหวของไอเทม (ผ่าน Modifier.animateItem) หยุดทำงานใน TransformingLazyColumn (I904ec, b/493167084)

เวอร์ชัน 1.6.0

25 มีนาคม 2026

androidx.wear.compose:compose-*:1.6.0 เปิดตัวแล้ว เวอร์ชัน 1.6.0 มีการเปลี่ยนแปลงเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.5.0

  • เปิดตัวไลบรารี Wear Compose Navigation3 ซึ่งผสานรวมกับคอมโพเนนต์ NavDisplay และ SceneStrategy ของไลบรารี Navigation 3 โดยเพิ่มตรรกะการปัดเพื่อปิดเฉพาะสำหรับ Wear โดยใช้ SwipeDismissableSceneStrategy ใหม่
  • เพิ่มTransformingLazyColumnการรองรับสำหรับ reverseLayout การสแนปโดยใช้ TransformingLazyColumnDefaults.snapFlingBehavior และ Modifier.minimumVerticalContentPadding ซึ่งช่วยให้กำหนดระยะห่างจากขอบเนื้อหาที่ต้องการสำหรับรายการในลิสต์เมื่อรายการนั้นอยู่ที่ขอบด้านบนหรือด้านล่างได้
  • เพิ่มการโอเวอร์โหลดใหม่สำหรับ AlertDialog ซึ่งใช้ TransformingLazyColumn เพื่อให้สอดคล้องกับการเลื่อนในหน้าจอ Material3 อื่นๆ
  • การแสดงข้อความโค้งที่ดียิ่งขึ้น โดยเฉพาะแบบอักษรแบบเขียนหวัด ด้วยการเปิดตัวการบิดข้อความผ่านCurvedTextStyleพารามิเตอร์warpOffsetใหม่ ซึ่งเปิดอยู่โดยค่าเริ่มต้นสำหรับ API 34 ขึ้นไป
  • เพิ่ม LocalAmbientModeManager ซึ่งเป็น CompositionLocal ใหม่ที่รองรับการกำหนด UI และลักษณะการทำงานที่แตกต่างกันสำหรับโหมดอินเทอร์แอกทีฟและโหมดแอมเบียนท์
  • ดูรายการฟีเจอร์ที่เปิดตัวในเวอร์ชัน 1.6.0 แบบสมบูรณ์ได้ที่บันทึกประจำรุ่น beta01

เวอร์ชัน 1.6.0-rc01

11 มีนาคม 2026

androidx.wear.compose:compose-*:1.6.0-rc01 เปิดตัวแล้ว เวอร์ชัน 1.6.0-rc01 มีการคอมมิตเหล่านี้

  • รุ่นนี้จะอัปเดต Compose สำหรับ Wear OS เวอร์ชัน 1.6.0 เป็นรุ่นที่อาจได้รับการเผยแพร่ แต่ไม่มีการเปลี่ยนแปลงที่สำคัญจากรุ่น 1.6.0-beta01

เวอร์ชัน 1.6.0-beta01

25 กุมภาพันธ์ 2026

androidx.wear.compose:compose-*:1.6.0-beta01 เปิดตัวแล้ว เวอร์ชัน 1.6.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

การเปิดตัว Compose สำหรับ Wear OS เวอร์ชัน 1.6.0-beta01 แสดงให้เห็นว่าไลบรารีเวอร์ชันนี้มีฟีเจอร์ครบถ้วนและ API ถูกล็อกแล้ว (ยกเว้นที่ทำเครื่องหมายว่าเป็นการทดลอง) Wear Compose 1.6.0-beta01 มีฟังก์ชันใหม่ๆ ดังนี้

  • ไลบรารี Wear Compose Navigation3 ซึ่งผสานรวมกับคอมโพเนนต์ NavDisplay และ SceneStrategy ของไลบรารี Navigation 3 โดยเพิ่มตรรกะการปัดเพื่อปิดเฉพาะ Wear โดยใช้ SwipeDismissableSceneStrategy ใหม่
  • เพิ่มTransformingLazyColumnการรองรับสำหรับ reverseLayout การสแนปโดยใช้ TransformingLazyColumnDefaults.snapFlingBehavior และ Modifier.minimumVerticalContentPadding ซึ่งช่วยให้กำหนดระยะห่างจากขอบเนื้อหาที่ต้องการสำหรับรายการในลิสต์เมื่อรายการนั้นอยู่ที่ขอบด้านบนหรือด้านล่างได้
  • เพิ่มการโอเวอร์โหลดใหม่สำหรับ AlertDialog ซึ่งใช้ TransformingLazyColumn เพื่อให้สอดคล้องกับการเลื่อนในหน้าจอ Material3 อื่นๆ
  • การแสดงข้อความโค้งที่ดียิ่งขึ้น โดยเฉพาะแบบอักษรแบบเขียนหวัด ด้วยการเปิดตัวการบิดข้อความผ่านCurvedTextStyleพารามิเตอร์warpOffsetใหม่ ซึ่งเปิดอยู่โดยค่าเริ่มต้นสำหรับ API 34 ขึ้นไป
  • เพิ่ม LocalAmbientModeManager ซึ่งเป็น CompositionLocal ใหม่ที่รองรับการกำหนด UI และลักษณะการทำงานที่แตกต่างกันสำหรับโหมดอินเทอร์แอกทีฟและโหมดแอมเบียนท์
  • อัปเดต TimePicker เพื่อรองรับประเภท MinutesSeconds ใหม่และรวมพารามิเตอร์ initialSelection ใหม่เพื่อระบุคอมโพเนนต์เวลาที่เลือกในตอนแรก
  • การโอเวอร์โหลดใหม่ในการ์ดเพื่อแสดงตัวแปรที่คลิกไม่ได้ในกรณีที่การ์ดเป็นเพียงการนำเสนอและไม่ได้มีไว้เพื่อตอบสนองต่อการคลิกของผู้ใช้
  • เพิ่ม LocalRippleConfiguration เพื่อให้ควบคุมลักษณะของระลอกคลื่นได้
  • พารามิเตอร์ snapSensitivity ที่เปิดตัวสำหรับ RotaryScrollableDefaults.snapBehavior และ PagerScaffoldDefaults ตอนนี้มีค่าเริ่มต้นที่แนะนําสําหรับ SnapPositionalThreshold และ HighSnapPositionalThreshold เพื่อใช้กับ PagerDefaults.snapFlingBehavior แล้ว

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

  • เปลี่ยนชื่อค่าเริ่มต้นที่แนะนำสำหรับ Modifier.minimumVerticalContentPadding จาก minimumListVerticalContentPadding เป็น minimumVerticalListContentPadding เพื่อเน้นว่าการเว้นวรรคเนื้อหานี้หมายถึงรายการ และอัปเดตเอกสารประกอบที่เกี่ยวข้อง (I496ca, b/426154225)
  • ตอนนี้ข้อความโค้งจะทำการบิดเบี้ยวโดยค่าเริ่มต้น ซึ่งจะช่วยปรับปรุงการแสดงข้อความโค้ง โดยเฉพาะอย่างยิ่งสำหรับแบบอักษรแบบเขียน (I6979d, b/450526792, b/481617443)

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

  • แก้ไขการโต้ตอบระหว่าง TLC animateItem กับ minimumVerticalContentPadding (Ia865c, b/483663045)
  • ตอนนี้การชดเชยที่บิดเบี้ยวสำหรับข้อความโค้งจะเปิดอยู่โดยค่าเริ่มต้นสำหรับ API 34 ขึ้นไปเท่านั้น เนื่องจากต้องอาศัย PathIterator จากไลบรารี androidx.graphics.path ซึ่งไม่พร้อมใช้งานสำหรับการทดสอบของนักพัฒนาแอปภายใต้ Robolectric ก่อน API 34 (จึงทำให้การทดสอบของนักพัฒนาแอปที่มีอยู่ใช้งานไม่ได้) (Ie5bae, b/484319336)
  • ทำให้ข้อความโค้งงอมีความแข็งแรงมากขึ้น (If2b34, b/483390353)
  • อัปเดต ConfirmationDialogDefaults.SuccessIcon เพื่อไม่สนใจทิศทางเลย์เอาต์จากขวาไปซ้ายเพื่อไม่ให้เครื่องหมายถูกกลับด้าน (Ic6add, b/481966029)

เวอร์ชัน 1.6.0-alpha10

11 กุมภาพันธ์ 2026

androidx.wear.compose:compose-*:1.6.0-alpha10 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha10 มีการคอมมิตเหล่านี้

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

  • เปลี่ยนชื่อ Modifier.responsiveVerticalPadding เป็น Modifier.minimumVerticalContentPadding โดยใช้พารามิเตอร์ระยะห่างเป็น Dp แทนอินเทอร์เฟซ ResponsiveVerticalPadding ย้ายค่าเริ่มต้นที่แนะนำจาก ResponsiveVerticalPaddingDefaults ไปยังออบเจ็กต์ค่าเริ่มต้นเฉพาะคอมโพเนนต์ เช่น ButtonDefaults, CardDefaults และอื่นๆ (Icaab2, b/426154225)
  • เพิ่ม WearComposeFoundationFlags.isTransformingLazyColumnClickableThresholdEnabled เพื่อควบคุมฟังก์ชันใหม่ที่เปิดตัวสำหรับ TransformingLazyColumn ซึ่งตอนนี้จะไม่สนใจการคลิกที่เกินขีดจำกัด 20dp ที่ด้านบนและด้านล่างของเลย์เอาต์ เพื่อป้องกันการแตะโดยไม่ตั้งใจในกรณีที่มองเห็นรายการเพียงบางส่วน นอกจากนี้ ยังอัปเดตการเปลี่ยนแปลงให้สกัดกั้นเฉพาะการคลิกรายการที่ขอบในเหตุการณ์ที่อยู่ภายในระยะการแตะเพื่อเลื่อน เพื่อไม่ให้ละเว้นท่าทางการลาก (I1ba28, b/480910891)
  • rememberAmbientModeManager ตอนนี้ใช้ LocalActivity ในการติดตั้งใช้งานเพื่อรับกิจกรรมปัจจุบัน แทนที่จะใช้กิจกรรมเป็นพารามิเตอร์ (Idf114, b/473603258)
  • เปลี่ยน AmbientMode ให้เป็นแบบไม่ครอบคลุมทั้งหมดเพื่อความสามารถในการขยาย (I92cc3, b/473603258)
  • อัปเดต rememberSwipeDismissableSceneStrategyState เพื่อนำพารามิเตอร์ swipeToDismissBoxState ออก เนื่องจากเป็นรายละเอียดการใช้งานสำหรับ API สูงสุด 35 เท่านั้น (I5907c, b/476105162)
  • [TLC] เพิ่ม Modifier.responsiveVerticalPadding ลงใน TransformingLazyColumn เพื่อให้ปรับการเว้นวรรคเนื้อหาโดยอัตโนมัติให้สอดคล้องกับหลักเกณฑ์การออกแบบ Material 3 ของ Wear OS (Ia7e73, b/426154225)

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

  • อัปเดตTransformingLazyColumnเงื่อนไขการดึงข้อมูลล่วงหน้าเพื่อให้ระบบคำนวณความเร่งด่วนตามขอบของวิวพอร์ตโดยไม่มีการเพิ่มระยะขอบ (I48d85, b/476420552)
  • Picker ตอนนี้รองรับความโปร่งใสที่ราบรื่นเหนือพื้นหลังที่กำหนดเอง เช่น การไล่ระดับสีหรือรูปภาพ โดยการส่ง Color.Unspecified เป็น gradientColor ของเครื่องมือเลือก สำหรับ TimePicker และ DatePicker คุณสามารถใช้เอฟเฟกต์นี้ได้โดยการลบล้าง MaterialTheme.colorScheme.background เป็น Color.Unspecified ในเครื่อง (Icc476, b/458429791, b/458429791)
  • เปิดตัวเกณฑ์การคลิกที่ 20dp สำหรับTransformingLazyColumnรายการที่ด้านบนและด้านล่างของหน้าจอ เพื่อป้องกันการแตะโดยไม่ตั้งใจเมื่อรายการส่วนใหญ่ถูกซ่อนไว้ (I2c9cb, b/443285887)
  • ปรับปรุงการจัดการการเคลื่อนไหวลดลงใน OpenOnPhoneDialog (Ib1d12, b/48558283)

เวอร์ชัน 1.6.0-alpha09

28 มกราคม 2026

androidx.wear.compose:compose-*:1.6.0-alpha09 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha09 มีการเปลี่ยนแปลงเหล่านี้

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

  • เปลี่ยนชื่อ PagerScaffoldDefaults.SnapPositionalThreshold เป็น LowSnapPositionalThreshold และ RotaryScrollableDefaults.SnapSensitivity เป็น LowSnapSensitivity (I157ee, b/449949891)
  • นำตัวแก้ไขออกจาก SwipeDismissableSceneStrategy แล้ว (Iff30f, b/449949891)

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

  • แก้ไขการหน่วงของภาพเคลื่อนไหวการเลื่อนเกินแบบหมุนในการทำงานแบบสแนป (I7db89, b/474016470)
  • แก้ไขการSwipeDismissableSceneStrategyบล็อกระบบใน API 36 ขึ้นไป (Icf20b, b/476105162)
  • แก้ไขภาพเคลื่อนไหว SwitchButton ให้ปรับขนาด/จางลงเป็นรูปร่างที่สมบูรณ์ (I7a7eb, b/378644361)
  • ปรับปรุงภาพเคลื่อนไหวการหมุนเวียนของไอคอนเครื่องหมายถูก CheckboxButton (I89944, b/378646769)

เวอร์ชัน 1.6.0-alpha08

14 มกราคม 2026

androidx.wear.compose:compose-*:1.6.0-alpha08 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha08 มีการเปลี่ยนแปลงเหล่านี้

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

  • RotaryScrollableDefaults.snapBehavior ได้รับการอัปเดตให้ใช้พารามิเตอร์ snapSensitivity แบบลอย และตอนนี้ PagerScaffoldDefaults ได้เผยแพร่ค่าเริ่มต้นที่แนะนํา SnapPositionalThreshold และ HighSnapPositionalThreshold สําหรับใช้กับ PagerDefaults.snapFlingBehavior (I7e11c, b/449949891)
  • เพิ่มการรองรับการสแนปไปยัง TransformingLazyColumn สำหรับทั้งการป้อนข้อมูลแบบสัมผัสและใส่ข้อมูลด้วยปุ่มหมุน เมื่อกําหนดค่าการสแนป ขอแนะนําให้ระบุทั้ง flingBehavior โดยใช้ TransformingLazyColumnDefaults.snapFlingBehavior และ rotaryScrollableBehavior โดยใช้ RotaryScrollableDefaults.snapBehavior เพื่อให้ได้รับประสบการณ์การใช้งานที่สอดคล้องกัน (I5326f, b/422455104)
  • เปิดตัว LocalAmbientModeManager ซึ่งเป็น Composable ใหม่ที่ช่วยให้กำหนด UI และลักษณะการทำงานที่แตกต่างกันสำหรับโหมดอินเทอร์แอกทีฟและโหมดแอมเบียนท์ได้อย่างง่ายดาย (I00161, b/427724331)

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

  • แก้ไขปัญหาที่ลิสต์ที่มีลักษณะการสแนปแบบหมุนจะไม่ดีดกลับหลังจากเลื่อนเกิน (I05216, b/470317969)
  • แก้ไขปัญหาเกี่ยวกับเอฟเฟกต์ระลอกสำหรับปุ่มเพิ่มและลดในแถบเลื่อน Material3 ตอนนี้ Ripple จะขยายความกว้างเต็มของคอมโพเนนต์แถบเลื่อนได้อย่างถูกต้องแล้ว (I8c0c4, b/378658409)

เวอร์ชัน 1.6.0-alpha07

17 ธันวาคม 2025

androidx.wear.compose:compose-*:1.6.0-alpha07 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha07 มีการเปลี่ยนแปลงเหล่านี้

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

  • เพิ่มอาร์ติแฟกต์ไลบรารี wear-compose:compose-navigation3 (I01b5c, b/427463127)
  • เพิ่ม SwipeDismissableSceneStrategy สำหรับการผสานรวม Wear กับ Navigation3 โดยใช้ร่วมกับ NavDisplay เพื่อแสดงเนื้อหา Wear Compose ได้ (I7aa08, b/427463127)
  • ขอแนะนำ ResponsiveTransformingLazyColumn ซึ่งเป็นคอมโพเนนต์ Material3 ใหม่ที่สร้างขึ้นจาก TransformingLazyColumn จาก Wear Compose Foundation และจะคำนวณและใช้ระยะห่างแนวตั้งที่ปรับเปลี่ยนตามอุปกรณ์โดยอัตโนมัติตามประเภทเนื้อหารายการ (I102f4, b/426154225)

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

  • แก้ไขปัญหาที่ PageIndicator ไม่ได้วาดใหม่อย่างถูกต้องเมื่อดัชนีหน้าปัจจุบันภายใน PagerState เปลี่ยนแปลง (เช่น โดยการเรียก scrollToPage() หรือใช้ animateScrollToPage() ที่มีการเคลื่อนไหวลดลง) (I97150, b/465669950)
  • แก้ไขการคำนวณTransformingLazyColumnความหมายscrollOffset (Idec30, b/417941554)
  • แก้ไขSwipeToRevealการเว้นวรรคการดำเนินการเลิกทำ (I770f8, b/382259843)
  • ใช้ PredictiveBackScene เพื่อจัดการ Navigation3 สำหรับ API36 ขึ้นไป (Idedf6, b/427463127)

เวอร์ชัน 1.6.0-alpha06

3 ธันวาคม 2025

androidx.wear.compose:compose-*:1.6.0-alpha06 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้

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

  • เพิ่ม LocalRippleConfiguration เพื่อให้ควบคุมลักษณะของระลอกคลื่นได้ (I9e0fa, b/382336566)
  • เพิ่มการโอเวอร์โหลดใหม่สำหรับ AlertDialog ซึ่งใช้ TransformingLazyColumn เพื่อให้การควบคุมขั้นสูงเกี่ยวกับภาพเคลื่อนไหวการเลื่อนรายการ เพิ่มการปรับปรุงเลย์เอาต์สำหรับหน้าจอขนาดใหญ่ขึ้น (I862ff, b/438468382)
  • เพิ่มพารามิเตอร์การเปลี่ยนรูปแบบไปยัง ButtonGroup เพื่อใช้กับคอนเทนเนอร์ที่เปลี่ยนแปลงแบบไดนามิก เช่น TransformingLazyColumn (I8743b, b/453710565)

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

  • แก้ไขปัญหาเกี่ยวกับชื่อ AlertDialog และปุ่มยืนยัน/ปิดที่ปรากฏหลายครั้งในการเขียน (I8e1b0, b/463955367)
  • ทำให้โค้ด TimeText มีความเสถียรมากขึ้นเมื่อรอการเปลี่ยนแปลงของ TimeZone (I1c276, b/457909952)
  • ปรับปรุงประสิทธิภาพของ SplitRadioButton และ SplitCheckboxButton โดยลดจำนวนการจัดองค์ประกอบใหม่ (I3ddc9, b/455845192)

เวอร์ชัน 1.6.0-alpha05

19 พฤศจิกายน 2025

androidx.wear.compose:compose-*:1.6.0-alpha05 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้

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

  • เปิดตัว RotarySnapSensitivity สำหรับลักษณะการทำงานของการสแนปแบบหมุนและ PagerSensitivity สำหรับลักษณะการทำงานของการปัดเพจเจอร์ เพื่อให้แอปพลิเคชันปรับระดับความไวของลักษณะการทำงานแบบหมุนและแบบปัดได้ โดยเฉพาะอย่างยิ่งสำหรับเพจเจอร์ (Ic3a83, b/449949891)
  • การเปลี่ยนแปลงที่ง่ายขึ้นใน rememberTransformingLazyColumnState ซึ่งเกิดขึ้นจากการเปิดตัวเลย์เอาต์ย้อนกลับสำหรับ TransformingLazyColumn การรวมเป็นฟังก์ชันเดียว และการใช้ค่า Sentinel เพื่อใช้ดัชนีจุดยึดเริ่มต้น (I09302, b/453731755)
  • เพิ่ม GenericFailureIcon ใหม่เป็นค่าเริ่มต้นเพื่อใช้ใน FailureConfirmationDialog ซึ่งจะแสดงไอคอนข้อผิดพลาดทั่วไป เปลี่ยนชื่อ FailureIcon ที่มีอยู่เป็น ConnectionFailureIcon แล้ว (I8e965, b/453730430)

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

  • ทำให้ TimePicker มีความเสถียรมากขึ้นเมื่อแยกวิเคราะห์รูปแบบภาษาที่ซับซ้อน (I7b169, b/456538838)
  • แก้ไขTransformingLazyColumnเลย์เอาต์เริ่มต้นเมื่อ verticalArrangement เป็น Arrangement.Center (Id18ef, b/451481233)
  • จัดแนว TransformingLazyColumnState คอนสตรัคเตอร์กับฟังก์ชัน rememberTransformingLazyColumnState (I36d6a, b/453731755)
  • อัปเดตไอคอนเครื่องหมายถูกสำหรับ CheckboxButton ให้เป็นแบบกลม (Ie645e, b/378645751)
  • อัปเดตไอคอนเครื่องหมายถูกสำหรับ SwitchButton ให้เป็นแบบกลม (I31fbf, b/378642590)
  • แก้ไขออฟเซ็ต scrollToItem ใน TransformingLazyColumn ซึ่งกลับทิศทางการเลื่อน (Ib2c93, b/451481233)
  • ปรับปรุงประสิทธิภาพของ SwitchButton และ SplitSwitchButton (I708de, b/448781327)

เวอร์ชัน 1.6.0-alpha04

22 ตุลาคม 2025

androidx.wear.compose:compose-*:1.6.0-alpha04 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้

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

  • ใช้ reverseLayout สำหรับ TransformingLazyColumn (I19f9e, b/352513793)
  • เพิ่ม ConfirmationDialogDefaults.VariantFailureIcon สำหรับใช้ใน FailureConfirmationDialog ในบางกรณี คุณอาจต้องการใช้ไอคอนข้อผิดพลาดทั่วไปใหม่นี้มากกว่า ConfirmationDialogDefaults.FailureIcon ซึ่งแสดงการเชื่อมต่อกับโทรศัพท์ที่ขาดหายไป (Ifc851, b/443115305)

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

  • ปรับปรุงประสิทธิภาพของเครื่องมือเลือกโดยการปรับโครงสร้างการใช้ LaunchedEffect (I94519, b/418192973)
  • แก้ไขข้อบกพร่องใน SwipeDismissableNavHost บน API36 ขึ้นไป ซึ่งการกดปุ่มย้อนกลับระหว่างภาพเคลื่อนไหวการย้อนกลับที่คาดการณ์ได้จะขัดจังหวะและรีสตาร์ทภาพเคลื่อนไหว ตอนนี้การติดตั้งใช้งานใช้ SeakableTransitionState.animateTo แทน Animatable ซึ่งมีประโยชน์ด้านประสิทธิภาพเล็กน้อย (I2241f, b/428156670)
  • แก้ไขข้อบกพร่องเกี่ยวกับการจัดลำดับการประกาศการช่วยเหลือพิเศษใน AlertDialog ซึ่งปุ่มยืนยันจะประกาศเป็น "ปุ่ม" Confirm' แทนที่จะเป็น 'Confirm ปุ่ม' (Ic2381, b/429378202)
  • ปรับปรุงการแสดงหมายเลข TimePicker บนหน้าจอขนาดเล็ก (I68386, b/447625365)
  • นำ Fork ของเลย์เอาต์แบบ Lazy ออกจาก Wear Compose Foundation ซึ่งหมายความว่า TransformingLazyColumn จะใช้การติดตั้งใช้งานเลย์เอาต์แบบ Lazy ของ Compose Foundation รวมถึงการดึงข้อมูลล่วงหน้า และได้รับประโยชน์จากการปรับปรุงประสิทธิภาพในเวลาเฟรมในกรณีส่วนใหญ่ (Idd743, b/445911630)

เวอร์ชัน 1.6.0-alpha03

8 ตุลาคม 2025

androidx.wear.compose:compose-*:1.6.0-alpha03 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้

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

  • เพิ่มพารามิเตอร์ลงใน TimePicker เพื่อระบุคอมโพเนนต์เวลาที่โฟกัสในตอนแรก โดยค่าเริ่มต้น ระบบจะเลือกคอมโพเนนต์แรกที่พร้อมใช้งานตามภาษาและ TimePickerType (Ie5dfe, b/437015874)
  • นำพารามิเตอร์ targetProgress ที่ไม่ได้ใช้ออกในเมธอด CircularProgressIndicator drawCircularProgressIndicator (Ieeb3c, b/430544552)

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

  • ใช้การรองรับที่ขาดหายไปสำหรับ TransformingLazyColumn verticalAlignment - ตอนนี้รองรับการจัดเรียงมาตรฐานที่อิงตามด้านบน ด้านล่าง หรือตรงกลาง (I2e630, b/444143326)
  • ปรับปรุงการคำนวณความกว้างของข้อความโค้งเพื่อพิจารณาช่องว่างก่อนและหลังข้อความ (อาจทำให้ภาพหน้าจอที่มีข้อความโค้งใช้งานไม่ได้ โดยเฉพาะอย่างยิ่งเมื่อมีพื้นหลัง เช่น TimeText) (I924a4, b/446601899)
  • อัปเดต WarpedCurvedTextRenderer ของ Compose Foundation เพื่อเลือกใช้ EmojiCompatInitializer จาก androidx.emoji2 เพื่อแก้ไขข้อผิดพลาดของคลาสรันไทม์ (I589b4, b/444422736)
  • อัปเดต ScalingLazyColumn เพื่อมุ่งเน้นที่โหนดที่เลื่อนได้ด้วย CollectionInfo เพื่อให้ทำงานร่วมกับฟีเจอร์หมุนได้ในบริบทต่างๆ มากขึ้น เช่น ใน Material3 AlertDialog (I6be3c, b/445332360)

เวอร์ชัน 1.6.0-alpha02

24 กันยายน 2025

androidx.wear.compose:compose-*:1.6.0-alpha02 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้

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

  • การแสดงข้อความโค้งที่ดียิ่งขึ้น โดยเฉพาะอย่างยิ่งสำหรับแบบอักษรแบบเขียนหวัด ด้วยการเปิดตัวการบิดเบือนข้อความโดยใช้CurvedTextStyleพารามิเตอร์warpOffsetใหม่ (If5dcb)

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

  • แคชภาพเคลื่อนไหวของรายการที่เพิ่มประสิทธิภาพแล้วในระหว่างการเลื่อนใน TransformingLazyColumn (I62ae8)
  • เราได้อัปเดตรูปแบบ OpenOnPhoneDialog และ ConfirmationDialog เพื่อตั้งค่า FLAG_KEEP_SCREEN_ON เพื่อให้ภาพเคลื่อนไหวทำงานจนเสร็จสมบูรณ์และกล่องโต้ตอบปิดตัวเองตามที่ตั้งใจไว้ (Iad7d4)
  • แก้ไขข้อบกพร่องที่ทำให้ Modifier.edgeSwipeToDismiss ขัดข้องเมื่อใช้กับ SwipeDismissableNavHost ใน API 36 ขึ้นไป (Ifc13d)
  • อัปเดตเอกสารประกอบและความคิดเห็นที่เชื่อมโยงกับพารามิเตอร์ CurvedTextStyle warpOffset ใหม่เพื่อให้ระบุถึงกรณีที่ไม่ได้ระบุได้อย่างถูกต้อง (I41aa5)

เวอร์ชัน 1.6.0-alpha01

10 กันยายน 2025

androidx.wear.compose:compose-*:1.6.0-alpha01 เปิดตัวแล้ว เวอร์ชัน 1.6.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

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

  • เพิ่มรูปแบบที่คลิกไม่ได้สำหรับ Card, TitleCard, OutlinedCard และ AppCard (I509bb, b/406690146)
  • นำพารามิเตอร์ interactionSource ออกจาก API การ์ดใหม่ที่คลิกไม่ได้ (If0c7a, b/440323280)
  • เพิ่มMinutesSecondsประเภทใหม่ลงในคอมโพเนนต์ TimePicker ซึ่งจะแสดงเฉพาะคอลัมน์นาทีและวินาที โดยไม่แสดงคอลัมน์ชั่วโมง (Ia9e94, b/438004664)

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

  • แก้ไขการใช้ HorizontalPagerScaffold ของพารามิเตอร์ตัวแก้ไขเพื่อให้ HorizontalPager ไม่สูญเสียตัวบ่งชี้หน้าหากเพิ่ม Modifier.fillMaxSize() (I07ae1, b/441682601)
  • จัดแนวScrollIndicatorตามทิศทางเลย์เอาต์เนื้อหาโดยค่าเริ่มต้น (I0da0f, b/441489028)
  • แก้ไขปัญหาเกี่ยวกับ ScrollAway เมื่อใช้กับ TransformingLazyColumn TimeText เลื่อนไม่ถูกต้องหลังจากไปยังหน้าจออื่นแล้วกลับมา (Ic0ef1, b/433549148)
  • TransformingLazyColumnการรายงานSCROLL_BACKWARDSและSCROLL_FORWARDSความหมายที่ถูกต้องสำหรับกรณีขอบที่ด้านบน/ด้านล่างของหน้าจอ (I5c28d, b/405205994)
  • แก้ไขข้อบกพร่องใน SwipeDismissableNavHost ที่การเปลี่ยนผ่านที่อยู่ระหว่างดำเนินการไม่ได้ทำเครื่องหมายว่าเสร็จสมบูรณ์หลังจากปัดกลับใน API 36 (Ife72e, b/441089689)
  • อัปเดต OpenOnPhoneMaxSweepAngle เริ่มต้นเป็น 200 องศาเพื่อป้องกันไม่ให้ข้อความ "ตรวจสอบโทรศัพท์" บางส่วนถูกตัดออก (Ib2e4c, b/428243902)

Wear Compose เวอร์ชัน 1.5

เวอร์ชัน 1.5.6

3 ธันวาคม 2025

androidx.wear.compose:compose-*:1.5.6 เปิดตัวแล้ว เวอร์ชัน 1.5.6 มีการเปลี่ยนแปลงเหล่านี้

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

  • เพิ่มประสิทธิภาพการแคชภาพเคลื่อนไหวของไอเทมขณะเลื่อนใน TransformingLazyColumn (I62ae8, b/441701460)
  • เราได้อัปเดตรูปแบบ OpenOnPhoneDialog และ ConfirmationDialog เพื่อตั้งค่า FLAG_KEEP_SCREEN_ON เพื่อให้ภาพเคลื่อนไหวทำงานจนเสร็จสมบูรณ์และกล่องโต้ตอบปิดตัวเองตามที่ตั้งใจไว้ (Iad7d4, b/437986990)
  • แก้ไขข้อบกพร่องที่ทำให้ Modifier.edgeSwipeToDismiss ขัดข้องเมื่อใช้กับ SwipeDismissableNavHost ใน API 36 ขึ้นไป (Ifc13d, b/441901722)

เวอร์ชัน 1.5.5

5 พฤศจิกายน 2025

androidx.wear.compose:compose-*:1.5.5 เปิดตัวแล้ว เวอร์ชัน 1.5.5 มีการเปลี่ยนแปลงเหล่านี้

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

  • ปรับปรุงTimePickerการแสดงหมายเลขบนหน้าจอขนาดเล็ก (I70fbe)

เวอร์ชัน 1.5.4

22 ตุลาคม 2025

androidx.wear.compose:compose-*:1.5.4 เปิดตัวแล้ว เวอร์ชัน 1.5.4 มีการเปลี่ยนแปลงเหล่านี้

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

  • ปรับปรุงประสิทธิภาพของเครื่องมือเลือกโดยการปรับโครงสร้างการใช้ LaunchedEffect (I94519, b/418192973)
  • แก้ไขข้อบกพร่องใน SwipeDismissableNavHost บน API36 ขึ้นไป ซึ่งการกดปุ่มย้อนกลับระหว่างภาพเคลื่อนไหวการย้อนกลับที่คาดการณ์ได้จะขัดจังหวะและรีสตาร์ทภาพเคลื่อนไหว ตอนนี้การติดตั้งใช้งานใช้ SeakableTransitionState.animateTo แทน Animatable ซึ่งมีประโยชน์ด้านประสิทธิภาพเล็กน้อย (I2241f, b/428156670)
  • แก้ไขข้อบกพร่องเกี่ยวกับการจัดลำดับการประกาศการช่วยเหลือพิเศษใน AlertDialog ซึ่งปุ่มยืนยันจะประกาศเป็น "ปุ่ม" Confirm' แทนที่จะเป็น 'Confirm ปุ่ม' (Ic2381, b/429378202)

เวอร์ชัน 1.5.3

8 ตุลาคม 2025

androidx.wear.compose:compose-*:1.5.3 เปิดตัวแล้ว เวอร์ชัน 1.5.3 มีการคอมมิตเหล่านี้

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

  • ใช้การรองรับที่ขาดหายไปสำหรับ TransformingLazyColumn verticalAlignment - ตอนนี้รองรับการจัดวางมาตรฐานที่อิงตามด้านบน ด้านล่าง หรือตรงกลางแล้ว (I2e630, b/444143326)

รุ่น 1.5.2

24 กันยายน 2025

androidx.wear.compose:compose-*:1.5.2 เปิดตัวแล้ว เวอร์ชัน 1.5.2 มีการเปลี่ยนแปลงเหล่านี้

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

  • แคชภาพเคลื่อนไหวของรายการที่เพิ่มประสิทธิภาพแล้วในระหว่างการเลื่อนใน TransformingLazyColumn (I62ae8)
  • เราได้อัปเดตรูปแบบ OpenOnPhoneDialog และ ConfirmationDialog เพื่อตั้งค่า FLAG_KEEP_SCREEN_ON เพื่อให้ภาพเคลื่อนไหวทำงานจนเสร็จสมบูรณ์และกล่องโต้ตอบปิดตัวเองตามที่ตั้งใจไว้ (Iad7d4)
  • แก้ไขข้อบกพร่องที่ทำให้ Modifier.edgeSwipeToDismiss ขัดข้องเมื่อใช้กับ SwipeDismissableNavHost ใน API 36 ขึ้นไป (Ifc13d)
  • อัปเดตเอกสารประกอบและความคิดเห็นที่เชื่อมโยงกับพารามิเตอร์ CurvedTextStyle warpOffset ใหม่เพื่อให้ระบุถึงกรณีที่ไม่ได้ระบุได้อย่างถูกต้อง (I41aa5)

รุ่น 1.5.1

10 กันยายน 2025

androidx.wear.compose:compose-*:1.5.1 เปิดตัวแล้ว เวอร์ชัน 1.5.1 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขการใช้พารามิเตอร์ตัวแก้ไขของ HorizontalPagerScaffold เพื่อให้ HorizontalPager ไม่สูญเสียตัวบ่งหน้าหากเพิ่ม Modifier.fillMaxSize() (I07ae1, b/441682601)
  • จัดแนวScrollIndicatorตามทิศทางเลย์เอาต์เนื้อหาโดยค่าเริ่มต้น (I0da0f, b/441489028)
  • แก้ไขปัญหาเกี่ยวกับ ScrollAway เมื่อใช้กับ TransformingLazyColumn TimeText เลื่อนไม่ถูกต้องหลังจากไปยังหน้าจออื่นแล้วกลับมา (Ic0ef1, b/433549148)
  • TransformingLazyColumnการรายงานSCROLL_BACKWARDSและSCROLL_FORWARDSความหมายที่ถูกต้องสำหรับกรณีขอบที่ด้านบน/ด้านล่างของหน้าจอ (I5c28d, b/405205994)
  • แก้ไขข้อบกพร่องใน SwipeDismissableNavHost ที่การเปลี่ยนผ่านที่อยู่ระหว่างดำเนินการไม่ได้ทำเครื่องหมายว่าเสร็จสมบูรณ์หลังจากปัดกลับใน API 36 (Ife72e, b/441089689)
  • อัปเดต OpenOnPhoneMaxSweepAngle เริ่มต้นเป็น 200 องศาเพื่อป้องกันไม่ให้ข้อความ "ตรวจสอบโทรศัพท์" บางส่วนถูกตัดออก (Ib2e4c, b/428243902)

เวอร์ชัน 1.5.0

27 สิงหาคม 2025

androidx.wear.compose:compose-*:1.5.0 เปิดตัวแล้ว เวอร์ชัน 1.5.0 มีการเปลี่ยนแปลงเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.4.0

เปิดตัวไลบรารี Material 3 ของ Wear Compose เป็นครั้งแรก ซึ่งรองรับระบบการออกแบบ Material 3 Expressive แบบใหม่ เวอร์ชันนี้มีรายละเอียดดังต่อไปนี้

  • อัปเดตการกำหนดธีม MaterialTheme และสีแบบไดนามิก
  • คอมโพเนนต์ AppScaffold, ScreenScaffold, HorizontalPagerScaffold และ VerticalPagerScaffold ใหม่เพื่อจัดวางโครงสร้างของหน้าจอและประสานงานภาพเคลื่อนไหว ScrollIndicator, TimeText, HorizontalPageIndicator และ VerticalPageIndicator
  • การเปลี่ยนรูปร่าง IconButton, TextButton, IconToggleButton และ TextToggleButton พร้อมรูปแบบต่างๆ ที่เคลื่อนไหวเมื่อกดหรือเลือก
  • EdgeButton ซึ่งมีรูปร่างพิเศษที่ออกแบบมาสำหรับด้านล่างของหน้าจอ
  • ButtonGroupใช้ปุ่มกลุ่มที่แสดงออกเป็นแถวซึ่งเปลี่ยนรูปร่างเมื่อแตะ
  • AlertDialog และ ConfirmationDialog ที่มีรูปแบบต่างๆ สำหรับเนื้อหาในกล่องโต้ตอบเพิ่มเติม
  • TimePicker และคอมโพเนนต์ DatePicker
  • ตัวบ่งชี้ความคืบหน้า ได้แก่ CircularProgressIndicator (ที่มีรูปแบบที่แบ่งกลุ่ม) ArcProgressIndicator และ LinearProgressIndicator

นอกจากนี้ Wear Compose Foundation 1.5.0 ยังมีสิ่งต่อไปนี้ด้วย

  • TransformingLazyColumn รายการที่เลื่อนในแนวตั้งแบบเลซีโหลดซึ่งรองรับการปรับขนาดและภาพเคลื่อนไหวแบบมอร์ฟ
  • รองรับการแบ่งหน้าใน Wear Compose Foundation ด้วย HorizontalPager และ VerticalPager
  • กลุ่มโฟกัสแบบลำดับชั้น - ใช้เพื่อใส่คำอธิบายประกอบที่สามารถคอมโพสได้ในแอปพลิเคชันเพื่อติดตามส่วนที่ใช้งานอยู่ขององค์ประกอบและประสานงานโฟกัส

อ่านเพิ่มเติมเกี่ยวกับ (Material 3 Expressive สำหรับ Wear OS)

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

เวอร์ชัน 1.5.0-rc02

13 สิงหาคม 2025

androidx.wear.compose:compose-*:1.5.0-rc02 เปิดตัวแล้ว เวอร์ชัน 1.5.0-rc02 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขข้อบกพร่องใน TimePicker ซึ่งสตริงแบบยาวที่แปลเป็นภาษาต่างๆ สำหรับช่วงเวลา (AM/PM) อาจทำให้เลย์เอาต์เสีย (I0fa81)

เวอร์ชัน 1.5.0-rc01

30 กรกฎาคม 2025

androidx.wear.compose:compose-*:1.5.0-rc01 เปิดตัวแล้ว เวอร์ชัน 1.5.0-rc01 มีการเปลี่ยนแปลงเหล่านี้

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

  • TimePicker จะอิงตามภาษาของผู้ใช้โดยสมบูรณ์ โดยใช้ DateFormat.getBestDateTimePattern เพื่อกำหนดลำดับและเนื้อหาของตัวเลือกและตัวคั่น การเปลี่ยนแปลงนี้จะแก้ไขการจัดลำดับคอลัมน์ที่ไม่ถูกต้องสำหรับภาษา CJK แก้ปัญหาเลย์เอาต์ RTL ในภาษาต่างๆ เช่น อารบิก ใช้ตัวคั่นที่แปลแล้ว และรองรับทั้งรูปแบบ 0-11 และ 1-12 ชั่วโมงตามภาษา (I5d543)
  • DatePicker ตอนนี้แสดงเดือนเป็นตัวเลขในบางภาษา เช่น CJK เพื่อหลีกเลี่ยงการผสมรูปแบบตัวเลขและภาษา (เช่น 2025 | 07 | 02 แทน 2025 | 7月 | 02) การเปลี่ยนแปลงนี้ใช้ฮิวริสติกที่ตรวจสอบว่าภาษาใช้คำต่อท้ายทางภาษาสำหรับปีหรือไม่ หากใช้ ระบบจะเปลี่ยนรูปแบบเดือนจากข้อความ (MMM) เป็นตัวเลข (MM) เพื่อให้สอดคล้องกัน (Ia93fe)
  • ตอนนี้พื้นที่แนวตั้งสำหรับส่วนหัวในคอมโพเนนต์ Picker จะคงที่แล้ว ซึ่งจะช่วยป้องกันการเลื่อนที่มองเห็นได้เมื่อเลือกคอลัมน์ Picker โดยเฉพาะในโหมด Talkback (I7f8b7)
  • แก้ไขข้อบกพร่องด้านการช่วยเหลือพิเศษที่เกิดจากการวาด HorizontalPageIndicator และ VerticalPageIndicator แบบเต็มหน้าจอ ตัวบ่งหน้าจะไม่แสดงแบบเต็มหน้าจออีกต่อไป และจะวางตำแหน่งโดยอัตโนมัติเมื่อใช้กับ HorizontalPagerScaffold หรือ VerticalPagerScaffold เมื่อไม่ได้ใช้โครงสร้าง Pager ให้ระบุการจัดแนวอย่างชัดเจนโดยใช้ modifier = Modifier.align(Alignment.BottomCenter) กับ HorizontalPageIndicator และ modifier =Modifier.align(Alignment.CenterEnd) กับ VerticalPageIndicator (I3a0ad)
  • ตอนนี้ทิศทางการปัดใน SwipeToReveal จะสอดคล้องกันทั้งสำหรับ LayoutDirections ที่อ่านจากซ้ายไปขวาและจากขวาไปซ้าย (I6d427)
  • คืนค่าการจัดกึ่งกลางในแนวตั้ง SwipeToReveal สำหรับการดำเนินการ หาก hasPartiallyRevealedState = true ผู้โทรควรตั้งค่า RevealState เป็น RevealValue.Covered เมื่อมีการเลื่อน (I6473d)
  • SwipeDismissableNavHost จะตัดเนื้อหาอย่างถูกต้องสำหรับ API 36 ขึ้นไป (Ib9a44)

เวอร์ชัน 1.5.0-beta06

16 กรกฎาคม 2025

androidx.wear.compose:compose-*:1.5.0-beta06 เปิดตัวแล้ว เวอร์ชัน 1.5.0-beta06 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขภาพเคลื่อนไหว EdgeButton เมื่อ LazyColumn หรือ ScalingLazyColumn มี reverseLayout = true (I46a1a)
  • แก้ไขข้อบกพร่องใน ScreenScaffold ที่การแตะเพื่อสำรวจไม่ทำงานใน TalkBack หากมีการระบุ ScrollIndicator/PageIndicator (I6dcee)
  • TransformingLazyColumn ตอนนี้อนุญาตให้มีการมอร์ฟที่กำหนดเองจาก TransformationSpec โดยการอ่านค่า itemHeight ที่ TransformationSpec ระบุไว้ในเครื่องมือวาดภาพพื้นหลัง (I6a599)
  • การเปลี่ยนสีเมื่อเปิด/ปิดภาพเคลื่อนไหวสำหรับ IconButton เพื่อให้สอดคล้องกับ IconToggleButton (Ife10a)
  • นำการยึดส่วนขั้นต่ำใน CircularProgressIndicator ออกเพื่อหลีกเลี่ยงการกระโดดที่เห็นได้ชัดไปยังขนาดจุดขั้นต่ำเมื่อเคลื่อนไหว การเปลี่ยนแปลงนี้จะทำให้ไม่ได้ใช้พารามิเตอร์ targetProgress ใน drawCircularProgressIndicator อีกต่อไป (I33309)
  • ตอนนี้ Picker มีบทบาทเชิงความหมาย ValuePicker ซึ่งโปรแกรมอ่านหน้าจอสามารถใช้เพื่อทำให้ Picker เข้าถึงได้มากขึ้น นอกจากนี้ เครื่องมือเลือกยังมีการอัปเดตป้ายกำกับคลิกเพื่อการช่วยเหลือพิเศษ ซึ่งจะแยกความแตกต่างระหว่างการปรับค่าในโหมดอ่านอย่างเดียวกับการเลือกค่าปัจจุบันในโหมดอื่นๆ (I33309)

เวอร์ชัน 1.5.0-beta05

2 กรกฎาคม 2025

androidx.wear.compose:compose-*:1.5.0-beta05 เปิดตัวแล้ว เวอร์ชัน 1.5.0-beta05 มีการเปลี่ยนแปลงเหล่านี้

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

  • อัปเดตเอกสารเพื่อชี้แจงการใช้งาน Modifier.edgeSwipeToDismiss (I78cb5)
  • แก้ไขข้อบกพร่องที่อาจแสดงรายการที่เปิดเผยหลายรายการพร้อม SwipeToReveal ในรายการที่โหลดแบบ Lazy (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 ที่ทำให้ทำงานร่วมกับการปัดเพื่อปิดไม่ได้อย่างถูกต้อง หากทั้งมุมมองและฟีเจอร์เขียนใช้งานอยู่บนหน้าจอ (I5dc0e)
  • แก้ไขข้อบกพร่องที่ทำให้การดำเนินการ SwipeToReveal มีการวาดด้วยออฟเซ็ตแนวตั้งเมื่อเลื่อน (I29444)
  • ตอนนี้ AlertDialog, ConfirmationDialog, OpenOnPhoneDialog และ SwipeToReveal จะปัดขึ้นระยะขอบและขนาดที่คำนวณเป็นเปอร์เซ็นต์ของขนาดหน้าจอ (I76367)
  • ButtonDefaults.outlinedButtonBorder จะอัปเดตตามการเปลี่ยนแปลงสถานะที่เปิด/ปิดในขนาด(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 ซึ่งจะรายงานจุดยึดที่ไม่ถูกต้องใน RevealState.currentValue เมื่อตั้งค่า hasPartiallyRevealedState เป็น "เท็จ" (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 รวมถึงคอมโพเนนต์ Picker และ PickerGroup สำหรับสร้างหน้าจอเครื่องมือเลือกของคุณเอง
  • ProgressIndicators - รองรับตัวบ่งชี้ความคืบหน้าแบบวงกลมและเชิงเส้น (CircularProgressIndicator มีรูปแบบที่แบ่งกลุ่มและไม่แน่นอน)
  • การ์ด - มีการ์ดหลายรูปแบบให้เลือกใช้ รวมถึงTitleCard ซึ่งมีเลย์เอาต์เฉพาะสำหรับการ์ดที่มีช่องชื่อ เวลา คำบรรยาย หรือเนื้อหา TitleCard ยังสามารถกำหนดพื้นหลังเป็นรูปภาพเพื่อเสริมความหมายของข้อมูลในการ์ดได้ด้วย
  • Pagers - คอมโพเนนต์ HorizontalPagerScaffold, VerticalPagerScaffold และ AnimatedPage จะประสานงานภาพเคลื่อนไหว HorizontalPageIndicator และ VerticalPagerIndicator HorizontalPager และ VerticalPager จะเผยแพร่ในไลบรารี Wear Compose Foundation
  • ตัวยึดตำแหน่ง - วาดรูปร่างโครงร่างเหนือคอมโพเนนต์ ในกรณีที่ไม่มีเนื้อหาชั่วคราว
  • แถบเลื่อนและตัวควบคุมแบบขั้น - ทั้งแถบเลื่อนและตัวควบคุมแบบขั้นช่วยให้ผู้ใช้เลือกจากช่วงของค่าได้ แถบเลื่อนมีขนาดกะทัดรัดกว่าและสามารถแบ่งส่วนได้ ในขณะที่ Stepper เป็นคอมโพเนนต์แบบเต็มหน้าจอที่มักจะจับคู่กับ StepperLevelIndicator
  • SwipeToReveal - ใช้เพื่อเพิ่มการดำเนินการเพิ่มเติมไปยัง Composable เมื่อมีการปัดจากขวาไปซ้าย

นอกจากนี้ Wear Compose Foundation 1.5.0-beta01 ยังมีคอมโพเนนต์ใหม่ต่อไปนี้ด้วย

  • TransformingLazyColumn - รายการแบบเลื่อนในแนวตั้งที่รองรับภาพเคลื่อนไหวแบบปรับขนาดและเปลี่ยนรูป
  • กลุ่มทดสอบแบบลำดับชั้น - ใช้เพื่อใส่คำอธิบายประกอบ Composable ในแอปพลิเคชัน เพื่อติดตามส่วนที่ใช้งานอยู่ของ Composition และประสานงานโฟกัส
  • Pagers - คอมโพเนนต์ HorizontalPager และ VerticalPager สร้างขึ้นบนคอมโพเนนต์ Compose Foundation พร้อมการปรับปรุงเฉพาะ Wear เพื่อปรับปรุงประสิทธิภาพและการปฏิบัติตามหลักเกณฑ์ของ Wear OS

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

  • อัปเดต 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)
  • เราได้ย้ายการอ้างอิง Material3 ของ Wear Compose SwipeToReveal ใน 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 ไปยังเทรดผู้ปฏิบัติงาน เนื่องจากทำให้เกิดปัญหาสำหรับแอปที่จัดการการสร้างเธรดของตนเองในระหว่างการไปยังส่วนต่างๆ (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

  • การอ้างอิง SwipeToReveal ของ Material ทั้งหมดใน 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 โดยนำ Compose Foundation PagerState ออกจากการเป็นคลาสพื้นฐาน และเพิ่มพร็อพเพอร์ตี้ 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 ใน Swipe-to-Reveal API (I7472f)
  • เราได้เปลี่ยนลายเซ็นของพารามิเตอร์ positionalThreshold ของฟังก์ชัน rememberRevealState ของ SwipeToReveal (I29c0a)
  • เราได้เพิ่มพารามิเตอร์ overscrollEffect ใหม่ลงใน ScalingLazyColumn, TransformingLazyColumn และ ScreenScaffold (I0cee8)
  • เมื่อใช้ PagerDefaults#snapFlingBehaviour ระบบจะแทนที่พารามิเตอร์ pagerSnapDistance ด้วยพารามิเตอร์ Int maxFlingPages ซึ่งใช้เพื่อระบุจำนวนหน้าสูงสุดที่ Pager ควรตวัดได้ (I8cfc0)
  • ตอนนี้ Wear Pager มี PagerScope ของตัวเองแล้วแทนที่จะใช้ Compose Foundation PagerScope (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)
  • เราได้เพิ่มการป้องกันไม่ให้เกิดข้อขัดข้องเมื่อเข้าถึงการตั้งค่าลดภาพเคลื่อนไหว (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)
  • เราได้ทำให้พารามิเตอร์ภาพเคลื่อนไหวสแนปของเพจเจอร์เป็นส่วนหนึ่งของ 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 หลังจากตั้งค่าสถานะ show เป็น 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 ไปยัง performFling ของ ScalingLazyColumnSnapFlingBehavior (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 มีการเปลี่ยนแปลงเหล่านี้

  • เราได้อัปเดตทรัพยากร Dependency ของ 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 and 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

  • เราได้เพิ่ม Ripple API ใหม่ในไลบรารี wear:compose-material และ wear:compose-material3 ซึ่งจะมาแทนที่ rememberRipple ที่เลิกใช้งานไปแล้ว นอกจากนี้ ยังเพิ่ม CompositionLocal, LocalUseFallbackRippleImplementation ชั่วคราวเพื่อเปลี่ยนคอมโพเนนต์ Material ให้กลับไปใช้ API ของ rememberRipple/RippleTheme ที่เลิกใช้งานแล้ว การตั้งค่านี้จะนำออกในการเผยแพร่เวอร์ชันเสถียรครั้งถัดไป และมีไว้เพื่อเป็นเครื่องมือช่วยในการย้ายข้อมูลชั่วคราวในกรณีที่คุณระบุ RippleTheme ที่กำหนดเอง ดูข้อมูลการย้ายข้อมูลและข้อมูลเบื้องหลังเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงนี้ได้ที่ developer.android.com (af92b21)
  • เราได้อัปเดต ColorScheme ให้เปลี่ยนแปลงไม่ได้ ซึ่งทำให้การอัปเดตสีแต่ละรายการมีประสิทธิภาพน้อยลง แต่ทำให้การใช้สีที่พบบ่อยมีประสิทธิภาพมากขึ้น เหตุผลที่อยู่เบื้องหลังการเปลี่ยนแปลงนี้คือแอปส่วนใหญ่ไม่ได้มี Use Case หลักเป็นการอัปเดตสีแต่ละสี ยังคงทำได้ แต่จะมีการเขียนใหม่มากกว่าเดิม ซึ่งจะช่วยลดจำนวนการสมัครใช้บริการสถานะผ่านโค้ดของ Material ทั้งหมดได้อย่างมาก และจะส่งผลต่อต้นทุนการเริ่มต้นและการรันไทม์ของ Use Case มาตรฐานมากขึ้น (f5c48b7)
  • คอมโพเนนต์ Wear Material และ Wear Material3 ที่แสดง MutableInteractionSource ใน API ได้รับการอัปเดตให้แสดง MutableInteractionSource ที่อนุญาตให้เป็น Null ได้ ซึ่งค่าเริ่มต้นจะเป็น Null ไม่มีการเปลี่ยนแปลงเชิงความหมายที่นี่ การส่งค่า null หมายความว่าคุณไม่ต้องการยก MutableInteractionSource และระบบจะสร้าง ภายในคอมโพเนนต์หากจำเป็น การเปลี่ยนเป็นค่าว่างจะทำให้บางคอมโพเนนต์ไม่จัดสรร MutableInteractionSource และทำให้คอมโพเนนต์อื่นๆ สร้างอินสแตนซ์เมื่อจำเป็นเท่านั้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพในคอมโพเนนต์เหล่านี้ หากไม่ได้ใช้ MutableInteractionSource ที่ส่งไปยังคอมโพเนนต์เหล่านี้ เราขอแนะนำให้ส่งค่าเป็น null แทน นอกจากนี้ เราขอแนะนำให้คุณทำการเปลี่ยนแปลงที่คล้ายกันในคอมโพเนนต์ของคุณเองด้วย (f8fa920)
  • เราได้อัปเดต rememberExpandableState เพื่อบันทึกสถานะขยาย ซึ่งจะช่วยให้มั่นใจได้ว่าระบบจะจัดเก็บข้อมูลเมื่อไปยังหน้าจออื่น และจะคืนค่าข้อมูลเมื่อกลับมาที่หน้าจอเดิม (5c80095)

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

  • เราได้อัปเดตReduceMotionการตั้งค่าเพื่อใช้ Listener ที่รับรู้ถึงวงจรแล้ว (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 ได้ที่บันทึกประจำรุ่น beta01

คำแนะนำในการติดตั้งใช้งาน

  • หากแอปอนุญาตให้ผู้ใช้เลื่อนดูเนื้อหาของหน้าจอ เช่น ในแอปที่อิงตามแผนที่ ให้ปิดการจัดการการปัดโดยตั้งค่า 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 และตอนนี้ Chip และ 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 มี 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 Core สำหรับชิป Material ออกเพื่อปรับปรุงประสิทธิภาพ (If2dcb)

เวอร์ชัน 1.3.0-alpha08

18 ตุลาคม 2023

androidx.wear.compose:compose-*:1.3.0-alpha08 เปิดตัวแล้ว เวอร์ชัน 1.3.0-alpha08 มีคอมมิตเหล่านี้

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

  • เราได้เพิ่ม Flag แต่ละรายการลงในโอเวอร์โหลด PositionIndicator เพื่อควบคุมภาพเคลื่อนไหวต่างๆ ได้แก่ showFadeInAnimation, showFadeOutAnimation และ showPositionAnimation เราเลิกใช้งาน API เดิมแล้วและส่งต่อการเรียกไปยัง API ใหม่ เพื่อประสิทธิภาพและความสอดคล้องของ UX เมื่อใช้ PositionIndicator กับรายการที่เลื่อนได้ เราขอแนะนำให้ปิดใช้แฟล็ก 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 กับรายการที่เลื่อนได้ เราขอแนะนำให้ปิดใช้แฟล็ก 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)
  • เราได้เพิ่มตัวอย่างสำหรับ Material 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 - คอมโพสิตที่ทดลองใช้นี้ช่วยให้สามารถทำเครื่องหมายซับทรีของคอมโพสิชันเป็นเปิดใช้โฟกัสหรือปิดใช้โฟกัส
  • Picker - ตอนนี้ API มี userScrollEnabled เพื่อควบคุมว่าตัวเลือกจะใช้งานได้เมื่อผู้ใช้เลื่อนหรือไม่
  • PickerGroup - Composable ใหม่สำหรับจัดการเครื่องมือเลือกหลายรายการพร้อมกัน โดยจะจัดการโฟกัสระหว่างเครื่องมือเลือกโดยใช้ 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 ลงใน 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 ที่มีอยู่เป็น true สำหรับข้อมูลพื้นฐาน โปรดดูแก้ไขการเว้นวรรคแบบอักษรใน 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 ในการสาธิตตัวเลือกด้วย (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 หากตั้งค่าเป็น false 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 โดยการย้ายโฟกัสไปยัง Picker ที่เลือกจากกลุ่ม (I60840)

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

  • เราได้เพิ่มการโอเวอร์โหลดให้กับ Stepper ด้วยพารามิเตอร์ enableRangeSemantics เพิ่มเติมเพื่ออำนวยความสะดวกในการปิดใช้ความหมายของช่วงเริ่มต้น (Ia61d4)

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

  • อนุญาตให้ScalingLazyColumnซ้อนอยู่ในหน้าเว็บที่เลื่อนในแนวนอน (Iec3f8, b/266555016)
  • การปรับปรุง kdoc ของ Stepper และการล้างข้อมูลการทดสอบ StepperTest (Ic118e)
  • อัปเดตทรัพยากร Dependency ของ 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 Text เพื่อให้มีลักษณะการทำงานที่สอดคล้องกับ 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 เพื่อให้ทำเครื่องหมาย Sub-Tree ของ Composition เป็น Focus Enabled หรือ Focus Disabled ได้(I827cb)
  • เราได้เพิ่มพร็อพเพอร์ตี้ใหม่เพื่อลบล้างบทบาทเชิงความหมายสำหรับ ToggleButton.(I67132)
  • เราได้อัปเดต TimeTextDefaults.TimeFormat12Hours เพื่อนำ AM/PM ออกใน TimeText ซึ่งจะเปลี่ยนค่าเริ่มต้นของพารามิเตอร์ timeSource ใน TimeText API (I1eb7f)
  • เราได้ขยาย Picker API เพื่อปรับปรุงการช่วยเหลือพิเศษสำหรับหน้าจอที่มีเครื่องมือเลือกหลายรายการ มีพร็อพเพอร์ตี้ใหม่ userScrollEnabled เพื่อควบคุมว่าเครื่องมือเลือกจะทำงานเมื่อผู้ใช้เลื่อนหรือไม่ (I3c3aa)

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

  • เราได้เปลี่ยนความกว้างของขอบเริ่มต้นสำหรับ OutlinedButton/OutlinedCompactButton จาก 2.dp เป็น 1.dp เพื่อให้ตรงกับข้อกำหนด UX สุดท้าย (Icf84d)
  • เพื่อลดผลกระทบของรายการแรกที่เพิ่มลงใน ScalingLazyColumn ว่างเปล่าที่ดูเหมือนจะเลื่อนเข้าที่ เราจึงเพิ่ม autoCentering topPadding โดยประมาณเมื่อเนื้อหาว่างเปล่า การเปลี่ยนแปลงนี้จะคำนวณจำนวนการเว้นที่ว่างด้านบนที่จำเป็นโดยถือว่ารายการเริ่มต้นมีความสูง 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)
  • เพื่อลดผลกระทบของรายการแรกที่เพิ่มลงใน ScalingLazyColumn ว่างเปล่าที่ดูเหมือนจะเลื่อนเข้าที่ เราจึงเพิ่ม autoCentering topPadding โดยประมาณเมื่อเนื้อหาว่างเปล่า การเปลี่ยนแปลงนี้จะคำนวณจำนวนการเว้นที่ว่างด้านบนที่จำเป็นโดยถือว่ารายการเริ่มต้นมีความสูง 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 เพื่อให้ระบบยังคงแสดง TimeText แม้ว่า itemIndex ที่ระบุจะไม่ถูกต้อง (เช่น หากดัชนีสินค้าดังกล่าวอยู่นอกช่วง) (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 รายการอยู่คนละด้านของเส้นกึ่งกลางของวิวพอร์ต ระบบจะพิจารณาสินค้าที่อยู่ใกล้ที่สุดเป็น 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 for Wear OS เวอร์ชัน 1.1.0-beta01 ระบุว่าไลบรารีรุ่นนี้มีฟีเจอร์ครบถ้วนและ API ล็อกแล้ว

  • การเปิดตัว Wear Compose 1.1 มีฟังก์ชันใหม่ๆ ดังนี้
    • เครื่องมือเลือก - ปรับปรุงการช่วยเหลือพิเศษในเครื่องมือเลือกเพื่อให้หน้าจอเครื่องมือเลือกหลายรายการนำทางได้ด้วยโปรแกรมอ่านหน้าจอและเข้าถึงคำอธิบายเนื้อหาได้
    • ตอนนี้ระบบจะใช้พารามิเตอร์ contentDescription Picker เฉพาะกับตัวเลือก 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 รู้จักปุ่มเหล่านั้น
    • โครงสร้าง - 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()) ซึ่งวาดทับเอฟเฟกต์อื่นๆ เพื่อระบุให้ผู้ใช้ทราบว่าเรากำลังรอให้ระบบโหลดข้อมูล
      • เอฟเฟกต์ทั้งหมดนี้ออกแบบมาให้ประสานงานและส่องประกาย รวมถึงเช็ดออกในลักษณะที่จัดเรียงไว้
  • อัปเดตการขึ้นต่อกันหลักของ 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 ภายในของตัวเลือก เพื่อให้มั่นใจว่าสามารถเลื่อนตัวเลือกที่ 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 ระบุว่าควรมี Spacer 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 เพื่อให้มั่นใจว่าขนาดเป้าหมายการแตะจะสูงอย่างน้อย 48 dp เพื่อให้เป็นไปตามหลักเกณฑ์การช่วยเหลือพิเศษของ 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 ทำงานในโหมด Compose @Preview (I3b3b6, b/232947354)

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

  • เราได้เปลี่ยนค่าเริ่มต้นของพร็อพเพอร์ตี้ ScalingLazyColumn.horizontalAlignment จาก Start เป็น 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 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้เครื่องมือเลือกจะตอบสนองต่อเหตุการณ์การเลื่อนเสมอแม้จะอยู่ในโหมดอ่านอย่างเดียวก็ตาม ซึ่งจะช่วยให้ผู้ใช้ไม่ต้องเลือกเครื่องมือเลือกก่อนโดยการแตะ แล้วจึงเลื่อนได้ ในโหมดอ่านอย่างเดียว ตัวเลือกอื่นๆ นอกเหนือจากตัวเลือกที่เลือกในปัจจุบันจะถูกซ่อนโดย Shim ใน gradientColor (I72925)
  • เราได้เปลี่ยนลักษณะการทำงานของ UX ของ Chip/ToggleChip/CompactChip/SplitToggleChip เพื่อไม่ให้ fillMaxWidth โดยค่าเริ่มต้น แต่จะขยายให้พอดีกับเนื้อหา หากต้องการคงลักษณะการทำงานเดิมไว้ ให้เพิ่ม modifier = Modifier.fillMaxWidth()(I60a2c, b/232206371)

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

  • CurvedTextStyle ที่ใช้ TextStyle จะใช้ fontWeight ด้วย(อาจเพิ่มลงในตัวสร้างและวิธีการคัดลอกในการแก้ไข 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 ของ Wear Compose ในรุ่น 1.0 มีดังนี้

  • ธีม Material - ใช้แทน Compose สำหรับอุปกรณ์เคลื่อนที่ MaterialTheme มีสี รูปร่าง และแบบตัวพิมพ์สำหรับการสร้างคอมโพเนนต์ในอุปกรณ์ที่สวมใส่ได้ซึ่งใช้หลักเกณฑ์ UX ของ Wear Material Design โดยค่าเริ่มต้น
  • Button, CompactButton และ ToggleButton - ปุ่มมีช่องเดียวสำหรับใส่ไอคอน รูปภาพ หรือข้อความสั้นๆ (สูงสุด 3 อักขระ) มีรูปร่างเป็นวงกลมและมีขนาดที่แนะนำสำหรับปุ่มเริ่มต้น ขนาดใหญ่ หรือขนาดเล็ก CompactButton มีช่องเดียวสำหรับใส่เนื้อหาใดก็ได้ (ไอคอน รูปภาพ หรือข้อความ) และมีรูปร่างเป็นวงกลมโดยมีขนาดพื้นหลังเล็กพิเศษ CompactButton มีการเว้นระยะห่างแบบโปร่งใสรอบพื้นหลัง (ไม่บังคับ) ซึ่งจะเพิ่มพื้นที่ที่คลิกได้ ToggleButton เป็นปุ่มที่มีช่องเดียวสำหรับใส่เนื้อหาใดก็ได้ (ข้อความสั้นๆ ไอคอน หรือรูปภาพ) และมีสถานะเปิด/ปิด (เลือก/ยกเลิกการเลือก) พร้อมการลงสีและไอคอนต่างๆ เพื่อแสดงว่าเลือกหรือไม่
  • การ์ด - ใช้เพื่อแสดงข้อมูลเกี่ยวกับแอปพลิเคชัน เช่น การแจ้งเตือน การออกแบบที่ยืดหยุ่นสำหรับกรณีการใช้งานที่แตกต่างกัน โดยมี AppCard และ TitleCard ที่ให้เลย์เอาต์ที่แตกต่างกันและรองรับรูปภาพเป็นเนื้อหาของการ์ดหรือพื้นหลัง
  • ชิป - คอมโพเนนต์รูปทรงสนามกีฬาที่คล้ายกับปุ่ม แต่มีพื้นที่ขนาดใหญ่กว่าและมีช่องหลายช่องเพื่อให้ใส่ป้ายกำกับ ป้ายกำกับรอง และไอคอนได้ ในขนาดต่างๆ และรองรับรูปภาพเป็นพื้นหลัง
  • ToggleChip และ SplitToggleChip - ชิปที่มีสถานะเลือก/ยกเลิกการเลือก และเพิ่มช่อง ToggleControl เพื่อแสดงไอคอน เช่น สวิตช์หรือปุ่มตัวเลือก เพื่อแสดงสถานะที่เลือกของคอมโพเนนต์ นอกจากนี้ SplitToggleChip ยังมีพื้นที่ที่แตะได้ 2 ส่วน โดยส่วนหนึ่งคลิกได้และอีกส่วนหนึ่งสลับได้
  • 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 Design ของ Wear ให้เอฟเฟกต์การปรับขนาดและความโปร่งใสแก่รายการเนื้อหา ScalingLazyColumn ได้รับการออกแบบมาให้รองรับรายการเนื้อหาจำนวนมากที่อาจเกิดขึ้น ซึ่งจะแสดงและเรียบเรียงเมื่อจำเป็นเท่านั้น
  • แถบเลื่อน - ช่วยให้ผู้ใช้เลือกจากช่วงของค่าได้ ช่วงของการเลือกจะแสดงเป็นแถบ ซึ่งอาจแสดงพร้อมตัวคั่นก็ได้
  • Stepper - คอมโพเนนต์แบบเต็มหน้าจอที่ช่วยให้ผู้ใช้เลือกค่าจากช่วงค่าได้โดยใช้ปุ่มเพิ่ม/ลดที่ด้านบนและด้านล่างของหน้าจอ โดยมีช่องตรงกลางสำหรับข้อความหรือชิป
  • SwipeToDismissBox - จัดการท่าทางสัมผัสด้วยการปัดเพื่อปิด โดยจะใช้ช่องเดียวสำหรับพื้นหลัง (แสดงเฉพาะในท่าทางการปัด) และเนื้อหาที่อยู่เบื้องหน้า อาจใช้ร่วมกับไลบรารีการนำทาง androidx ได้โดยใช้ SwipeDismissableNavHost (ดูไลบรารีการนำทาง Wear Compose ด้านล่าง)
  • ข้อความ - การใช้งาน Compose Material Text Component ใน Wear โดยใช้สีและค่าอัลฟ่าจากธีม Material ของ Wear
  • TimeText - คอมโพเนนต์สำหรับแสดงเวลาและสถานะแอปพลิเคชันที่ด้านบนของหน้าจอ ปรับให้เข้ากับรูปร่างหน้าจอโดยใช้ข้อความโค้งบนหน้าจอทรงกลม
  • Vignette - การปรับแต่งหน้าจอสำหรับใช้ใน Scaffold ซึ่งจะเบลอส่วนบนและส่วนล่างของหน้าจอเมื่อใช้เนื้อหาที่เลื่อนได้

  • นอกจากนี้ ยังมีคอมโพเนนต์ต่อไปนี้จาก Wear Compose Foundation ด้วย

  • CurvedLayout - Wear Foundation CurvedLayout เป็นเลย์เอาต์ที่ใช้ได้กับ Composable ซึ่งวางองค์ประกอบย่อยในส่วนโค้งและหมุนองค์ประกอบย่อยตามต้องการ ซึ่งคล้ายกับเลย์เอาต์แถวที่โค้งเป็นส่วนของวงแหวน โปรดทราบว่าเนื้อหาของ CurvedLayout ไม่ใช่ Lambda ที่ประกอบได้ แต่เป็น DSL (Domain-Specific Language) องค์ประกอบทั้งหมดใน DSL ของ CurvedLayout รองรับพารามิเตอร์ตัวแก้ไขที่ไม่บังคับ ซึ่งสร้างจาก CurvedModifier

  • basicCurvedText - องค์ประกอบใน CurvedLayout DSL basicCurvedText ช่วยให้นักพัฒนาแอปเขียนข้อความโค้งตามความโค้งของวงกลมได้อย่างง่ายดาย (โดยปกติจะอยู่ที่ขอบของหน้าจอวงกลม) basicCurvedText จะสร้างได้ภายใน CurvedLayout เท่านั้นเพื่อให้มั่นใจว่าจะได้รับประสบการณ์การใช้งานที่ดีที่สุด เช่น การระบุตำแหน่ง และการใช้ CurvedModifiers โปรดทราบว่าในกรณีส่วนใหญ่ ควรใช้ curvedText แทน เนื่องจากใช้การจัดธีม Material

  • curvedComposable - wraps normal composable content so that it can be used with 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 Cards แล้ว เมื่อตั้งค่าพารามิเตอร์เป็น "เท็จ" คุณจะคลิกการ์ดไม่ได้ (Idc48d, b/228869805)

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

  • ตอนนี้ Stepper จะปิดใช้ปุ่มลดและเพิ่มเมื่อถึงขีดจำกัดล่าง/บน (และใช้ ContentAlpha.disabled กับ iconColor) (I4be9f)
  • เราได้เพิ่มระยะขอบ 1dp รอบเนื้อหาของ Picker เมื่อวาดด้วยการไล่ระดับสีเพื่อป้องกันการสั่นของข้อความที่เห็นเมื่อปัด (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 ซึ่งคล้ายกับตัวแก้ไขใน Compose คุณใช้แอตทริบิวต์นี้กับองค์ประกอบย่อยของ curvedRow และ CurvedLayout (สำหรับความกว้าง) รวมถึงองค์ประกอบย่อยของ curvedColumn (สำหรับความสูง) ได้ (I8abbd)
  • เพิ่มตัวแก้ไข CurvedModifier.size, .angularSize และ .radialSize เพื่อระบุขนาดขององค์ประกอบโค้ง (I623c7)

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

  • จัดเรียงพารามิเตอร์ใหม่เพื่อให้พื้นหลังอยู่ก่อนสีอย่างสม่ำเสมอใน Wear Compose API (I43208)
  • นำพารามิเตอร์ insideOut และพารามิเตอร์ตามเข็มนาฬิกาออก แล้วแทนที่ด้วยค่าคงที่ที่มีรายละเอียดมากขึ้นในคลาสใหม่ ตอนนี้เลย์เอาต์โค้งสามารถLayoutDirectionรับรู้ได้ และจะรับค่าเมื่อไม่ได้ระบุ (If0e6a)
  • เราได้แทนที่ autoCenter: Boolean ด้วย autoCenter: AutoCentringParams เพื่อแก้ไขปัญหา API กับ ScalingLazyColumn (Ia9c90)
  • เราได้เปลี่ยนชื่อ iconTintColor และ toggleControlTintColor เป็น iconColor และ toggleControlColor ใน API ทั้งหมด (Chip/ToggleChip/Dialog/Slider/Stepper/...) เนื่องจากมีการใช้สีกับช่องไอคอน/ToggleControl (Ied238)
  • เขียน PageIndicatorStyle enum ใหม่เป็นคลาสค่า (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 และตอนนี้ Dialog จะควบคุมระดับการมองเห็นของตัวเอง (ซึ่งช่วยให้ Dialog สามารถเรียกใช้ภาพเคลื่อนไหวตอนต้นและตอนท้ายเมื่อแสดง/ซ่อน Dialog) โปรดทราบว่าระบบจะไม่แสดงภาพเคลื่อนไหวตอนท้ายเมื่อผู้ใช้ออกจากกล่องโต้ตอบผ่านการปัดเพื่อปิด นอกจากนี้ เรายังได้เพิ่มค่าเริ่มต้นสำหรับสถานะในSwipeToDismissBoxโอเวอร์โหลดที่เพิ่มเข้ามาเมื่อเร็วๆ นี้ด้วย (I682a0)
  • เราได้เปลี่ยนแปลง ToggleChip และ SplitToggleChip เพื่อให้รองรับ i18n และ a11y ได้ดียิ่งขึ้น จึงทำให้ช่อง toggleControl ไม่มีค่าเริ่มต้นอีกต่อไป นอกจากนี้ เรายังได้เปลี่ยนแปลง ToggleChipDefaults เพื่อให้เมธอดต่อไปนี้แสดงผลเป็น ImageVector แทน Icon (โปรดทราบว่าเนื่องจากไม่ได้แสดงผล @Composables อีกต่อไป จึงมีการเปลี่ยนให้ขึ้นต้นด้วยตัวพิมพ์เล็ก) SwitchIcon()->switchIcon(), CheckboxIcon->checkboxIcon() และ RadioIcon()->radioIcon() ซึ่งจะช่วยให้นักพัฒนาแอปสร้าง 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) (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)
  • เราได้เพิ่มโหมดอ่านอย่างเดียวลงในเครื่องมือเลือกสำหรับหน้าจอที่มีเครื่องมือเลือกหลายรายการ ซึ่งจะแก้ไขได้ครั้งละ 1 รายการเท่านั้น เมื่อตัวเลือกเป็นแบบอ่านอย่างเดียว ตัวเลือกจะแสดงตัวเลือกที่เลือกในปัจจุบันและป้ายกำกับหากมีการระบุไว้ (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 (และโดยปกติแล้วจะต้องอยู่ใน item { /* content */ }) กล่องโต้ตอบรองรับพารามิเตอร์ verticalArrangement ตามนั้น (Idea13)
  • เราได้เปลี่ยนชื่อพร็อพเพอร์ตี้ ToggleChip และ SplitToggleChip toggleIcon เป็น toggleControl เพื่อให้สอดคล้องกับ Material Design มากขึ้น เพื่อช่วยให้นักออกแบบและนักพัฒนาแอปไปยังส่วนต่างๆ ของ API ได้ (If5921, b/220129803)
  • เราได้เพิ่มคำบรรยายใหม่ entry caption3 ลงในรูปแบบตัวอักษรของธีม Material สำหรับ Wear โดย Caption3 เป็นแบบอักษรขนาดเล็กที่ใช้สำหรับการเขียนแบบยาวพิเศษ เช่น ข้อความทางกฎหมาย (I74b13, b/220128356)

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

  • หยุดภาพเคลื่อนไหวการสแนปเมื่อเราอยู่ที่นั่น (Idb69d)
  • สร้างภาพเคลื่อนไหวของการเปลี่ยนแปลงใน PositionIndicator (I94cb9)
  • เราได้เปลี่ยนScalingLazyColumnการจัดกึ่งกลางอัตโนมัติเพื่อให้มีพื้นที่เพียงพอที่จะทำให้มั่นใจว่ารายการที่มีดัชนี ScalingLazyListState.initialCenterItemIndex ขึ้นไปจะเลื่อนไปที่กึ่งกลางของ Viewport ได้อย่างเต็มที่ ตามความคิดเห็นเกี่ยวกับ UI/UX ซึ่งช่วยให้นักพัฒนาแอปวางไอเทม 1 หรือ 2 รายการเกี่ยวกับไอเทมนั้นไว้ตรงกลางในตอนแรกได้ โดยไอเทมดังกล่าวจะเลื่อนไปตรงกลางไม่ได้ ซึ่งหมายความว่า ScalingLazyColumn ที่จัดกึ่งกลางอัตโนมัติจะไม่สามารถเลื่อนเหนือ 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) เพื่อเปิดใช้การรองรับการสแนป (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 ในลิสต์ (index == 1) จะอยู่ตรงกลางของวิวพอร์ตเมื่อเริ่มต้น และรายการที่ 1 (index == 0) จะอยู่ก่อนรายการที่ 2 ซึ่งช่วยให้ได้เอฟเฟกต์ภาพเริ่มต้นที่ดีขึ้นทันทีที่ใช้งาน เนื่องจากรายการส่วนใหญ่จะอยู่ในวิวพอร์ต (I0c623, b/217344252)
  • เราได้ลดScalingLazyColumnค่าเริ่มต้นextraPaddingที่ให้ไว้เพื่อให้มั่นใจว่ามีรายการให้เลือกมากมาย (แม้ว่าเราจะลดขนาดบางรายการลง) จาก 10% เป็น 5% วิธีนี้จะช่วยหลีกเลี่ยงการเขียนรายการเพิ่มเติมที่อาจไม่ปรากฏในวิวพอร์ต หากใช้ scalingParams ที่ไม่ใช่มาตรฐาน (เช่น การปรับขนาดที่มากเกินไป) นักพัฒนาแอปจะปรับระยะขอบเพิ่มเติมได้โดยใช้ 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 เมื่อเป็นจริง (ค่าเริ่มต้น) จะช่วยให้มั่นใจได้ว่ารายการทั้งหมด รวมถึงรายการแรกและรายการสุดท้าย สามารถเลื่อนได้เพื่อให้มองเห็นได้ตรงกลางของ Viewport ของรายการ โปรดทราบว่าหากใช้การจัดกึ่งกลางอัตโนมัติ คุณอาจต้องตั้งค่าระยะห่างจากขอบด้านบนและด้านล่างของเนื้อหาเป็น 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 for 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 เพื่อให้วางแนวรอบกึ่งกลางของ Viewport ของ ScalingLazyList แทนที่จะเป็นจุดเริ่มต้นของ Viewport

    เพิ่มพร็อพเพอร์ตี้ใหม่ 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 การแก้ไขนี้เป็นข้อกำหนดเบื้องต้นในการอัปเดตทรัพยากร Dependency ใน 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 เป็น bodycontent และย้ายไปไว้ที่ส่วนท้ายของรายการพร็อพเพอร์ตี้เพื่อให้ระบุเป็น Lambda ต่อท้ายได้ นอกจากนี้ เรายังเปลี่ยนชื่อ 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 Navigation Material (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 ซึ่งเป็น Composable ของแอปพลิเคชันระดับบนสุดที่ให้โครงสร้างสำหรับการจัดการตำแหน่ง PositionIndicators (เช่น การเลื่อนหรือระดับเสียง) พื้นที่ที่ด้านบนของหน้าจอสำหรับแสดงเวลาและสถานะของแอปพลิเคชัน และยังรองรับ Vignette เพื่อเบลอขอบด้านบนและด้านล่างของหน้าจอสำหรับเนื้อหาที่เลื่อนได้ พื้นที่หลักของ Scaffold คือที่วางเนื้อหาของแอปพลิเคชัน (I5e0bf)
  • เพิ่มการใช้งาน TimeText สำหรับ Wear Compose (I5654c)

ไลบรารีการนำทาง Wear Compose

  • เราได้เพิ่มการเปิดตัวครั้งแรกของไลบรารีการนำทางของ Wear Compose ซึ่งช่วยให้การผสานรวมระหว่างไลบรารี Wear Compose และ Androidx Navigation เป็นไปได้ ซึ่งเป็นวิธีง่ายๆ ในการไปยังฟังก์ชัน @Composable ต่างๆ เป็นปลายทางในแอปพลิเคชัน

  • การเปิดตัวครั้งแรกนี้มีฟีเจอร์ต่อไปนี้

    • SwipeDismissableNavHost ที่ประกอบได้ซึ่งโฮสต์กราฟการนำทางและให้การนำทางย้อนกลับผ่านท่าทางสัมผัสด้วยการปัด
    • 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 จะรวมอยู่ในไลบรารีแยกต่างหากเพื่อให้แอปพลิเคชัน 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 ลงใน Enum 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 ซึ่งให้มุมมอง Fisheye โดยเนื้อหาในรายการจะลดขนาดลงและโปร่งใสขึ้นเมื่อเลื่อนไปที่ขอบของคอมโพเนนต์ (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)
  • เพิ่มการทดสอบชิปเพื่อครอบคลุมสีของเนื้อหาสำหรับ imageBackgroundChips (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 เป็นไลบรารีที่ใช้ Compose และ Kotlin ซึ่งรองรับ Material Design สำหรับ Wear ซึ่งเป็นส่วนขยายของ Material Design สำหรับอุปกรณ์ที่สวมใส่ได้ของ WearOS การเปิดตัวเวอร์ชันอัลฟ่าครั้งแรกนี้มีการใช้งานฟังก์ชันเบื้องต้นต่อไปนี้

  • ธีม Material - กำหนดค่าสี ตัวอักษร และรูปร่างอย่างสอดคล้องกันในคอมโพเนนต์ที่ใช้จากไลบรารีนี้
  • ชิป, CompactChip - ชิปมีรูปร่างเป็นรูปสนามกีฬาส่วนรูปแบบต่างๆ จะใช้เนื้อหาไอคอน ป้ายกำกับ และป้ายกำกับรอง
  • - ToggleChip, SplitToggleChip - ชิปประเภทพิเศษที่มีช่องสำหรับไอคอนสลับ 2 สถานะ เช่น ปุ่มตัวเลือกหรือช่องทำเครื่องหมาย นอกจากนี้ SplitToggleChip ยังมีพื้นที่ที่แตะได้ 2 ส่วน โดยส่วนหนึ่งคลิกได้และอีกส่วนหนึ่งสลับได้
  • ปุ่ม, 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) คุณกำลังใช้คอมโพเนนต์ที่เราไม่แนะนำให้ใช้ในอุปกรณ์ที่สวมใส่ได้