Compose Material 3
อัปเดตล่าสุด | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า |
---|---|---|---|---|
2 กรกฎาคม 2025 | 1.3.2 | - | - | 1.4.0-alpha17 |
โครงสร้าง
Compose คือการรวมรหัสกลุ่ม Maven 7 รายการภายใน androidx
แต่ละกลุ่ม
มีฟังก์ชันการทำงานย่อยที่กำหนดเป้าหมาย ซึ่งแต่ละกลุ่มมีชุดหมายเหตุประจำรุ่นของตัวเอง
ตารางนี้อธิบายกลุ่มและลิงก์ไปยังชุดหมายเหตุประจำรุ่นแต่ละชุด
กลุ่ม | คำอธิบาย |
---|---|
compose.animation | สร้างภาพเคลื่อนไหวในแอปพลิเคชัน Jetpack Compose เพื่อยกระดับประสบการณ์ของผู้ใช้ |
compose.compiler | แปลงฟังก์ชัน @Composable และเปิดใช้การเพิ่มประสิทธิภาพด้วยปลั๊กอินคอมไพเลอร์ Kotlin |
compose.foundation | เขียนแอปพลิเคชัน Jetpack Compose ด้วยองค์ประกอบพื้นฐานที่พร้อมใช้งาน และขยายรากฐานเพื่อสร้างชิ้นส่วนระบบการออกแบบของคุณเอง |
compose.material | สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design ที่พร้อมใช้งาน ซึ่งเป็นจุดแรกเข้าของ Compose ในระดับที่สูงขึ้น ออกแบบมาเพื่อจัดหาคอมโพเนนต์ที่ตรงกับคอมโพเนนต์ที่อธิบายไว้ที่ www.material.io |
compose.material3 | สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design 3 ซึ่งเป็นวิวัฒนาการขั้นถัดไปของ Material Design Material 3 มีการอัปเดตธีมและคอมโพเนนต์ รวมถึงฟีเจอร์การปรับเปลี่ยนในแบบของคุณของ Material You เช่น สีแบบเปลี่ยนอัตโนมัติ และออกแบบมาให้สอดคล้องกับสไตล์ภาพและ UI ของระบบ Android 12 ใหม่ |
compose.runtime | ส่วนประกอบพื้นฐานของรูปแบบการเขียนโปรแกรมและการจัดการสถานะของ Compose รวมถึงรันไทม์หลักสำหรับปลั๊กอินคอมไพเลอร์ Compose เพื่อกำหนดเป้าหมาย |
compose.ui | องค์ประกอบพื้นฐานของ Compose UI ที่จำเป็นต่อการโต้ตอบกับอุปกรณ์ ซึ่งรวมถึงเลย์เอาต์ การวาด และอินพุต |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ใน Compose คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มการอ้างอิงสำหรับอาร์ติแฟกต์ที่คุณต้องการในไฟล์ build.gradle
สำหรับแอปหรือโมดูลของคุณ
Groovy
dependencies { implementation "androidx.compose.material3:material3:1.3.2" implementation "androidx.compose.material3:material3-window-size-class:1.3.2" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha17" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.3.2") implementation("androidx.compose.material3:material3-window-size-class:1.3.2") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha17") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพาบิลด์
ความคิดเห็น
ความคิดเห็นของคุณจะช่วยให้ Jetpack ทำงานได้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของเครื่องมือติดตามปัญหา
Compose Material3 Common เวอร์ชัน 1.0
เวอร์ชัน 1.0.0-alpha01
17 เมษายน 2024
androidx.compose.material3:material3-common:1.0.0-alpha01
androidx.compose.material3:material3-common-android:1.0.0-alpha01
และ androidx.compose.material3:material3-common-desktop:1.0.0-alpha01
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
คอมโพเนนต์ที่ไม่มีธีมซึ่งใช้สร้างคอมโพเนนต์ Material Design ได้
- ชุดสีโทนเดียวกัน
- ไอคอน
- ขนาดเป้าหมายการสัมผัส
Compose Material3 Adaptive Navigation Suite เวอร์ชัน 1.0
เวอร์ชัน 1.0.0-alpha07
1 พฤษภาคม 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07
androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07
และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ทำให้ Navigation Suite API ไม่ใช่เวอร์ชันทดลอง (If62af)
การแก้ไขข้อบกพร่อง
- ใช้ภาพซ้อนสำหรับเนื้อหาโดยค่าเริ่มต้น (50266df)
เวอร์ชัน 1.0.0-alpha06
17 เมษายน 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06
androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06
และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
containerColor
และcontentColor
ไปยังNavigationSuiteScaffoldDefaults
(I64e3a, b/331993720) - เพิ่มฟังก์ชัน
itemColors
ลงในNavigationSuiteDefaults
(Idf719, b/328480012) - ทำให้
NavigationSuiteScope
ปิดผนึก (Iefa57)
เวอร์ชัน 1.0.0-alpha05
6 มีนาคม 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05
androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05
และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha05 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ทำให้
NavigationSuiteItemColors
ตัวสร้างเป็นแบบสาธารณะ (Ica83a, b/324886877)
เวอร์ชัน 1.0.0-alpha04
21 กุมภาพันธ์ 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04
androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04
และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
การอัปเดตการขึ้นต่อกัน
- อัปเดตทรัพยากร Dependency แบบปรับได้ของ Material3 เป็นเส้นทางโมดูลใหม่ (Ibc421)
- ย้ายข้อมูลไปใช้คลาสขนาดหน้าต่างเวอร์ชัน Window Manager (I3794d)
เวอร์ชัน 1.0.0-alpha03
7 กุมภาพันธ์ 2024
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03
androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03
และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- อัปเดตชื่อแพ็กเกจเป็น navigationsuite จาก navigation-suite (I7eff7)
- คอมโพเนนต์ Material3 ที่แสดง
MutableInteractionSource
ใน API ได้รับการอัปเดตให้แสดงMutableInteractionSource
ที่กำหนดค่าเป็น Null ได้ ซึ่งมีค่าเริ่มต้นเป็น Null ไม่มีการเปลี่ยนแปลงเชิงความหมายที่นี่ การส่งค่า null หมายความว่าคุณไม่ต้องการยกMutableInteractionSource
และระบบจะสร้างภายในคอมโพเนนต์หากจำเป็น การเปลี่ยนเป็น null จะทำให้คอมโพเนนต์บางอย่างไม่จัดสรรMutableInteractionSource
เลย และทำให้คอมโพเนนต์อื่นๆ สร้างอินสแตนซ์เมื่อจำเป็นเท่านั้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพในคอมโพเนนต์เหล่านี้ หากไม่ได้ใช้MutableInteractionSource
ที่ส่งไปยังคอมโพเนนต์เหล่านี้ เราขอแนะนำให้ส่งค่าเป็น null แทน นอกจากนี้ เราขอแนะนำให้คุณทำการเปลี่ยนแปลงที่คล้ายกันในคอมโพเนนต์ของคุณเองด้วย (I41abb, b/298048146)
เวอร์ชัน 1.0.0-alpha02
13 ธันวาคม 2023
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02
androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02
และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม
NavigationSuiteType
"ไม่มี" (If8cb1, b/313688598)
การแก้ไขข้อบกพร่อง
- แก้ไขคอมโพเนนต์การนำทางที่เติมทั้งหน้าจอเมื่อพื้นผิวรูทมี
modifier.fillMaxSize
(c9cf250, b/312664933)
เวอร์ชัน 1.0.0-alpha01
15 พฤศจิกายน 2023
androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
Compose Material3 Adaptive เวอร์ชัน 1.0
เวอร์ชัน 1.0.0-alpha06
7 กุมภาพันธ์ 2024
androidx.compose.material3:material3-adaptive:1.0.0-alpha06
androidx.compose.material3:material3-adaptive-android:1.0.0-alpha06
และ androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มตัวเลือกลักษณะการทำงานเพิ่มเติมสำหรับการ
ThreePaneScaffoldNavigator
นำทางย้อนกลับ (I858aa) - เพิ่มเนื้อหาปลายทางที่ไม่บังคับลงในประวัติการนำทาง (Ibd7e6)
เวอร์ชัน 1.0.0-alpha05
24 มกราคม 2024
androidx.compose.material3:material3-adaptive:1.0.0-alpha05
androidx.compose.material3:material3-adaptive-android:1.0.0-alpha05
และ androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- รองรับการรับรู้ประวัติในการนำทางโครงร่างและการคำนวณมูลค่า (I71d46)
เวอร์ชัน 1.0.0-alpha04
10 มกราคม 2024
androidx.compose.material3:material3-adaptive:1.0.0-alpha04
androidx.compose.material3:material3-adaptive-android:1.0.0-alpha04
และ androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับแบบขอบถึงขอบในโครงร่างของบานหน้าต่าง (I1b462)
การเปลี่ยนแปลง API
- ย้ายพร็อพเพอร์ตี้ขอบเขตบานพับในท่าทางไปยังรายการข้อมูลบานพับ (I24f90)
การแก้ไขข้อบกพร่อง
- แก้ไข
AnimatedPane
ไม่ได้สร้างใหม่ (c3f573d)
เวอร์ชัน 1.0.0-alpha03
13 ธันวาคม 2023
androidx.compose.material3:material3-adaptive:1.0.0-alpha03
androidx.compose.material3:material3-adaptive-android:1.0.0-alpha03
และ androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เปลี่ยนบทบาทของโครงร่างเป็นชื่อแทนของ
ThreePaneScaffoldRole
(I65bd1) - สร้างคลาสฐานสำหรับบทบาทโครงร่าง (I4784d)
- นำพารามิเตอร์ที่ไม่จำเป็นออกจากเนื้อหาของ
AnimatedPane
(Ibc73b) - เปลี่ยนชื่อ
collectWindowSizeAsState
และแสดงค่าดิบแทน (I480f4)
เวอร์ชัน 1.0.0-alpha02
29 พฤศจิกายน 2023
androidx.compose.material3:material3-adaptive:1.0.0-alpha02
androidx.compose.material3:material3-adaptive-android:1.0.0-alpha02
และ androidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02
ออกอากาศแล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
การแก้ไขข้อบกพร่อง
- ระบบจะไม่สลับบานหน้าต่างเมื่อไม่ได้ใช้
AnimatedPane
(d88f181)
เวอร์ชัน 1.0.0-alpha01
15 พฤศจิกายน 2023
androidx.compose.material3:material3-adaptive:1.0.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
API เงื่อนไขการปรับตัวของ Material3
API คำสั่งของโครงสร้างหน้าจอแบบปรับได้ Material3
API โครงสร้างบานหน้าต่างแบบปรับได้ Material3
- API พื้นฐานของโครงร่างแผง
Compose Material3 เวอร์ชัน 1.4
เวอร์ชัน 1.4.0-alpha17
2 กรกฎาคม 2025
androidx.compose.material3:material3-*:1.4.0-alpha17
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha17 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- อัปเดตภาพเคลื่อนไหวของกลุ่มปุ่มให้เคลื่อนไหวเป็น 75% ของภาพเคลื่อนไหวเมื่อคลิกแทนการกด (593942a, b/423596967)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ในบางกรณี รายการภาพสไลด์อาจมีขนาดเกินขนาดองค์ประกอบขนาดใหญ่ระหว่างการคำนวณเลย์เอาต์ ซึ่งทำให้วิดเจ็ตทั้งหมดถูกตัดออก (I1c3d7, b/397489534)
- แก้ไขการข้ามผ่าน
beforeContentPadding
เมื่อเลื่อนภาพสไลด์ที่มีออฟเซ็ตการเลื่อนเริ่มต้นและสิ้นสุดที่ทับซ้อนกัน (c3d5f3a, b/420618979) - อัปเดตลักษณะการทำงานที่เปิดใช้ของ
SwipeToDismiss
เพื่อสังเกตสถานะที่ชำระแล้วแทนสถานะปัจจุบัน คืนค่าลักษณะการทำงานที่มีอยู่ซึ่งจะปิดใช้ลักษณะการทำงานของ Anchor เมื่อคอมโพเนนต์อยู่ในสถานะที่ถูกปิดเท่านั้น (3844e07, b/425006844) - ตอนนี้คุณเปิดเมนูป๊อปอัปของ
ExposedDropdownMenu
ผ่านการป้อนข้อมูลด้วยแป้นพิมพ์ได้แล้ว นอกจากนี้ เรายังแก้ไขเมนูให้เข้าถึงได้ผ่านแป้นพิมพ์สำหรับรูปแบบที่แก้ไขได้แล้ว (46ead03)
เวอร์ชัน 1.4.0-alpha16
18 มิถุนายน 2025
androidx.compose.material3:material3-*:1.4.0-alpha16
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha16 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มคอมโพเนนต์ภาพสไลด์ฮีโร่ที่จัดกึ่งกลาง (I6f6d3)
การเปลี่ยนแปลง API
- ใช้แถบเครื่องมือแนวตั้งที่ลบล้าง XR (Ia1604)
- เพิ่มฟังก์ชันการเลื่อนแบบเป็นโปรแกรมลงใน
CarouselState
(I12f8e) - เพิ่ม
ComponentOverride
สำหรับModalWideNavigationRail
(I4f440) - เพิ่ม
ComponentOverride
สำหรับWideNavigationRail
(I6354f) - สร้าง
ComponentOverride
สำหรับHorizontalFloatingToolbar
(I51116) - สร้าง
ComponentOverride
สำหรับShortNavigationBar
(I30e24) - เราได้ทำเครื่องหมายว่าการอ้างอิง
SwipeToDismissBoxState
ถึงconfirmValueChange
เป็นการอ้างอิงที่เลิกใช้งานแล้ว ผู้ใช้ควรใช้การเรียกกลับของSwipeToDismissBox
APIonDismissed
แทน (Iee780) - เพิ่มพารามิเตอร์ userScrollEnabled ลงใน Composable ของ Carousel (I1d4d2)
- ตอนนี้คุณดู
currentItem
ของภาพสไลด์ได้จากCarouselState
แล้ว (Ie87e9)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่รูปร่างที่กำหนดเองใน FAB ซึ่งส่งไปยัง
FloatingToolbar
ไม่ได้ใช้เงาอย่างถูกต้อง (Icdcc9, b/423336922) - ตอนนี้แคโรเซลทั้งหมดจะใช้บทบาทเชิงความหมายของแคโรเซลโดยค่าเริ่มต้น (I7af12)
- แก้ไขการเคลื่อนไหวของนิ้วโป้งที่ไม่ถูกต้องเมื่ออัปเดตสถานะแถบเลื่อนผ่าน
LaunchedEffect
(Id9f31, b/302774166)
เวอร์ชัน 1.4.0-alpha15
20 พฤษภาคม 2025
androidx.compose.material3:material3-*:1.4.0-alpha15
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha15 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
MotionTheme.LocalMotionScheme
, องค์ประกอบในพื้นที่ ซึ่งจะช่วยให้เข้าถึงรูปแบบการเคลื่อนไหวของธีมจากCompositionLocalConsumerModifierNodes
ได้ด้วยcurrentValueOf(MotionTheme.LocalMotionScheme)
(I014b1) - ตอนนี้เลิกใช้งานตัวสร้าง
ColorScheme
ที่ไม่มีบทบาทสีคงที่แล้ว โปรดย้ายข้อมูลไปยังตัวสร้างที่มีบทบาทคงที่ (Iad0ee) - ตอนนี้คอมโพเนนต์ข้อความ M3 รองรับ
TextAutoSize
แล้ว (I7f524) - เพิ่ม API สำหรับสร้างตัวแปรขนาดปุ่มแยกและเพิ่มตัวอย่าง (Ice30b)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่
Snackbar
และFloatingActionButton
อยู่ในตำแหน่งที่ไม่ถูกต้องเมื่อเปิดใช้การแสดงผลแบบขอบจรดขอบ ตอนนี้ Scaffold ใช้การแทรกแนวนอนกับคอมโพเนนต์เหล่านี้ได้อย่างถูกต้องแล้ว (Ib7c30, b/244400727) - แก้ไข
BottomSheet
การเคลื่อนไหวจากขยายเต็มที่ไปเป็นขยายบางส่วน ตอนนี้BottomSheet
จะใช้เอฟเฟกต์ด่วนของMotionScheme
เมื่อซ่อนหรือยุบ และใช้เอฟเฟกต์เชิงพื้นที่เริ่มต้นเมื่อขยาย (Ifa46f, b/416063171) ColorScheme
constructor ที่ไม่มีบทบาทคอนเทนเนอร์พื้นผิวได้รับการทำเครื่องหมายว่าซ่อนอยู่และไม่แนะนำให้ใช้แล้ว (Ia7237)- นำข้อกำหนด
CircularWavyProgressIndicator
Size.minDimension > 0
ออก ซึ่งเคยทำให้เกิดข้อยกเว้น เพื่อให้มีความยืดหยุ่นมากขึ้น (Ic9418, b/377531195) - ตอนนี้ไฮเปอร์ลิงก์ใน
Text(AnnotatedString)
มีการจัดรูปแบบ Material โดยค่าเริ่มต้นแล้ว (I78288, b/339843816) - แก้ไขปัญหาที่ฟังก์ชัน
toShape()
ในRoundedPolygon
แคชเส้นทางและทำให้เกิดปัญหาเมื่อมีการเรียกcreateOutline
หลายครั้งด้วยขนาดที่แตกต่างกัน (I4026d)
เวอร์ชัน 1.4.0-alpha14
7 พฤษภาคม 2025
androidx.compose.material3:material3-*:1.4.0-alpha14
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha14 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
AppBarColumn
ใหม่ที่ใช้ได้ในลักษณะเดียวกับAppBarRow
แต่ใช้กับเนื้อหาที่จัดวางในคอลัมน์ (Iaf6bd) - เพิ่มรายการสูงสุดใน
AppBarRow
ซึ่งจำเป็นต่อการใช้ข้อกำหนดของ Material อย่างถูกต้องสำหรับแถบแอปด้านบน (I92ce4) - เพิ่มเมธอดใน
TooltipScope
เพื่อรับlayoutCoordinates
ของ Anchor เลิกใช้งานเมธอดdrawCaret
เนื่องจากนักพัฒนาแอปสามารถใช้วิธีการใหม่นี้เพื่อรับขอบเขตของจุดยึดlayoutCoordinates
และสร้างรูปร่างที่เหมาะสมซึ่งมีเครื่องหมายแคร์เร็ต (Ia2e12, b/329470609) - เพิ่มการรองรับ
java.time
สำหรับเครื่องมือเลือกวันที่: เปิดตัวการโอเวอร์โหลดrememberDatePickerState/rememberDateRangePickerState
ที่ยอมรับออบเจ็กต์ java.time (เช่นLocalDate
เริ่มต้นYearMonth
) นอกจากนี้ยังเพิ่มฟังก์ชันส่วนขยายในออบเจ็กต์สถานะเพื่อรับ/ตั้งค่าโดยใช้ประเภทต่างๆ เช่นLocalDate
และYearMonth
ต้องใช้ API 26 ขึ้นไปหรือ Desugaring (I70f29, b/266202516, b/281859606) - เพิ่ม
CenteredTrack
ที่ประกอบได้เพื่อให้ใช้แถบเลื่อนกับแทร็กที่เริ่มจากตรงกลางได้ (I5b1d6)
การแก้ไขข้อบกพร่อง
- ปรับปรุงประสิทธิภาพของตัวบ่งชี้ความคืบหน้าแบบหยัก: ตอนนี้ประเภทเชิงเส้นโหลดเร็วขึ้นประมาณ 8.5% โดยมีการจัดสรรน้อยลงประมาณ 11% ส่วนประเภทวงกลมมีความเร็วเพิ่มขึ้นอย่างมากประมาณ 47% และมีการจัดสรรลดลงประมาณ 39% (I595d8)
เวอร์ชัน 1.4.0-alpha13
23 เมษายน 2025
androidx.compose.material3:material3-*:1.4.0-alpha13
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha13 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
isAppearanceLightStatusBars
และisAppearanceLightNavigationBars
ได้รับการนำกลับมาใช้ในModalBottomSheetProperties
อีกครั้งในฐานะพารามิเตอร์สำหรับ Android เท่านั้น (Id4bc0)- เพิ่ม
AppBarRow
ที่ประกอบได้ซึ่งจัดการรายการที่ล้นออกมานอกขอบเขต (I742bd) - อัปเดต API
DatePicker
และDateRangePicker
สำหรับการขอโฟกัสเมื่อเปลี่ยนเป็นโหมดป้อนวันที่ เราได้แทนที่requestFocus
พารามิเตอร์บูลีนด้วยfocusRequester
พารามิเตอร์ที่ไม่บังคับซึ่งใช้FocusRequester
(I14b69) - นำแหล่งที่มาของตัวแก้ไขและการโต้ตอบออกจากรายการที่คลิกได้และสลับได้เริ่มต้น ให้ใช้เป็นรายละเอียดการใช้งานแทน (I95ed6)
- อัปเดต
ButtonGroup
ให้แสดงในเมนูแบบเลื่อนลงเมื่อมีปุ่มมากเกินกว่าจะแสดงบนหน้าจอ (I7b88b)
การแก้ไขข้อบกพร่อง
- ตอนนี้ Bottomsheet จะใช้ Inset ด้านบนเมื่อมีขนาดเล็กกว่าออฟเซ็ตปัจจุบัน ซึ่งจะช่วยให้ผู้ใช้ระบุระยะขอบด้านบนสำหรับการทำงานที่ขยายได้ ตอนนี้
BottomSheetDefaults.windowInsets
มีWindowInsets.safeDrawing.Top
แล้ว (I0ab67, b/321877275, b/336962418, b/342093067) - เปิดใช้ภาพเคลื่อนไหวเข้า/ออก (จาง/เลื่อน) สำหรับไอคอน/อวาตาร์นำหน้าและไอคอนต่อท้ายของชิปเมื่อมีการเพิ่มหรือนำออก ซึ่งส่วนใหญ่จะมีประโยชน์ต่อชิปที่เลือกได้ (ตัวกรอง อินพุต) แต่ก็ใช้ได้โดยทั่วไป (I9af21)
- แก้ไขลักษณะการทำงานของแถบเลื่อน RTL ที่ไม่ถูกต้องซึ่งเกิดจาก
LookaheadScope
(Ieb152, b/408118041) - แก้ไขข้อขัดข้องที่ด้านล่าง
AppBar
ซึ่งเกี่ยวข้องกับการเลื่อนด้วย UI ของระบบที่ซ่อนอยู่ (Ic6140, b/405996228)
เวอร์ชัน 1.4.0-alpha12
9 เมษายน 2025
androidx.compose.material3:material3-*:1.4.0-alpha12
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha12 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- นำพารามิเตอร์เฉพาะของ Android ออกจาก
ModalBottomSheetProperties
(Iab97f, b/362539765) - เปิดตัวฟังก์ชันการโอเวอร์โหลดสำหรับค่าเริ่มต้นของขนาดแฮนเดิลลาก (I0ed0d)
- เพิ่มฟังก์ชัน
NavigationSuiteScaffold
และNavigationSuiteScaffoldLayout
ใหม่เพื่อรองรับเลย์เอาต์ประเภทใหม่ และเพิ่มการรองรับเนื้อหาการกระทำหลักที่ไม่บังคับ (Ib262a, b/353144478) - เลิกใช้งาน
Modifier.weight
โดยใช้พารามิเตอร์การแสดงโฆษณาที่เรียกใช้โดย Google ในButtonGroup
การเพิ่มเวอร์ชันที่ไม่มีการแสดงโฆษณา (Id32bb) - เปลี่ยนชื่อค่าเริ่มต้นของคอมโพเนนต์
xSmall-
และxLarge-
IconButton เพื่อสะกดextra
(Ib6e0f) - เพิ่มฟังก์ชัน
NavigationSuite
,NavigationSuiteItem
และNavigationSuiteColors
ใหม่เพื่อรองรับเลย์เอาต์ประเภทใหม่ (I203d6) - เพิ่มฟังก์ชันใหม่
NavigationSuiteTypes
และเพิ่มฟังก์ชันใหม่navigationSuiteType
ที่มีตัวเลือกเลย์เอาต์เหล่านั้น (If68f9)
การแก้ไขข้อบกพร่อง
ColorScheme.contentColorFor
ตอนนี้จะแมปsurfaceDim
กับonSurface
(I8891a)- อัปเดตการติดตั้งใช้งาน
DateInputTextField
เพื่อแก้ไขปัญหาที่ช่องป้อนข้อมูลไม่แสดงวันที่ที่ตั้งค่าแบบเป็นโปรแกรม (I6c8d1, b/401143451) - แก้ไขลำดับโฟกัสของ TalkBack สำหรับแถบนำทางและแถบนำทางแบบกว้าง (I6cf6f, b/407048224)
เวอร์ชัน 1.4.0-alpha11
26 มีนาคม 2025
androidx.compose.material3:material3-*:1.4.0-alpha11
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha11 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- อัปเดตการใช้อักษรตัวพิมพ์สำหรับพร็อพเพอร์ตี้ที่ใช้ร่วมกันได้ในออบเจ็กต์เริ่มต้นสำหรับปุ่มและปุ่มเปิด/ปิด เพิ่มวิธีการใน
ToggleButtonDefaults
และButtonDefaults
สำหรับระยะห่างภายใน รูปร่าง ขนาดไอคอน ระยะห่างไอคอน และรูปแบบข้อความของเนื้อหาแนะนำ ทั้งนี้ขึ้นอยู่กับความสูงของคอนเทนเนอร์ (Iea69e) - นำฟังก์ชันและค่าคงที่ทดลองที่เลิกใช้งานแล้วออกจาก
FloatingToolbar
(I8f339) - ตอนนี้คอมโพเนนต์การยกระดับใช้ส่วนติดต่อร่วมกัน รวมถึงมีตัวสร้างและพร็อพเพอร์ตี้สาธารณะ (Ibb172)
- เพิ่มตัวแก้ไข
animateWidth
ในButtonGroupScope
ที่จะต้องใช้กับองค์ประกอบย่อยของกลุ่มปุ่มเพื่อเคลื่อนไหวองค์ประกอบย่อยอย่างถูกต้อง (Ia3bb6)
การแก้ไขข้อบกพร่อง
- แก้ไขการเว้นวรรคของแถบเครื่องมือลอยเพื่อให้มั่นใจว่าภาพจะสมดุลในระหว่างการยุบ และปรับปรุงความยืดหยุ่นสำหรับเนื้อหาขนาดใหญ่ (I06c00)
เวอร์ชัน 1.4.0-alpha10
12 มีนาคม 2025
androidx.compose.material3:material3-*:1.4.0-alpha10
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha10 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
TabRowDefaults.tabIndicatorOffset
เลิกใช้งานแล้วเพื่อใช้TabIndicatorScope.tabIndicatorOffset
แทน (Ib36b3)- แก้ไขการสะกดผิดสำหรับการเว้นวรรคเนื้อหาขนาดเล็กในค่าเริ่มต้นของปุ่ม (I19bfe)
- เราเลิกใช้งาน
TabRow
และScrollableTabRow
แล้วเพื่อเปลี่ยนไปใช้ตัวแปรหลักและรองของแต่ละรายการแทน แถวแท็บหลักและแท็บรองมีประสิทธิภาพมากขึ้นและเป็นไปตามข้อกำหนดอย่างแม่นยำ (I918e2) - เพิ่ม
rememberSliderState
และrememberRangeSliderState
แล้ว (I8e384) - เพิ่ม
shouldAutoSnap
ในSliderState
เพื่อควบคุมกลไกการสแนปอัตโนมัติ การปิดใช้กลไกนี้อาจมีประโยชน์สำหรับการเคลื่อนไหวที่กำหนดเอง (I07745) - ตอนนี้ความกว้างขั้นต่ำของแท็บในแถบแท็บที่เลื่อนได้เป็นพารามิเตอร์แล้ว ตัวแปรแถวแท็บหลักและแท็บรองไม่ใช่เวอร์ชันทดลองอีกต่อไป (If6f15, b/226665301)
- ทำให้ชั้นเรียน
ExitAlwaysFloatingToolbarScrollBehavior
เป็นแบบสาธารณะเพื่อให้สร้างได้โดยไม่ต้องเรียบเรียง (Ibf31c)
เวอร์ชัน 1.4.0-alpha09
26 กุมภาพันธ์ 2025
androidx.compose.material3:material3-*:1.4.0-alpha09
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha09 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เปลี่ยนชื่อฟิลด์การตั้งค่าของ
DragHandle
ในสถานะเริ่มต้น แยกสถานะที่กดและลาก และทำให้ขนาดเริ่มต้นเป็นแบบสาธารณะ (I787b9) - การอัปเดต
TowRowsTopAppBar
API นำexpanded
พารามิเตอร์ Lambda ออก และเพิ่มพารามิเตอร์แยกต่างหากสำหรับความสูงที่ขยายและยุบ (Idd677, b/306697446, b/229134133, b/268068946)
การแก้ไขข้อบกพร่อง
- ตอนนี้แถบแอปด้านล่างจะสังเกตบริการการสำรวจด้วยการสัมผัส (เช่น
TalkBack
) และแสดงให้เห็นทุกครั้งที่เปิดใช้บริการ (I4b34d)
เวอร์ชัน 1.4.0-alpha08
12 กุมภาพันธ์ 2025
androidx.compose.material3:material3-*:1.4.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha08 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
เพิ่ม
TimePickerDialog
API ที่ใช้กับTimePicker
,TimeInput
หรือมีเวอร์ชันที่สลับได้ (Id2d83)API แถบค้นหาใหม่
- ตอนนี้แถบค้นหาที่ยุบและ "มุมมอง" การค้นหาที่ขยายจะกลายเป็น Composable ที่แยกกัน
SearchBar
แสดงแถบค้นหาในสถานะที่ยุบอยู่ExpandedFullScreenSearchBar
และExpandedDockedSearchBar
แสดงแถบค้นหาในสถานะขยาย ซึ่งจะเปิดในหน้าต่างใหม่SearchBarState
เพื่อควบคุมสถานะของแถบค้นหาTopSearchBar
เพื่อเพิ่มการจัดการระยะขอบและการเลื่อน- การโอเวอร์โหลดใหม่ของ
InputField
ซึ่งใช้SearchBarState
(Ie0723, b/261496232, b/283311462, b/350916229, b/352872248)
การเปลี่ยนแปลง API
- รองรับการเปลี่ยนรูปร่างมุมของปุ่มไอคอนเมื่อกด (I21843)
- API ของช่องข้อความตกแต่ง/กล่องตกแต่งไม่ใช่แบบทดลองใช้อีกต่อไป (I31d95)
- เพิ่มตัวอย่างและค่าเริ่มต้นสำหรับรูปแบบที่เชื่อมต่อสำหรับ
ButtonGroup
(I5c8ce) - ทำให้พารามิเตอร์สถานะเป็นพารามิเตอร์สุดท้ายใน
NavigationSuiteScaffold
และNavigationSuiteScaffoldLayout
(I9cc7b)
การแก้ไขข้อบกพร่อง
- เพิ่มการดำเนินการเพื่อการช่วยเหลือพิเศษที่กำหนดเองลงใน
FloatingToolbars
เพื่อให้บริการเพื่อการช่วยเหลือพิเศษสามารถขยายหรือยุบรูปแบบFloatingToolbar
ทั้งหมดได้แล้ว เวอร์ชันที่มี FAB จะใช้กับ FAB ส่วนเวอร์ชันที่ไม่มี FAB จะใช้กับเนื้อหาหลัก (I26420) FloatingToolbars
ตอนนี้ให้สังเกตบริการสำรวจด้วยการสัมผัส (เช่น TalkBack) และขยายแถบเครื่องมือให้มองเห็นได้ทุกครั้งที่บริการเปิดอยู่ (I02172)- แก้ไขข้อขัดข้องที่สัญญาณบอกสถานะความคืบหน้าและสัญญาณบอกสถานะการโหลดในกรณีที่มีการส่ง
Float.NaN
เป็นความคืบหน้า (I4fa96, b/352364576)
เวอร์ชัน 1.4.0-alpha07
29 มกราคม 2025
androidx.compose.material3:material3-*:1.4.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha07 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มความยืดหยุ่นในการปรับแต่งลักษณะที่ปรากฏของช่องทําเครื่องหมายด้วย API ใหม่ API นี้มีพารามิเตอร์ Stroke ที่ช่วยให้ควบคุมวิธีแสดงผลเครื่องหมายถูกและเส้นขอบช่องทําเครื่องหมายได้มากขึ้น (I65a88)
- เพิ่ม
TwoRowsTopAppBar
API ซึ่งเป็นทางเลือกที่ปรับแต่งได้มากกว่าสำหรับแถบแอปขนาดกลางและขนาดใหญ่เพื่อสร้างแถบแอปด้านบนแบบ 2 แถว ตอนนี้ นักพัฒนาแอปสามารถควบคุมเนื้อหาของชื่อและคำบรรยายแทนเสียงได้ทั้งในสถานะยุบและขยาย โดยปรับความสูงได้สำหรับแต่ละสถานะ (I0be3c, b/306697446, b/229134133, b/268068946)
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
BottomAppBar
รูปแบบการทดสอบเป็นFlexibleBottomAppBar
เพื่อให้ควบคุมการจัดเรียงและความสูงของเนื้อหาได้มากขึ้น (Iaa448) - อัปเดตการตั้งชื่อพร็อพเพอร์ตี้ในออบเจ็กต์เริ่มต้นของกลุ่มปุ่มเป็น
CapitalCase
อัปเดตชื่อของanimateFraction
ให้แม่นยำยิ่งขึ้นตามลักษณะการทำงานที่แสดง (I545cd) - เพิ่มการโอเวอร์โหลดสำหรับปุ่มทั่วไปที่อนุญาตให้ใช้รูปร่างเคลื่อนไหวเมื่อมีการโต้ตอบด้วยการกด เพิ่มรูปร่างปุ่มที่แคชแล้ว (I5ec20)
- ตอนนี้คุณควบคุมวิธีที่
FloatingToolbar
ที่มี FAB ตอบสนองต่อการเลื่อนได้โดยระบุFloatingToolbarScrollBehavior
สำหรับแถบเครื่องมือที่วางไว้ตามขอบตรงกลาง (เช่น ตรงกลางด้านบนหรือด้านล่าง) เราขอแนะนำให้ใช้ลักษณะการเลื่อนเพื่อซ่อนทั้งคอมโพเนนต์เมื่อเลื่อนเพื่อให้ดูสะอาดตามากขึ้น นอกจากนี้ ยังช่วยป้องกันไม่ให้ FAB ไม่อยู่ตรงกลาง ซึ่งอาจเกิดขึ้นเมื่อใช้ Flagexpanded
สำหรับการยุบ (I33f67) - อัปเดต
TopAppBar
API เวอร์ชันทดลองให้ใช้Alignment.Horizontal
แทนTopAppBarTitleAlignment
ที่กำหนดเองเมื่อตั้งค่าการจัดแนวของชื่อและคำบรรยาย (I70ca2) SliderState#onValueChange
ตอนนี้เป็นแบบสาธารณะแล้วเพื่อให้ผู้ใช้ควบคุมได้มากขึ้น (I104eb)- เปิดตัว
NavigationSuiteScaffoldState
เพื่ออนุญาตให้ใช้ภาพเคลื่อนไหวของคอมโพเนนต์การนำทาง นอกจากนี้ยังแนะนำการโอเวอร์โหลดของNavigationSuiteScaffold
และNavigationSuiteScaffoldLayout
ที่มีพารามิเตอร์สถานะ (I6a8c9, b/328674235)
การแก้ไขข้อบกพร่อง
- ย้ายชั้นเรียน
IconButtonColors
และIconToggleButtonColors
จากIconButtonDefaults.kt
กลับไปที่IconButton.kt
(I3c233)
การมีส่วนร่วมภายนอก
SliderState#isDragging
เป็นแบบสาธารณะแล้ว (I8458a)
เวอร์ชัน 1.4.0-alpha06
15 มกราคม 2025
androidx.compose.material3:material3-*:1.4.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงพฤติกรรม
- เพิ่ม
displayCutout
ลงในกลุ่มการแทรกที่คอมโพเนนต์ Material พิจารณาโดยค่าเริ่มต้น เพื่อหลีกเลี่ยงไม่ให้เนื้อหาซ้อนทับกับรอยบากของจอแสดงผล นี่เป็นการเปลี่ยนแปลงลักษณะการทำงานที่จะส่งผลต่อลักษณะการทำงานของคอมโพเนนต์ที่รับรู้ขอบรอบรอยบากของจอแสดงผล ซึ่งรวมถึงค่าเริ่มต้นของพารามิเตอร์WindowInsets
สำหรับคอมโพเนนต์ Material 3 ที่รับรู้ขอบ และค่าWindowInsets
ที่ระบุในออบเจ็กต์ค่าเริ่มต้นของคอมโพเนนต์สำหรับทั้ง Material 2 และ Material 3 หากการเปลี่ยนแปลงนี้ทำให้เกิดลักษณะการทำงานที่ไม่พึงประสงค์ ให้ระบุพารามิเตอร์WindowInsets
ด้วยตนเองในระดับคอมโพเนนต์ (I43ee9, b/362508045)
การเปลี่ยนแปลง API
- การอัปเดต
TopAppBar
API เปลี่ยนชื่อแถบแอปด้านบนขนาดกลางและขนาดใหญ่พร้อมคำบรรยายเป็น*FlexibleTopAppBar
รวมรูปแบบสีไว้ในTopAppBarDefault.topAppBarColors()
ฟังก์ชันเดียว และเพิ่มsubtitle
พารามิเตอร์สีที่จะใช้กับ Composable ของคำบรรยายแทนเสียงที่ระบุ (I41b65) - นำ
WideNavigationRailArrangement
API ออกเพื่อใช้Arrangement.Vertical
(Id0341) - เพิ่ม
VerticalSlider @Composable
ใหม่ (I2bfba) - เพิ่มแทร็กใหม่
@Composable
ที่ช่วยให้ระบุมุมแทร็กภายนอกและไอคอนแทร็กที่กำหนดเองได้ (I436a4) - อัปเดต API แถบเครื่องมือลอยให้ใช้ออบเจ็กต์
FloatingToolbarColors
แทนสีคอนเทนเนอร์เดียว (I9a054) - เพิ่มและใช้คำอธิบายประกอบเวอร์ชันทดลองใหม่
ExperimentalMaterial3ComponentOverrideApi
(Ia1eaf) Modifier.indicatorLine
จะมีรูปร่างสำหรับช่องข้อความเพื่อจัดการการตัด (I8c5f3, b/380704151)- เปลี่ยนชื่อฟังก์ชัน
FloatingAppBar
เวอร์ชันทดลองเป็นFloatingToolbar
(I1dbf8) - เพิ่ม
floatingToolbarVerticalNestedScroll
ใหม่ที่แนบไปกับคอนเทนเนอร์ที่เลื่อนได้เพื่ออัปเดตสถานะการขยายแถบเครื่องมือลอยตามการเลื่อนที่ข้ามเกณฑ์ (I6d65f) - ขอแนะนำ API ใหม่สำหรับการสร้างแถบเครื่องมือลอยที่มีปุ่มการทำงานแบบลอย (FAB) แนบอยู่ API มีตัวเลือกการปรับแต่งที่ยืดหยุ่น ซึ่งช่วยให้คุณจัดเรียงแถบเครื่องมือในแนวนอนหรือแนวตั้ง และวาง FAB ที่จุดเริ่มต้นหรือจุดสิ้นสุดของแถบเครื่องมือได้ (I9e350)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาการช่วยเหลือพิเศษของ Snackbar ที่ทำให้ Snackbar ประกาศตัวเองเมื่อปิดเมื่อ
TalkBack
เปิดอยู่ (/I9db53)
การมีส่วนร่วมภายนอก
BasicTooltip
ที่ใช้กันทั่วไปใน Foundation และBasicTooltip/Tooltip
ใน Material3 (Ifc2e6)
เวอร์ชัน 1.4.0-alpha05
12 ธันวาคม 2024
androidx.compose.material3:material3-*:1.4.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- แทนที่ประเภทใน
WideNavigationRailState.current/target
ค่าสำหรับ enum เพื่อให้อ่านได้ง่ายขึ้น (I2d6ab) SplitButton
เปลี่ยน Shape API จากคลาสข้อมูลเป็นคลาสเพื่อความเข้ากันได้แบบไบนารี (I53812)- เพิ่ม API เคล็ดลับเครื่องมือที่มีพารามิเตอร์
onDismissRequest
เพื่อให้ผู้สร้างตัดสินใจได้ว่าจะเกิดอะไรขึ้นเมื่อผู้ใช้คลิกนอกเคล็ดลับเครื่องมือ เลิกใช้งาน API เก่าที่ไม่มีพารามิเตอร์ใหม่นี้ (I99aef) - เปลี่ยนการตั้งชื่อของ
opticalCentering
เป็นhorizontalCenterOptically
การทำให้ตัวแก้ไขเป็นภายใน แทนที่พารามิเตอร์การเพิ่มพื้นที่ด้วยออฟเซ็ตเริ่มต้นและสิ้นสุดสูงสุด (I0b904) - เปลี่ยน
WideNavigationRailState
ให้มีค่าปัจจุบัน/เป้าหมาย นำ Enum ออกเพื่อใช้บูลีน (Idfa29, b/356039090) - เพิ่ม
NavigationBarItemComponentOverride
(I3a06a)
การแก้ไขข้อบกพร่อง
- แก้ไขลักษณะการทำงานของแถบแอปด้านบนและด้านล่างเพื่อให้เปลี่ยนสีได้อย่างน่าเชื่อถือเมื่อเลื่อนเนื้อหาจนสุด (Idc4e8, b/293665988)
- ฟังก์ชันลักษณะการเลื่อนสำหรับแถบแอปด้านบนและด้านล่างจะแสดงลักษณะที่จดจำไว้เพื่อให้ทำงานได้ดีขึ้นในการเขียนคอมโพสซ้ำ (I0fdbe, b/207957336)
- ตอนนี้ระบบจะใช้พารามิเตอร์ตัวแก้ไขหลังจากตัวแก้ไขภายใน เช่น ลักษณะการลากและความหมาย แทนที่จะใช้ก่อน ซึ่งจะส่งผลต่อลำดับการใช้ตัวแก้ไข (I8d83f)
- Bottom Sheet ที่ขยายแล้วจะยังคงขยายอยู่เมื่อมีการเปลี่ยนขนาด (I2870b, b/324934884)
- กำหนดเส้นทางสถานะและค่าสถานะแถบนำทางสำหรับพร็อพเพอร์ตี้หน้าต่างอย่างถูกต้อง (Ie674d, b/362539765)
- ย้ายพารามิเตอร์ตัวแก้ไขไปยังรูทของ Scaffold ตามที่ระบุไว้ในเอกสาร ซึ่งจะช่วยให้การติดตั้งใช้งานสอดคล้องกับ M2 (I0235e, b/372311595)
การมีส่วนร่วมภายนอก
- ฟังก์ชัน
DatePickerDialog
ที่ใช้ร่วมกัน (I7dced)
เวอร์ชัน 1.4.0-alpha04
13 พฤศจิกายน 2024
androidx.compose.material3:material3-*:1.4.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงลักษณะการทำงาน
- เปลี่ยนกลับการเปลี่ยนแปลงสีที่เปิดตัวใน aosp/3212478 เป็น
iconButtonColors
,iconToggleButtonColors
,outlinedIconButtonColors
,outlinedIconToggleButtonColors
และoutlinedIconToggleButtonBorder
ย้ายลักษณะการทำงานที่กลับมาใช้ใหม่ไปยังชุดฟังก์ชันใหม่ที่ชื่อiconButtonVibrantColors
และอื่นๆ เพื่อเน้นสีคอนทราสต์สูงที่แสดงผล (Iffd8d)
ฟีเจอร์ใหม่
- ขอแนะนำคอมโพเนนต์
VerticalDragHandle
(I6c770)
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
DismissibleModalWideNavigationRailDefaults
เป็นModalWideNavigationRailDefaults
(I8e877) - เพิ่ม
NavigationBarComponentOverrides
(I8a3f3) - เพิ่ม
NavigationRailComponentOverride
(I83e13) - แนะนำ
WideNavigationRailState
เพื่อจัดการการยุบ/ขยายแถบ ให้ModalWideNavigationRail
ปิดได้ และลบDismissibleModalWideNavigationRail
(I88568) - เพิ่มค่าเริ่มต้นของขนาด xSmall, ปานกลาง, ใหญ่ และ xLarge ลงในค่าเริ่มต้นของปุ่มสลับ (Ie95d1)
- เพิ่มค่าเริ่มต้นของขนาด xSmall, medium, large และ xLarge ลงในค่าเริ่มต้นของปุ่ม (If8b6d)
การแก้ไขข้อบกพร่อง
- อัปเดตสีไอคอนต่อท้ายของชิปตัวกรองจากสีหลักเป็น
OnSurfaceContainer
ตามข้อกำหนด และอัปเดตสีเส้นขอบของชิปทั้งหมดจากสีโครงร่างเป็นสีโครงร่างตัวแปรตามข้อกำหนด (I68bd4)
เวอร์ชัน 1.4.0-alpha03
30 ตุลาคม 2024
androidx.compose.material3:material3-*:1.4.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
SheetState
constructor ที่มีความหนาแน่นถูกเลิกใช้งานแล้วเพื่อใช้เกณฑ์ตำแหน่งและความเร็วแทน (Ifd16e)- เพิ่ม
rememberTooltipPositionProvider
ที่มีตรรกะการวางตำแหน่งที่อัปเดตแล้ว เลิกใช้งานrememberPlainTooltipPositionProvider
และrememberRichTooltipPositionProvider
แล้ว (Ie66e2) ModalBottomSheetProperties
เพิ่มเติมช่วยให้ปรับแต่งสีของแถบสถานะและแถบนำทางได้ โดยค่าเริ่มต้นแล้ว องค์ประกอบเหล่านี้จะอัปเดตตามสีของเนื้อหาแทนที่จะเป็นสถานะธีมมืดของระบบ (Ib874e, b/362539765)- ปรับปรุงประสบการณ์การป้อนข้อมูลสำหรับเครื่องมือเลือกวันที่: เมื่ออยู่ในโหมดป้อนข้อมูล ระบบจะโฟกัสช่องข้อความวันที่เพื่อให้ป้อนข้อความได้ทันที การเปลี่ยนแปลงนี้จะเพิ่มพารามิเตอร์
requestFocus
ลงในDatePicker
และDateRangePicker
คุณอาจป้องกันโฟกัสได้โดยส่งfalse
(I12d09, b/286399710, b/340102743) - แคชค่าเริ่มต้นของรูปร่างลงในออบเจ็กต์รูปร่าง การตั้งค่าเริ่มต้นของรูปร่าง
@Composable
สำหรับปุ่มเปิด/ปิด ยุบรูปร่างเป็นรูปร่างเดียวโดยค่าเริ่มต้นเนื่องจากตัวแปรชี้ไปยังไฟล์โทเค็นเดียวกัน (Iaa014)
การแก้ไขข้อบกพร่อง
- เพิ่มประสิทธิภาพลักษณะการทำงานของ Scaffold
contentPadding
เพื่อหลีกเลี่ยงการจัดองค์ประกอบเนื้อหาของ Body ใหม่ทุกครั้งเมื่อcontentPadding
มีการเปลี่ยนแปลง (I8c8e2, b/373904168) - เปลี่ยนชื่อ
TextFieldLabelScope
progress
เป็นlabelMinimizedProgress
แล้ว - เปลี่ยนชื่อ
TextFieldLabelPosition
Default
เป็นAttached
แล้ว นำสมาชิกของอินเทอร์เฟซออกแล้ว (If75c6) - แก้ไขปัญหาเกี่ยวกับ
DatePicker
ในโหมดป้อนข้อมูลที่ข้อผิดพลาดในการตรวจสอบอาจทำให้ความสูงของคอมโพเนนต์เปลี่ยนแปลง (I2e229, b/280462363) - ทำให้แถบเลื่อนของวัสดุเปลี่ยนค่าเมื่อกดปุ่มควบคุม (I1c442)
เวอร์ชัน 1.4.0-alpha02
16 ตุลาคม 2024
androidx.compose.material3:material3-*:1.4.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha02 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อัปเดตเครื่องมือเลือกวันที่เพื่อให้แน่ใจว่ามีการใช้ภาษาอย่างสอดคล้องกันตลอดทั้ง
DatePicker
และDateRangePicker
เมื่อตั้งค่าภาษาโดยตรงผ่านDatePickerState
หรือDateRangePickerState
โปรดทราบว่าเมื่อตั้งค่าภาษาโดยตรงเป็นสถานะ คุณจะต้องตรวจสอบว่าข้อความชื่อและข้อความบรรทัดแรกได้รับการแปลตามนั้น เนื่องจากระบบจะยังคงใช้ข้อความเริ่มต้นตามภาษาเริ่มต้นของแพลตฟอร์ม (I37073, b/326490763, b/321657276) SheetState.isAnimationRunning
แสดงแล้ว (I9a3d7)DatePickerColors
จะมีลำดับความสำคัญเหนือกว่าสีที่ขัดแย้งกันซึ่งกำหนดไว้ในรูปแบบข้อความของ Typography ของธีมอย่างถูกต้อง โปรดทราบว่าการอัปเดตนี้จะปรับตำแหน่งของพารามิเตอร์color
ในฟังก์ชันเครื่องมือเลือกวันที่ และเพิ่มพารามิเตอร์contentColor
สำหรับปรับแต่งสีข้อความส่วนหัวและชื่อ (I30d03, b/347031394)- เปลี่ยนชื่อ
SplitButton
เป็นSplitButtonLayout
และนำ API ของผลิตภัณฑ์ย่อยตามสีSplitButton
ออก โดยจะใช้ผลิตภัณฑ์ย่อยโดยการนำผลิตภัณฑ์ย่อยของปุ่มที่SplitButtonDefaults
ให้มาใช้ซ้ำ (I44c36) ModalBottomSheet
ตอนนี้มีพารามิเตอร์sheetGestureEnabled
(I856cb, b/288211587)- เปลี่ยนชื่อ
standardMotionScheme
และexpressiveMotionScheme
เป็น "มาตรฐาน" และ "สื่ออารมณ์" ตอนนี้คุณเข้าถึงฟังก์ชันทั้ง 2 ได้ผ่านออบเจ็กต์MotionScheme
คู่โดยการเรียกใช้MotionScheme.standard()
และMotionScheme.expressive()
(Iceccf) - เพิ่มพารามิเตอร์
maxWidth
ลงในเคล็ดลับเครื่องมือแบบธรรมดาและแบบริช ค่าเริ่มต้นคือข้อกำหนดการออกแบบที่ 200 dp สำหรับเคล็ดลับเครื่องมือธรรมดา และ 320 dp สำหรับเคล็ดลับเครื่องมือที่สมบูรณ์ (I30ce9)
การแก้ไขข้อบกพร่อง
- ตอนนี้
DatePicker
และDateRangePicker
จะอัปเดตเดือนที่แสดงอย่างถูกต้องเมื่อตั้งค่าผ่านdisplayedMonthMillis
ของสถานะ (If9e47, b/333414302) - ตอนนี้เนื้อหา
ModalBottomSheet
จะย้ายเนื้อหาออกจากแถบสถานะ (I5114c, b/321877275, b/336962418, b/342093067) - [Bottom Sheet] เปลี่ยนลำดับความสำคัญของแฮนเดิลการเรียกกลับเป็น
PRIORITY_DEFAULT
เพื่อให้แป้นพิมพ์ IME ปิดก่อน (I447fb) - แก้ไขข้อขัดข้องใน
DatePicker
และDateRangePicker
เมื่อตั้งค่าปีที่เลือกได้ขั้นต่ำเป็นปีในอนาคต (I78656, b/319395747) - แก้ไขปัญหาเครื่องมือเลือกวันที่เพื่ออัปเดต UI เมื่อใช้อินสแตนซ์
SelectableDates
ที่อัปเดตแล้ว (Iad59a, b/290135807, b/339898760)
เวอร์ชัน 1.4.0-alpha01
2 ตุลาคม 2024
androidx.compose.material3:material3-*:1.4.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงลักษณะการทำงาน
- ไลบรารีจะไม่เพิ่มทรัพยากร Dependency ไปยัง
material-icons-core
อีกต่อไป ดังนั้นหากโปรเจ็กต์ของคุณต้องอาศัยทรัพยากร Dependency ดังกล่าว คุณจะต้องเพิ่มทรัพยากร Dependency นั้นอย่างชัดเจนในไฟล์build.gradle[.kts]
(I735ff, b/349894318) NavigationBarItem
และNavigationRailItem
จะเปลี่ยนสีป้ายกำกับที่ใช้งานอยู่จากonSurface
เป็นsecondary
เพื่อปรับปรุงความสามารถในการใช้งาน คอนทราสต์ของสี และปรับปรุงความสอดคล้องกันภายในระบบ (Ibc297) หากต้องการเปลี่ยนกลับเป็นลักษณะการทำงานก่อนหน้า ให้คัดลอกสีเริ่มต้นและเปลี่ยนselectedTextColor
เป็นMaterialTheme.colorScheme.onSurface
- ตอนนี้คอมโพเนนต์ Material 3 ใช้
MotionScheme
ใหม่เพื่อกำหนดการเคลื่อนไหวแล้ว (Ie0f93) - การเปลี่ยนแปลงการเคลื่อนไหวของตัวบ่งชี้ความคืบหน้าแบบวงกลมที่ไม่แน่นอน (I3c07e)
- อัปเดต
OutlinedIconButtonColors
และOutlinedIconToggleButtonColors
เพื่อให้คอนทราสต์ของสีดีขึ้น (I2743d) - อัปเดตสีคอนเทนเนอร์และเนื้อหาสำหรับ
FilledIconToggleButtonColors
และFilledTonalIconToggleButtonColors
(Ic5d0f) - อัปเดตสีเส้นขอบ
OutlinedButton
จากoutline
เป็นoutlineVariant
แล้ว (057f00)
การเปลี่ยนแปลง API
- เพิ่มพารามิเตอร์
reverseLayout
ที่ไม่บังคับลงในฟังก์ชันenterAlwaysScrollBehavior
ของTopAppBar
เพื่อรองรับเนื้อหาที่ตั้งค่าด้วยreverseLayout
ได้ดียิ่งขึ้น (I4e0e5) - ตอนนี้
SegmentedButton
รองรับอาร์กิวเมนต์contentPadding
แล้ว (I5ad91, b/358414376) PullToRefreshState
ไม่มีค่าเริ่มต้นสำหรับการติดตั้งใช้งานisAnimating
อีกต่อไป (I6a593)- เพิ่มการโอเวอร์โหลดใหม่ของ Material
TextField
และOutlinedTextField
ที่ใช้TextFieldState
เพิ่ม API กล่องตกแต่งที่เข้ากันได้กับTextFieldDecorator
(If13a1) - เพิ่มพารามิเตอร์เพื่อควบคุม
labelPosition
ของช่องข้อความ การใช้alwaysMinimize
ช่วยให้รูปแบบ UI แสดงป้ายกำกับและตัวยึดตำแหน่งในช่องข้อความพร้อมกันได้แม้ว่าช่องจะไม่ได้โฟกัสอยู่ก็ตาม (I1ef2c) - เพิ่ม Material
SecureTextField
และOutlinedSecureTextField
สำหรับช่องป้อนรหัสผ่าน (I7e22d) - เพิ่มขอบเขตไปยังป้ายกำกับช่องข้อความเพื่อค้นหาความคืบหน้าของภาพเคลื่อนไหว (If5ec8)
- เพิ่มการรองรับ
MotionEvent.CLASSIFICATION_DEEP_PRESS
ในเคล็ดลับเครื่องมือ (I62e6a) - ตอนนี้
isAfternoon
ของTimePickerState
เป็นค่าส่วนขยายแทนตัวแปรในอินเทอร์เฟซแล้ว และเปลี่ยนชื่อเป็นisPm
(I89a97) - อัปเดตคลาสการจัดรูปแบบข้อความเพื่อรองรับขนาดตัวอักษรที่เน้น (Ifa13c)
- เพิ่ม
ModalWideNavigationRail
API และเปลี่ยนชื่อModalExpandedNavigationRail
API เป็นDismissibleModalWideNavigationRail
(Ic9118) - อัปเดต
FloatingAppBarScrollBehavior
เพื่อคำนวณscreenOffset
โดยอัตโนมัติและไม่จำเป็นต้องมี@Composable
(Idf349) - อัปเดต API ของ
LoadingIndicator
เพื่อแก้ไขการตั้งชื่อในออบเจ็กต์ค่าเริ่มต้น เพิ่มค่าคงที่LoadingIndicatorElevation
ที่PullToRefresh
(I1d72b) - อัปเดต API ของ
LoadingIndicator
เพื่อแก้ไขการตั้งชื่อในออบเจ็กต์ค่าเริ่มต้น เพิ่มค่าคงที่LoadingIndicatorElevation
ที่PullToRefresh
(I1d72b) - เพิ่มพารามิเตอร์
amplitude
และwaveSpeed
ลงในรูปแบบที่ไม่แน่นอนของLinearWavyProgressIndicator
และCircularWavyProgressIndicator
(I2a0c5) - รองรับการเปลี่ยนรูปร่างของปุ่มเปิด/ปิดไอคอนตามสถานะที่กดหรือเลือก (Ibc781)
- อัปเดตคลาสการจัดรูปแบบข้อความเพื่อรองรับขนาดตัวอักษรที่เน้น (Ifa13c)
SplitButton
รูปร่างจะเปลี่ยนตามสถานะเริ่มต้น / สถานะที่กด นำAnimatedTrailingButton
API ออกเนื่องจากTrailingButton
API สามารถเสนอการปรับแต่งเดียวกันได้ (I95066)- เพิ่มตัวแก้ไขเพื่อเคลื่อนไหวการแสดงและการซ่อน FAB เช่น เมื่อเนื้อหาเลื่อน (I8338d)
- เพิ่มรูปร่างกลุ่มปุ่มที่เชื่อมต่อและระยะห่างไปยัง
ButtonGroupDefaults
เพื่อใช้ในตัวอย่าง (I68e30) - ปุ่มแยกจะเพิ่มระยะห่างแนวนอนสำหรับปุ่มต่อท้าย และเปิดใช้การจัดกึ่งกลางแบบออปติคัลที่คำนวณจากความแตกต่างของมุมเริ่มต้นและมุมสิ้นสุด (I122e2)
- ขอแนะนำ Material
MotionScheme
ใหม่ที่อนุญาตให้ตั้งค่ารูปแบบการเคลื่อนไหวของคอมโพเนนต์ โดยจะตั้งค่าสคีมผ่านMaterialTheme
(Id50c2)
การแก้ไขข้อบกพร่อง
- ใช้ดัชนีการไปยังโฟกัสที่ถูกต้องกับ
Scaffold
Composables ย่อย ลำดับคือtopBar
,bottomBar
, fab, content, snackbar (I5936b) - แก้ไขปัญหาที่
DatePicker
และDateRangePicker
ซึ่งในบางภาษาและรูปแบบโครงสร้าง องค์ประกอบวันที่บางอย่าง (เช่น ชื่อเดือน) ไม่ได้ขึ้นต้นด้วยตัวพิมพ์ใหญ่ (I1430f) - ผสานรวมโทเค็นคอมโพเนนต์ FAB และเมนู FAB (การอัปเดตภาพเล็กน้อยสำหรับระยะขอบและข้อความ) (Ib57f3)
ModalBottomSheet
จะเป็นองค์ประกอบแรกในลำดับการไปยังแบบเชิงความหมาย ตามด้วยขอบมืด (I436f9, b/358594665)- แก้ไขปัญหาแถบแอปด้านล่างไม่หายไปทั้งหมดเมื่อเลื่อนภายใต้แถบนำทางในโหมดขอบจรดขอบ (I3ee21)
Compose Material3 เวอร์ชัน 1.3
เวอร์ชัน 1.3.2
9 เมษายน 2025
androidx.compose.material3:material3-*:1.3.2
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.2 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
ListItem
แก้ไขการคำนวณความสูงโดยธรรมชาติแล้ว ตอนนี้จึงสำรองพื้นที่ในเลย์เอาต์ได้ในปริมาณที่เหมาะสม- นำการเว้นวรรคป้ายกำกับ
NavigationBarItem
ที่มากเกินออก โดยจัดแนวให้ถูกต้องตามข้อกำหนด - แก้ไขเลย์เอาต์
TabRow
ในโหมด RTL
เวอร์ชัน 1.3.1
30 ตุลาคม 2024
androidx.compose.material3:material3-*:1.3.1
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.1 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- ตอนนี้
DatePicker
และDateRangePicker
จะอัปเดตเดือนที่แสดงอย่างถูกต้องเมื่อตั้งค่าผ่านdisplayedMonthMillis
ของสถานะ (If9e47, b/333414302) - แก้ไขข้อขัดข้องใน
DatePicker
และDateRangePicker
เมื่อตั้งค่าปีที่เลือกได้ขั้นต่ำเป็นปีในอนาคต (I78656, b/319395747) - แก้ไขปัญหาเครื่องมือเลือกวันที่เพื่ออัปเดต UI เมื่อใช้อินสแตนซ์
SelectableDates
ที่อัปเดตแล้ว (Iad59a, b/290135807, b/339898760) - เปลี่ยนลำดับความสำคัญของโปรแกรมเรียกกลับที่ใช้โดยชีตด้านล่างเป็น
PRIORITY_DEFAULT
เพื่อให้แป้นพิมพ์ IME ปิดก่อน (I447fb)
เวอร์ชัน 1.3.0
4 กันยายน 2024
androidx.compose.material3:material3-*:1.3.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.2.0
ฟีเจอร์หลักของ 1.3.0
คอมโพเนนต์ Material Design 3 ใหม่
- ภาพหมุน
HorizontalMultiBrowseCarousel
และHorizontalUncontainedCarousel
การปรับปรุงคอมโพเนนต์ Material Design 3 ที่มีอยู่
- [
ModalBottomSheet
] รองรับการย้อนกลับแบบคาดการณ์ใน U+ แล้ว (Iccf32, b/281967264, b/304850357) - [
SearchBar
] รองรับการย้อนกลับที่คาดการณ์ได้ใน U+ แล้ว (I657f8) - ตอนนี้ Nav Drawer (
ModalDrawerSheet
และDismissibleDrawerSheet
) รองรับการย้อนกลับแบบคาดการณ์ใน U+ เป็นการเลือกใช้ (Ie5b0b) DropdownMenu
ตอนนี้รองรับสี รูปร่าง ระดับความสูง และเส้นขอบที่กำหนดเองแล้ว (I8e981,b/289554448, b/301887035, b/283654243)- อัปเดตแถบเลื่อนเพื่อปรับปรุงการช่วยเหลือพิเศษโดยเพิ่มช่องว่างและตัวบ่งชี้การหยุด (I3058e)
- อัปเดต
ProgressIndicator
เพื่อปรับปรุงการช่วยเหลือพิเศษด้วยการเพิ่มตัวบ่งชี้ช่องว่างและตัวบ่งชี้การหยุด (I21451) - เพิ่มเคอร์เซอร์เริ่มต้นสำหรับเคล็ดลับเครื่องมือแบบริช สนับสนุนการวาดเคอร์เซอร์ที่กำหนดเองเมื่อระบุ Anchor
LayoutCoordinates
(Ifd42c) การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบ - API ใหม่สำหรับการดึงเพื่อรีเฟรช
PullToRefreshState
ที่ง่ายขึ้นเพื่อใช้ค่าเศษส่วนแทนหน่วย Dp- ผู้ใช้จะเป็นผู้ควบคุมสถานะ
isRefreshing
แทนPullToRefreshState
- แยกการเชื่อมต่อการเลื่อนที่ซ้อนกันออกจาก
PullToRefreshState
โดยจะจัดการผ่านPullToRefreshBox
หรือModifier.pullToRefresh
ใหม่ - การอัปเดตนี้เป็นการเปลี่ยนแปลงที่ทำให้ API ทดลองก่อนหน้านี้ใช้งานไม่ได้ (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683) การเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้องด้านภาพ
- อัปเดตการวางซ้อนสถานะโฟกัสเป็น 0.1f เพื่อให้มั่นใจว่ามีคอนทราสต์ของสีเพียงพอ (I7ea77)
- การปรับค่าเริ่มต้นของสีพื้นผิวและสีพื้นหลังเล็กน้อยใน
lightColorScheme
และdarkColorScheme
(I9db52) - อัปเดตสีของแถบเลื่อนและ
ProgressIndicator
ให้เป็นไปตามข้อกำหนดใหม่เกี่ยวกับคอนทราสต์ที่ไม่ใช่ข้อความ (I26807) - ตอนนี้คอมโพเนนต์ใช้ตัวแปร
SurfaceContainer
แล้ว ตอนนี้คอมโพเนนต์ที่คำนวณสีด้วยSurface
และTonalElevation
อย่างเป็นทางการจะใช้บทบาทSurfaceContainer
โดยค่าเริ่มต้น ซึ่งไม่ได้รับผลกระทบจากการยกระดับโทนสี (b/304584161) - บทบาทพื้นฐานของคอนเทนเนอร์ Surface และ Surface ได้รับการปรับเล็กน้อยเพื่อให้มีสีอ่อนในธีมสว่างและธีมมืดมากขึ้น (I677a5)
- เลื่อนระดับ API ทดลองเป็น API ที่เสถียรแล้ว
- ปรับปรุงประสิทธิภาพ
เวอร์ชัน 1.3.0-rc01
21 สิงหาคม 2024
androidx.compose.material3:material3-*:1.3.0-rc01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
ModalBottomSheet
จะเป็นองค์ประกอบแรกในลำดับการไปยังแบบเชิงความหมาย ตามด้วยขอบมืด (I436f9, b/358594665)
เวอร์ชัน 1.3.0-beta05
24 กรกฎาคม 2024
androidx.compose.material3:material3-*:1.3.0-beta05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta05 มีการเปลี่ยนแปลงเหล่านี้
- แก้ไขปัญหาที่
BottomSheet
เนื้อหาขาดหายไปหรือถูกตัดออกใน Android N และ O (a10a2d) - เพิ่มขอบเขตความหมายของแถบเลื่อนเพื่อให้
TalkBack
แสดงตัวบ่งชี้โฟกัสรอบๆ รูปขนาดย่อได้อย่างถูกต้อง (0b5a1d)
เวอร์ชัน 1.3.0-beta04
26 มิถุนายน 2024
androidx.compose.material3:material3-*:1.3.0-beta04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta04 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.3.0-beta03
12 มิถุนายน 2024
androidx.compose.material3:material3-*:1.3.0-beta03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta03 มีการเปลี่ยนแปลงเหล่านี้
การมีส่วนร่วมภายนอก
- ทำให้
androidx.compose.material3.DropdownMenu
พร้อมใช้งานจากชุดแหล่งข้อมูลทั่วไป (If62c0)
เวอร์ชัน 1.3.0-beta02
29 พฤษภาคม 2024
androidx.compose.material3:material3-*:1.3.0-beta02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
Modifier.pullToRefreshIndicator
รองรับการยกระดับ อัปเดต API การดึงเพื่อรีเฟรชให้เปิดใช้เป็นบูลีนแทนที่จะเป็นแลมบ์ดา รองรับการจัดแนวเนื้อหาในPullToRefreshBox
(I75679)- การทำให้
TooltipScope
เป็นอินเทอร์เฟซที่ปิดผนึกและการสร้างการใช้งานภายในเพื่อใช้ในTooltipBox
และ Label (I3833e) - เพิ่มตัวแก้ไขใหม่ 2 รายการลงใน
CarouselItemScope
-maskClip
และmaskBorder
เพื่อให้เพิ่มรูปร่างและเส้นขอบไปยังรายการภาพสไลด์ได้อย่างง่ายดาย (Id67a1) TimePickerState
เป็นอินเทอร์เฟซที่ช่วยให้ตั้งเวลาได้ (I88546)- อัปเดต API สำหรับจัดรูปแบบลิงก์: ย้าย
TextLinkStyles
ไปยังTextStyle
และนำTextDefaults
ออกจาก Material (I5477b)
การแก้ไขข้อบกพร่อง
- ตอนนี้ไอคอนแถบสถานะและแถบนำทางของ
ModalBottomSheet
จะตอบสนองต่อสถานะธีมมืดแล้ว (Ie1fe7, b/338342149) - เพิ่มความหมายของชีตปิดลงใน
ModalBottomSheet
Scrim (0e61cb,b/328801864)
การมีส่วนร่วมภายนอก
- ทำให้
androidx.compose.material3.AlertDialog
พร้อมใช้งานจากชุดแหล่งที่มาทั่วไป (Ia33f5) - ทำให้
ModalBottomSheet
พร้อมใช้งานจากชุดแหล่งข้อมูลทั่วไป (Id7cc7)
เวอร์ชัน 1.3.0-beta01
14 พฤษภาคม 2024
androidx.compose.material3:material3-*:1.3.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- ใช้
DpSize
แทนCaretProperties
กำลังนำCaretProperties
ออก เปลี่ยนชื่อCaretScope
เป็นTooltipScope
(Id9a76) - อัปเดต API สำหรับรับลิงก์ที่มีธีม Material ในข้อความ โดยเฉพาะอย่างยิ่ง เราได้นำวิธีการต่างๆ ออกจาก
TextDefaults
สำหรับการสร้างLinkAnnotations
ที่มีธีมและแยกวิเคราะห์ HTML ด้วยลิงก์ที่มีธีม แต่ได้เพิ่มTextLinkStyles
คลาสที่อนุญาตให้จัดรูปแบบลิงก์เป็นพารามิเตอร์ไปยัง Composable ของข้อความแทน (I31b93)
เวอร์ชัน 1.3.0-alpha06
1 พฤษภาคม 2024
androidx.compose.material3:material3-*:1.3.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบ
API ใหม่สำหรับการดึงเพื่อรีเฟรช
PullToRefreshState
ที่ง่ายขึ้นเพื่อใช้ค่าเศษส่วนแทนหน่วย Dp- ผู้ใช้จะเป็นผู้ควบคุมสถานะ
isRefreshing
แทนPullToRefreshState
- แยกการเชื่อมต่อการเลื่อนที่ซ้อนกันออกจาก
PullToRefreshState
โดยจะจัดการผ่านPullToRefreshBox
หรือModifier.pullToRefresh
ใหม่ - การอัปเดตนี้เป็นการเปลี่ยนแปลงที่ทำให้ API ทดลองก่อนหน้านี้ใช้งานไม่ได้ (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683)
การเปลี่ยนแปลง API
- ระบบได้นำ
RippleConfiguration#isEnabled
ออกแล้ว และทำให้LocalRippleConfiguration
เป็นค่าที่กำหนดให้เป็น Null ได้ หากต้องการปิดใช้การกระเพื่อม ให้ระบุnull
ถึงLocalRippleConfiguration
แทนการระบุRippleConfiguration
ที่มีisEnabled = false
(I22725) ModalBottomSheet
วาดขอบมืดเหนือแถบสถานะได้แม่นยำยิ่งขึ้นเมื่อเปิดใช้การแสดงผลแบบขอบจรดขอบ ตอนนี้เนื้อหาของแผ่นชีตด้านล่างแบบโมดัลสามารถใช้ส่วนแทรกของหน้าต่างได้แล้ว ซึ่งจะช่วยให้เนื้อหาที่มองเห็นได้อยู่เหนือแถบนำทาง พารามิเตอร์ModalBottomSheet
เปลี่ยนชื่อเป็นwindowInsets
เพื่อระบุตำแหน่งที่จะใช้ Inset ซึ่งจะไม่เชื่อมโยงกับตรรกะของหน้าต่างอีกต่อไปcontentWindowInsets
contentWindowInsets
ได้เปลี่ยนเป็นฟังก์ชันที่แสดงผลWindowInsets
เพื่อให้สามารถแก้ไขได้ภายในหน้าต่างใหม่ (I39630, b/274872542, b/300280229, b/290893168)- ตอนนี้
PrimaryScrollableTabRow
และSecondaryScrollableTabRow
ใช้เลย์เอาต์ที่กำหนดเองแทนการประกอบย่อย ซึ่งจะช่วยปรับปรุงประสิทธิภาพ (I991e0) - ลิงก์ข้อความมีตัวเลือกการจัดรูปแบบสถานะที่กดนอกเหนือจากการจัดรูปแบบปกติ การวางเมาส์ และการโฟกัส
TextDefaults
แต่ละเมธอดมีอาร์กิวเมนต์pressedStyle
เพื่อรองรับการดำเนินการดังกล่าว (Ic473f, b/139312671)
การแก้ไขข้อบกพร่อง
- ตอนนี้ Anchor การลากของลิ้นชักการนำทางจะตรงกับความกว้างของ
drawerContent
(Ibc72f, b/245355396) OutlinedTextField
ตอนนี้การเว้นที่ว่างด้านบนสำหรับป้ายกำกับจะพิจารณาขนาดแบบอักษรของระบบแล้ว (Idc781)- ตำแหน่งแพ็กเกจคงที่ของ
CalendarLocale
(Ifa235) - [การย้อนกลับแบบคาดเดา] อัปเดตภาพเคลื่อนไหวการย้อนกลับแบบคาดเดาให้ใช้เส้นโค้งการประมาณค่าของ (0.1, 0.1, 0, 1) (I2591a)
เวอร์ชัน 1.3.0-alpha05
17 เมษายน 2024
androidx.compose.material3:material3-*:1.3.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
SearchBar
และDockedSearchBar
มีการโอเวอร์โหลดใหม่ที่ใช้พารามิเตอร์ช่องข้อความ ซึ่งช่วยให้จัดรูปแบบช่องข้อความแยกจากส่วนอื่นๆ ของแถบค้นหา รวมถึงส่งช่องข้อความที่กำหนดเองได้ เราได้จัดเตรียมช่องข้อความของการติดตั้งใช้งานปัจจุบันเป็นSearchBarDefaults.InputField
(I50c73, b/275074248, b/278773336, b/326627700)- เพิ่ม Lambda
drawTick
ลงใน API สาธารณะเพื่อปรับแต่งเครื่องหมายหากจำเป็น (I0c048)
การเปลี่ยนแปลง API
- ลิงก์ข้อความมีตัวเลือกการจัดรูปแบบสถานะที่กดนอกเหนือจากการจัดรูปแบบปกติ เมาส์เหนือ และโฟกัส (I5f864, b/139312671)
- อัปเดต
CarouselItemInfo
เพื่อแสดง Rect ของมาสก์ที่ใช้ตัดรายการ (I785d8) - นำ
BasicTooltipState
ออกจาก API สาธารณะของ Material 3 ฟังก์ชันการทำงานของTooltipState
จะรวมเข้ากับBasicTooltip
จนกว่าBasicTooltip
ของ Foundation จะเสถียร (Icda29) - เพิ่มออบเจ็กต์
TextDefaults
ที่มีเมธอดในการสร้างLinkAnnotation
และแยกวิเคราะห์สตริงที่ติดแท็ก HTML ซึ่งใช้MaterialTheme
กับลิงก์ (I98532, b/139312671) ExposedDropdownMenuBoxScope
ไม่อนุญาตให้ใช้คลาสย่อยอีกต่อไป ตอนนี้เมนูแบบเลื่อนลงที่แสดงมีMenuAnchorType
ซึ่งควรส่งไปยังmenuAnchor
เพื่อรองรับ a11y ได้ดียิ่งขึ้น ควรใช้พารามิเตอร์นี้แทนการส่งfocusable
ไปยังExposedDropdownMenu
ซึ่งตอนนี้เลิกใช้งานแล้วmenuAnchor
มีพารามิเตอร์ใหม่เพื่อควบคุมสถานะenabled
(I55ee6, b/257209915, b/308840226)- แก้ไขสีเส้นขอบของ
OutlinedButton
เมื่อปิดใช้ เพิ่มButtonDefaults.outlinedButtonBorder("enabled")
โอเวอร์โหลดที่ใช้สถานะที่เปิดใช้ (Ie650b, b/318461363) - เพิ่มคลาส
CarouselItemInfo
ใหม่เพื่อช่วยให้ลูกค้าได้รับข้อมูลเกี่ยวกับขนาดสินค้า (I9070c) - ตอนนี้เราเลิกใช้งานตัวสร้าง
ColorScheme
ที่ไม่มีคอนเทนเนอร์พื้นผิวแล้ว โปรดย้ายข้อมูลไปยังตัวสร้างที่มีคอนเทนเนอร์พื้นผิว (I35c11) - [เติมขอบ]
TextFieldDefaults
เปลี่ยนชื่อContainerBox
เป็นContainer
แล้ว (Ie8d3b)
การแก้ไขข้อบกพร่อง
BottomSheetScaffold
จะไม่เลื่อนจากเลื่อนที่ซ้อนกันอีกต่อไปหากsheetSwipeEnabled
เป็นเท็จ (I5e1c1, b/306464779)- นำคำอธิบายประกอบการเลือกใช้
ExperimentalMaterial3Api
บางรายการในIconButtonSamples.kt
ออกแล้ว (I111d1)
เวอร์ชัน 1.3.0-alpha04
3 เมษายน 2024
androidx.compose.material3:material3-*:1.3.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม Material3 Carousel เวอร์ชันทดลอง 2 รายการ ได้แก่
HorizontalMultiBrowseCarousel
และHorizontalUncontainedCarousel
(I88d64) - อัปเดตแถบนำทาง Compose M3 (
ModalDrawerSheet
และDismissibleDrawerSheet
) เพื่อรองรับการย้อนกลับแบบคาดการณ์ใน U+ เป็นการเลือกใช้ (Ie5b0b) - เพิ่ม API ใหม่ในไอคอนเพื่อให้ส่งการปรับสีเป็น Lambda ได้เพื่อหลีกเลี่ยงการจัดองค์ประกอบใหม่ (I5b5a2)
- ตอนนี้ API แถบแอปด้านบนรองรับความสูงที่กำหนดเองสำหรับทั้งส่วนแบบคงที่และแบบยุบได้แล้ว (Ib8b0c, b/323403446)
การเปลี่ยนแปลง API
- ตอนนี้ API แถบแอปด้านบนรองรับความสูงที่กำหนดเองสำหรับทั้งส่วนแบบคงที่และแบบยุบได้แล้ว แก้ไขปัญหาที่ทำให้แถบแอปด้านบนแบบบรรทัดเดียวสร้างองค์ประกอบใหม่หลายครั้งเกินไปเมื่อเลื่อนเนื้อหา แก้ไขปัญหาที่
MediumTopAppBar
ชื่อถูกตัดในอุปกรณ์ที่มีการตั้งค่าแบบอักษร/การแสดงผลขนาดใหญ่ (Ib8b0c, b/323403446, b/300953236, b/286296147, b/330410290, b/308540676) SegmentedButton
และ API ที่เกี่ยวข้องพร้อมใช้งานแล้ว (I8a158)- ตอนนี้เราได้ทำเครื่องหมายว่า
SwipeToDismissBox
,SwipeToDismissBoxDefaults
,SwipeToDismissBoxState
และSwipeToDismissBoxValue
มีความเสถียรแล้ว (I5f000) - นำ Enum และ API ของ
DismissDirection
และDismissValue
ที่เลิกใช้งานแล้วออก (I89ccd) - เพิ่มแท็กเวอร์ชันทดลองลงใน
CarouselState
ออบเจ็กต์เสริมของภาพหมุน (I94154) - เลิกใช้งาน
LocalMinimumInteractiveComponentEnforcement
และเปิดตัวLocalMinimumInteractiveComponentSize
เพื่อแทนที่ (I7a7ac) - ตอนนี้เครื่องมือสร้าง
SearchBarColors
พร้อมใช้งานแล้ว (I769ca) - เพิ่มพารามิเตอร์
gesturesEnabled
ไปยังSwipeToDismissBox
แล้ว (Idc59f, b/324170119) - นำ API ของช่องข้อความที่ทำเครื่องหมายว่าเลิกใช้งานแล้วและเป็นเวอร์ชันทดลองออก (I1305f)
เวอร์ชัน 1.3.0-alpha03
20 มีนาคม 2024
androidx.compose.material3:material3-*:1.3.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบที่มองเห็นได้
- อัปเดตการวางซ้อนสถานะโฟกัสเป็น 0.1f เพื่อให้มั่นใจว่ามีคอนทราสต์ของสีเพียงพอ (I7ea77)
- การปรับค่าเริ่มต้นของสีพื้นผิวและสีพื้นหลังเล็กน้อยใน
lightColorScheme
และdarkColorScheme
(I9db52)
ฟีเจอร์ใหม่
- เพิ่มพารามิเตอร์เพื่อปรับแต่ง
ExposedDropdownMenu
โดยเฉพาะอย่างยิ่ง ตอนนี้เมนูมีพารามิเตอร์focusable
(ค่าเริ่มต้นคือtrue
) ซึ่งควรตั้งค่าเป็นfalse
เมื่อทำงานกับช่องข้อความที่แก้ไขได้ (I4184c, b/323694447, b/278609042)
การเปลี่ยนแปลง API
- ระบบได้นำธง
ScaffoldSubcomposeInMeasureFix
ออกแล้ว (Ie2a4b) - ตอนนี้
NavigationRailItemColors
มีเครื่องหมายระบุว่า@Immutable
(If6112, b/327660613) - ตอนนี้
NavigationBarItemColors
มีเครื่องหมายระบุว่า@Immutable
(I42a30, b/298064514) - เรียงลำดับพารามิเตอร์ใหม่ใน Slider Track ที่ใช้ร่วมกันได้ (I9f315)
- ตอนนี้เราใช้
ExposedDropdownMenu
โดยใช้Popup
แล้ว ลักษณะการทำงานควรเหมือนกัน ยกเว้นเมนูที่โฟกัสได้ซึ่งมีช่องข้อความที่แก้ไขได้อาจปิดเมื่อพิมพ์บนแป้นพิมพ์
การแก้ไขข้อบกพร่อง
- บทบาทพื้นฐานของคอนเทนเนอร์ Surface และ Surface ได้รับการปรับเล็กน้อยเพื่อให้มีสีอ่อนในธีมสว่างและธีมมืดมากขึ้น (I677a5)
- อัปเดตสีของแถบเลื่อนและ
ProgressIndicator
ให้เป็นไปตามข้อกำหนดใหม่เกี่ยวกับคอนทราสต์ที่ไม่ใช่ข้อความ (I26807) - อัปเดตการวางซ้อนสถานะโฟกัสเป็น 0.1f เพื่อให้มั่นใจว่ามีคอนทราสต์ของสีเพียงพอ (I7ea77)
- การปรับค่าเริ่มต้นของสีพื้นผิวและสีพื้นหลังเล็กน้อยใน
lightColorScheme
และdarkColorScheme
(I9db52)
เวอร์ชัน 1.3.0-alpha02
6 มีนาคม 2024
androidx.compose.material3:material3-*:1.3.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- ทำให้สถานะแถบเลื่อนเสถียรอีกครั้ง การทำให้
State.onValueChangeFinished
เป็น Val อีกครั้ง การห่อonValueChangeFinished
ในrememberUpdatedState
(I82ab2, b/322269951) - ตอนนี้คอมโพเนนต์การนำทางใช้บทบาท
SurfaceContainer
ใหม่แล้ว ตอนนี้DrawerDefaults
มีแอตทริบิวต์standardContainerColor
และmodalContainerColor
ที่แตกต่างกันแล้วDrawerDefaults.ModalDrawerElevation
เปลี่ยนชื่อเป็น0.dp
แล้ว (I7fbac) - นำ
@Stable
ออกจากสถานะของSlider
เนื่องจากเราจะเปลี่ยนstate.onValueChangeFinished
เป็นvar
(Ied34a, b/322269951) - ตอนนี้
ModalBottomSheet
และStandardBottomSheet
เป็นTweenSpec
แล้ว ซึ่งอัปเดตจากภาพเคลื่อนไหวสปริง ซึ่งจะช่วยแก้ปัญหาการโอเวอร์ชูตที่มองเห็นได้ ตอนนี้เราได้นำตัวสร้างSheetState
ที่เลิกใช้งานแล้วซึ่งไม่มีความหนาแน่นออกแล้ว (I7babc, b/285847707)
การแก้ไขข้อบกพร่อง
- ตอนนี้คอมโพเนนต์ใช้ตัวแปร
SurfaceContainer
แล้ว คอมโพเนนต์ที่คำนวณสีด้วย Surface และTonalElevation
อย่างเป็นทางการจะใช้บทบาทSurfaceContainer
โดยค่าเริ่มต้น ซึ่งไม่ได้รับผลกระทบจากการยกระดับโทนสี (b/304584161) - แก้ไขข้อบกพร่องที่ทำให้สีของคอนเทนเนอร์ที่ไม่ได้เลือกและปิดใช้ของ
ElevatedFilterChip
เป็นสีดำ (I400e6, b/322407043) - แก้ไขตัวบ่งชี้ความคืบหน้าแบบไม่ระบุเวลาเมื่อความคืบหน้าเป็น 0 (Id6582)
- แก้ไขปัญหาเกี่ยวกับ
Slider
และRangeSlider
ในเลย์เอาต์ RTL (Iab0e1) - เพิ่ม
SliderRangeTolerance
สำหรับการคำนวณช่วงแถบเลื่อนเนื่องจากการปัดเศษทศนิยมอาจไม่ถูกต้อง (Ic918a, b/324934900) - ตรวจสอบว่า
DatePickerDialog
แสดงปุ่มเมื่อซ้อนDateRangePicker
หรือเมื่อแสดงเครื่องมือเลือกวันที่ประเภทใดก็ตามบนหน้าจอขนาดเล็กที่มีแบบอักษรขนาดใหญ่ (Ie4758, b/325107799, b/277768544) Menu
ใช้ประโยชน์จากบทบาทSurfaceContainer
สำหรับสีคอนเทนเนอร์แล้วMenuDefaults.TonalElevation
เปลี่ยนชื่อเป็น0.dp
แล้ว (I135b7)TextField
ใช้ประโยชน์จากบทบาทSurfaceContainerHighest
สำหรับสีคอนเทนเนอร์แล้ว (I4dced)- ตอนนี้ชิปที่ยกระดับจะใช้ประโยชน์จากบทบาท
SurfaceContainerLow
(I7cd2f) - ตอนนี้สีคอนเทนเนอร์
DatePicker
เป็นSurfaceContainerHigh
แล้วDatePickerDefaults.TonalElevation
เปลี่ยนชื่อเป็น0.dp
แล้ว (Ida753) - อัปเดตสีคอนเทนเนอร์ของชีตด้านล่างและสีที่จับสำหรับลาก (I72a0a)
- ตอนนี้สีคอนเทนเนอร์
RichTooltip
เป็นSurfaceContainer
แล้ว (Ia8b45) - ตอนนี้สีคอนเทนเนอร์
SearchBar
เป็นSurfaceContainerHighest
แล้วSearchBarDefaults.TonalElevation
เปลี่ยนชื่อเป็น0.dp
แล้ว (I88604) - ปิดใช้สวิตช์อัปเดตและยกเลิกการเลือกแทร็ก/ไอคอนเพื่อใช้
SurfaceContainerHighest
บทบาทสี (I7687a) - ตอนนี้สีคอนเทนเนอร์
AlertDialog
เป็นSurfaceContainerHigh
แล้ว (Ie0433) - ตอนนี้สีคอนเทนเนอร์
BottomAppBar
เป็นSurfaceContainer
แล้ว ตอนนี้สีTopAppBar
onScroll
เป็นSurfaceContainer
แล้ว (I41630) - ตอนนี้สีคอนเทนเนอร์
ElevatedCard
เป็นSurfaceContainerLow
แล้ว สีคอนเทนเนอร์ของFilledCard
เป็นSurfaceContainerHighest
(I35141) - ตอนนี้สีคอนเทนเนอร์
ElevatedButton
เป็นSurfaceContainerLow
แล้วFilledIconButton
ที่ไม่ได้เลือกจะมีสีคอนเทนเนอร์เป็นSurfaceContainerHighest
(I792c9) - อัปเดตบทบาทสีของคอนเทนเนอร์
TimePicker
และสีหน้าปัดนาฬิกาเป็นSurfaceContainerHighest
(I43b93)
เวอร์ชัน 1.3.0-alpha01
21 กุมภาพันธ์ 2024
androidx.compose.material3:material3-*:1.3.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.3.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- อัปเดต Compose M3
ModalBottomSheet
เพื่อรองรับการย้อนกลับแบบคาดการณ์ใน U+ (Iccf32, b/281967264, b/304850357) - อัปเดต Compose M3
SearchBar
เพื่อรองรับการย้อนกลับที่คาดการณ์ได้ใน U+ (I657f8) - อัปเดตแถบเลื่อนเพื่อปรับปรุงการช่วยเหลือพิเศษโดยเพิ่มช่องว่างและตัวบ่งชี้การหยุด (I3058e)
- อัปเดต
ProgressIndicator
เพื่อปรับปรุงการช่วยเหลือพิเศษด้วยการเพิ่มตัวบ่งชี้ช่องว่างและตัวบ่งชี้การหยุด (I21451) - การเพิ่มเครื่องหมายแคร์เร็ตเริ่มต้นสำหรับริชทูลทิป ตอนนี้ API ริชทูลทิปใหม่ช่วยให้วาดแคร์เร็ตที่กำหนดเองได้เมื่อระบุจุดยึด
LayoutCoordinates
(Ifd42c)
การเปลี่ยนแปลงลักษณะการทำงาน
- เราได้ย้ายข้อมูลคอมโพเนนต์ Material ไปใช้ API Ripple ใหม่แล้ว และจะไม่ค้นหา
RippleTheme
อีกต่อไป
การเปลี่ยนแปลง API
- ตอนนี้ฟีเจอร์สนุกๆ
drawStopIndicator
พร้อมให้ใช้งานแล้ว (I3f59f) - ทําเครื่องหมายฟังก์ชัน
formatWithSkeleton
ของDatePicker
เป็นภายใน (Ic65dc) DropdownMenu
ตอนนี้รองรับสี รูปร่าง ระดับความสูง และเส้นขอบที่กำหนดเองแล้ว (I8e981, b/289554448, b/301887035, b/283654243)- คอมโพเนนต์ Material3 ที่แสดง
MutableInteractionSource
ใน API ได้รับการอัปเดตให้แสดงMutableInteractionSource
ที่กำหนดค่า Null ได้ ซึ่งมีค่าเริ่มต้นเป็นnull
ไม่มีการเปลี่ยนแปลงเชิงความหมายที่นี่ การส่งค่า null หมายความว่าคุณไม่ต้องการยกMutableInteractionSource
และระบบจะสร้างภายในคอมโพเนนต์หากจำเป็น การเปลี่ยนเป็น null จะทำให้คอมโพเนนต์บางอย่างไม่จัดสรรMutableInteractionSource
เลย และทำให้คอมโพเนนต์อื่นๆ สร้างอินสแตนซ์เมื่อจำเป็นเท่านั้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพในคอมโพเนนต์เหล่านี้ หากไม่ได้ใช้MutableInteractionSource
ที่ส่งไปยังคอมโพเนนต์เหล่านี้ เราขอแนะนำให้ส่งค่าเป็น null แทน นอกจากนี้ เราขอแนะนำให้คุณทำการเปลี่ยนแปลงที่คล้ายกันในคอมโพเนนต์ของคุณเองด้วย (I41abb, b/298048146) - เพิ่ม
RippleConfiguration
และLocalRippleConfiguration
เพื่ออนุญาตการปรับแต่งการกระเพื่อมต่อคอมโพเนนต์ / ทรีย่อยโดยใช้ค่าคงที่ เช่น หากต้องการเปลี่ยนสีของคอมโพเนนต์ที่คุณควบคุมไม่ได้ หรือปิดใช้การกระเพื่อมสำหรับคอมโพเนนต์ ในกรณีส่วนใหญ่ คุณควรใช้ค่าเริ่มต้น เนื่องจาก API เหล่านี้เป็นทางออกสำหรับการปรับแต่งคอมโพเนนต์แต่ละรายการ / ซับทรีที่จำกัด สำหรับการเปลี่ยนแปลงที่กว้างขึ้นและระบบการออกแบบที่กำหนดเอง คุณควรสร้าง Ripple ของคุณเองโดยใช้createRippleModifierNode
แทน (I7b5d6, b/298048146) - เพิ่ม Ripple API ใหม่ใน Material3 ซึ่งจะมาแทนที่
rememberRipple
ที่เลิกใช้งานไปแล้ว นอกจากนี้ ยังเพิ่มCompositionLocal
,LocalUseFallbackRippleImplementation
ชั่วคราวเพื่อเปลี่ยนคอมโพเนนต์ Material3 กลับไปใช้ APIrememberRipple
/RippleTheme
ที่เลิกใช้งานแล้ว การตั้งค่านี้จะนำออกในการเผยแพร่เวอร์ชันเสถียรถัดไป และมีไว้เพื่อช่วยในการย้ายข้อมูลชั่วคราวในกรณีที่คุณระบุRippleTheme
ที่กำหนดเอง (I34cbc, b/298048146)
การแก้ไขข้อบกพร่อง
- นำองค์ประกอบย่อยภายใน
ModalBottomSheet
ออกเพื่อปรับปรุงประสิทธิภาพ แก้ไขปัญหาที่ModalBottomSheet
อาจขัดข้องในบางสถานการณ์เมื่อใช้ร่วมกับLookaheadScope
(I2a198) - นำองค์ประกอบย่อยภายใน
BottomSheetScaffold
ออกเพื่อปรับปรุงประสิทธิภาพ แก้ไขปัญหาที่BottomSheetScaffold
จะขัดข้องในบางสถานการณ์เมื่อใช้ร่วมกับLookaheadScope
(Ie6401) - เราปรับการจัดแนวป้ายให้ใกล้กับกึ่งกลางของเนื้อหาที่ยึดมากขึ้นเมื่อเทียบกับมุมขวาบน (I18a28)
- แก้ไขปัญหาการช่วยเหลือพิเศษเกี่ยวกับ
DateRangePicker
ซึ่งมีการสื่อสารชื่อข้อความเดือน-ปีว่าดำเนินการได้กับผู้ใช้โปรแกรมอ่านหน้าจอ การเข้าถึงด้วยสวิตช์ และการเข้าถึงด้วยเสียง (I2ac55) - แก้ไขข้อบกพร่องเกี่ยวกับลำดับพารามิเตอร์
mediumTopAppBarColors
(Ibe64a)
เวอร์ชัน 1.2
เวอร์ชัน 1.2.1
6 มีนาคม 2024
androidx.compose.material3:material3-*:1.2.1
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.1 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- ทำให้สถานะแถบเลื่อนเสถียรอีกครั้ง การทำให้
State.onValueChangeFinished
เป็น Val อีกครั้ง การห่อonValueChangeFinished
ในrememberUpdatedState
(Ie8fd0, b/322269951) - นำ
@Stable
ออกจากสถานะของSlider
เนื่องจากเราจะเปลี่ยนstate.onValueChangeFinished
เป็นvar
(I82ba1, b/322269951) - แก้ไขสีที่กำหนดเอง
NavigationBar
เพื่อคัดลอกจากค่าเริ่มต้น (80a779, b/326894020) - แก้ไขการถดถอยใน
ExposedDropdownMenu
เพื่อให้โฟกัสได้อีกครั้ง (3fcec1, b/323694447) - แก้ไขปัญหาการแคชสีปุ่ม (3e5bbcb/327371655)
เวอร์ชัน 1.2.0
7 กุมภาพันธ์ 2024
androidx.compose.material3:material3-*:1.2.0
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้
ปัญหาที่ทราบ
- เราได้เปิดตัวข้อบกพร่องในการแสดงผลการทำงานร่วมกันของ View-Compose ใน
PrimaryTabRow
ซึ่งเป็นส่วนหนึ่งของการเปลี่ยนแปลงเพื่อปรับปรุงประสิทธิภาพ วิธีแก้ปัญหาเฉพาะหน้าคือใช้TabRow
กับTabRowDefaults.PrimaryIndicator
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
คอมโพเนนต์ Material Design 3 ใหม่
- ดึงเพื่อรีเฟรช
- ปุ่มแบบแบ่งกลุ่ม
การปรับปรุงคอมโพเนนต์ Material Design 3 ที่มีอยู่
- แถบด้านล่างของแอป (การจัดแนว RTL, ซ่อนอัตโนมัติเมื่อเลื่อน)
- การอัปเดตภาพของแท็บ
- ป้าย (การอัปเดตการจัดแนว)
เลื่อนระดับ API ทดลองเป็น API ที่เสถียร
การปรับปรุงประสิทธิภาพ
- โปรดดูรายละเอียดเพิ่มเติมในบล็อกโพสต์นี้
เวอร์ชัน 1.2.0-rc01
24 มกราคม 2024
androidx.compose.material3:material3-*:1.2.0-rc01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-rc01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องเกี่ยวกับลำดับพารามิเตอร์
mediumTopAppBarColors
(Ibe64a) - แก้ไขข้อบกพร่องที่เกิดขึ้นใน
1.2.0-beta02
ในCardDefaults.cardColors
ซึ่งไม่ได้อัปเดตcontentColor
ตามค่าพารามิเตอร์containerColor
(Iee041, b/319671246) - แก้ไขข้อบกพร่องใน
disabledContentColor
ที่เกิดขึ้นใน1.2.0-beta02
และเพิ่มการเพิ่มประสิทธิภาพเล็กน้อย (I6dda1, b/318428829)
เวอร์ชัน 1.2.0-beta02
10 มกราคม 2024
androidx.compose.material3:material3-*:1.2.0-beta02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta02 มีคอมมิตเหล่านี้
ข้อบกพร่องที่ทราบ
- ข้อบกพร่องใน
IconButtonColors
จะกำหนดdisabledContentColor
ให้กับอัลฟ่า (0.38f) ของLocalContentColor
โดยค่าเริ่มต้นแทนที่จะเป็นcontentColor
ที่ผู้ใช้ระบุ วิธีแก้ปัญหาเบื้องต้นคือการตั้งค่าdisabledContentColor
อย่างชัดเจน ปัญหานี้จะได้รับการแก้ไขในการเปิดตัวรุ่นถัดไป
การเปลี่ยนแปลง API
- เพิ่มความสามารถในการเปิดใช้เครื่องหมายแคร์ตของเคล็ดลับสำหรับ API
Tooltip
ธรรมดา (Ibf767) SwipeToDismissState
,rememberSwipeToDismiss
และSwipeToDismissValue
จะเปลี่ยนชื่อให้มี_SwipeToDismissBox_
ทั้งหมด (I68d6d)
การแก้ไขข้อบกพร่อง
- แก้ไขค่าการเว้นวรรคท้ายของ
ListItem
ให้สอดคล้องกับข้อกำหนด (Ibd68b, b/305342674) - ตอนนี้ระบบจะแมปสีเส้นขอบของการ์ดที่มีเส้นขอบกับ
OutlineVariant
อย่างถูกต้องแล้ว (I75480, b/310979715) - ตอนนี้สีแบบไดนามิกจะดึงมาจากบทบาทของสีที่ระบบกำหนด ซึ่งจะช่วยปรับปรุงคอนทราสต์สำหรับเนื้อหาที่เข้าถึงได้ และทำให้สีแบบเปลี่ยนอัตโนมัติสอดคล้องกับข้อกำหนดของ Material มากขึ้น (I1de96)
- แก้ไขการจัดการ
ModalBottomSheet
ย้อนกลับใน Android T/13 ขึ้นไปเมื่อandroid:enableOnBackInvokedCallback="true"
(I728dc, b/306196110)
เวอร์ชัน 1.2.0-beta01
13 ธันวาคม 2023
androidx.compose.material3:material3-*:1.2.0-beta01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-beta01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ทำเครื่องหมาย
TabIndicatorScope
ว่าเป็นเวอร์ชันทดลอง (I45c88) - นำ API ทดลองที่เลิกใช้งานแล้วสำหรับเคล็ดลับเครื่องมือออก (I438cb)
- เปลี่ยนโอเวอร์โหลด
TabRow
ใหม่ให้ไม่ต้องใช้องค์ประกอบย่อย ซึ่งจะส่งผลให้มีวิธีอื่นในการสร้างตัวบ่งชี้TabRow
ด้วยตัวแก้ไขที่กำหนดเอง (Ife741) - เลิกใช้งาน API ของ
DismissDirection
และDismissValue
โดยได้ผสานรวมเข้ากับSwipeToDismissValue
ซึ่งค่าจะระบุทั้งตำแหน่งและทิศทางของSwipeToDismissBox
ตอนนี้DismissState.progress
มีเครื่องหมายระบุว่าเป็นFloatRange
ระหว่าง0.0
ถึง1.0
เราได้นำเครื่องมือประหยัดและเครื่องมือสร้างDismissState
ที่เลิกใช้งานแล้วออกแล้วSwipeToDismiss
component, state และ defaults object ได้รับการทำเครื่องหมายว่าอยู่ระหว่างการทดสอบ (Ib54f2)
การแก้ไขข้อบกพร่อง
- ตอนนี้ตัวบ่งชี้เริ่มต้นสำหรับ
PullToRefresh
คือหัวลูกศรแบบเปิดแทนที่จะเป็นสามเหลี่ยมทึบ (I67be3)
เวอร์ชัน 1.2.0-alpha12
29 พฤศจิกายน 2023
androidx.compose.material3:material3-*:1.2.0-alpha12
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha12 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
RangeSlider
ตอนนี้ใช้ช่วง Kotlin (เช่น0f..1f
) แทนคลาสค่าFloatRange
ที่กำหนดเอง ตอนนี้SnapFlingBehavior.kt
ใช้ช่วง Kotlin ด้วย (I025cb)- ทำเครื่องหมายฟังก์ชันโรงงานของตัวแก้ไขเป็น
@Stable
(Ib109f)
เวอร์ชัน 1.2.0-alpha11
15 พฤศจิกายน 2023
androidx.compose.material3:material3-*:1.2.0-alpha11
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha11 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- ใช้
PullToRefreshContainer
และPullToRefreshState
ซึ่งทำงานร่วมกันเพื่อนำการดึงเพื่อรีเฟรชไปใช้ใน Material3 (I16456, b/261760718)
การเปลี่ยนแปลง API
- ทําเครื่องหมาย
SwipeToDismissBox
DismissDirection
และDismissValue
ว่าเป็นฟีเจอร์ทดลอง (I517b0) - เปลี่ยนชื่อ
SwipeToDismiss
เป็นSwipeToDismissBox
เปลี่ยนชื่อbackground
เป็นbackgroundContent
และdismissContent
เป็น Lambdacontent
ต่อท้าย (I7f4d3) - ทำให้ตัวสร้างสำหรับ
ChipElevation
และSelectableChipElevation
เป็นแบบสาธารณะ (Ie0c48, b/308432421) - กำลังเพิ่ม
ModalBottomSheetProperties
กำลังย้ายsecurePolicy
ไปยังModalBottomSheetProperties
เพิ่มisFocusable
และshouldDismissOnBackPress
ไปยังModalBottomSheetProperties
บูลีนใหม่เหล่านี้ช่วยกําหนดวิธีที่แผ่นด้านล่างแบบโมดัลควรจัดการเหตุการณ์ IME (Iea56f, b/278216859) - อัปเดตสถานะ
RangeSlider
และSlider
เพื่อนำinitialOnValueChange
, คำนำหน้าเริ่มต้น และ kdoc ที่เหมาะสมออก (I57d30) - เลิกใช้งานคลาส
ChipBorder
และการเรียกใช้ฟังก์ชันที่เกี่ยวข้อง ขอแนะนำให้ใช้BorderStroke
โดยตรงแทน (I89cc2) - ตอนนี้ Foundation Tooltip API พร้อมใช้งานแล้ว
@ExperimentalFoundationApi
(I30b0b) TabRow
และScrollableTabRow
ไม่ได้เลิกใช้งานแล้ว ระบบจะทําเครื่องหมายรูปแบบหลักและรูปแบบรองใหม่เป็นรูปแบบทดลอง (I0def6)- ตอนนี้ชิปตัวกรองและชิปอินพุตใช้
BorderStroke
โดยตรงแล้ว (I07a8d) - ตอนนี้
SegmentedButton
ใช้BorderStroke
โดยตรงแล้ว (I89b9b) - เปลี่ยนชื่อฟังก์ชัน
AlertDialog
ทั่วไปเป็นBasicAlertDialog
และเลิกใช้งานฟังก์ชันก่อนหน้า (Idbe52) - เปลี่ยนชื่อ
SwipeToDismiss
API เป็นSwipeDismiss
และเลื่อนระดับSwipeDismiss
API ใหม่เป็นเวอร์ชันที่เสถียร (I14cbe) - เพิ่ม
tonalElevation
และshadowElevation
ลงใน API ของเคล็ดลับเครื่องมือ นอกจากนี้ เราจะย้าย APITooltipBox
,PlainTooltip
และRichTooltip
กลับไปเป็นเวอร์ชันทดลองเนื่องจากมีการเผยแพร่เป็นเวอร์ชันเสถียรโดยไม่ตั้งใจ (If0f66, b/293939035) - เลื่อนระดับ API ของชิปทดลองเป็นเวอร์ชันเสถียร (Iea2c3)
- นำคำอธิบายประกอบ
@ExperimentalMaterial3Api
ออกจากการ์ดที่คลิกได้ของ Material3 (I88dbf)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่
SwipeToDismiss
จะขัดข้องในบางสถานการณ์ที่มีเลย์เอาต์ Lookahead และ Lazy ที่ซ้อนกัน (Ica8d1, b/297226562)
เวอร์ชัน 1.2.0-alpha10
18 ตุลาคม 2023
androidx.compose.material3:material3-*:1.2.0-alpha10
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha10 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- การเลื่อนระดับ
Badge
และBadgedBox
เป็นเวอร์ชันเสถียร (I67f16, b/261565132) - เพิ่ม
securePolicy
เป็นพารามิเตอร์ในModalBottomSheet
เพื่อให้ผู้ใช้กําหนดลักษณะการทํางานสําหรับWindowManager.LayoutParams.FLAG_SECURE
ได้ (Icdac8, b/296250262) - เพิ่มโอเวอร์โหลดใหม่ของ
LinearProgressIndicator
และCircularProgressIndicator
ที่ใช้progress
เป็น Lambda ซึ่งควรมีประสิทธิภาพมากกว่าเวอร์ชันก่อนหน้า (I824e6, b/295616656) - เปลี่ยนชื่อ
StandardSizeClasses
เป็นAllSizeClasses
(I8cb07) - รวมฟังก์ชันการคำนวณของคลาสขนาดหน้าต่าง (Iad935)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหา
DatePicker
ขัดข้องเมื่อคลิกปุ่มลูกศรนำทางอย่างรวดเร็วเมื่อเดือนที่แสดงอยู่ตรงขอบของช่วงปีที่อนุญาต (I46f36, b/290954897, b/297002119) - [แถบนำทาง] รองรับสีโปร่งใสสำหรับตัวบ่งชี้ (Ie0a9b, b/267289987)
เวอร์ชัน 1.2.0-alpha09
4 ตุลาคม 2023
androidx.compose.material3:material3-*:1.2.0-alpha09
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha09 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ย้ายข้อมูล
ModalNavigationDrawer
และDismissibleNavigationDrawer
ไปใช้AnchoredDraggable
API ใหม่DrawerState
animateTo
ถูกแทนที่ด้วยเมธอดเปิดและปิด และตอนนี้ออฟเซ็ตจะแสดงเป็น Float แทนที่จะเป็นออบเจ็กต์สถานะ คุณเข้าถึงการชดเชยได้โดยตรงผ่านcurrentOffset
(I0a72c) - มีการเพิ่มฟังก์ชันที่ไม่สามารถคอมโพสได้สำหรับการสร้าง
DatePickerState
และDateRangePickerState
โดยตรง สามารถใช้ฟังก์ชันเหล่านี้แทนฟังก์ชัน ComposablerememberDatePickerState
และrememberDateRangePickerState
ได้เมื่อจำเป็น (I70326, b/291524052) TabRows
แบบคงที่และเลื่อนได้มีตัวแปรหลักและรองแล้ว ซึ่งจะแมปกับลักษณะการทำงานของสีและตัวบ่งชี้อย่างถูกต้องตามที่กำหนดไว้ใน Material3PrimaryScrollableTabRow
และSecondaryScrollableTabRow
จะแสดงสถานะการเลื่อนแล้ว (Iec8f5, b/260572337)- เพิ่มพารามิเตอร์
sheetMaxWidth
ใหม่ที่นักพัฒนาแอปสามารถตั้งค่าเพื่อระบุความกว้างสูงสุดที่ชีตจะครอบคลุม คุณส่ง Dp.Unspecified สำหรับพารามิเตอร์ได้หากต้องการชีตที่ครอบคลุมความกว้างของหน้าจอทั้งหมด (Ifb7c9, b/266697696) - เพิ่ม API
PlainTooltipBox
และRichTooltipBox
กลับมาเป็นวิธีการที่เลิกใช้งานแล้ว (I246fa)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องเมื่อ
DatePicker
เริ่มต้นด้วยDatePickerFormatter
ที่มีโครงสร้างวันที่บางอย่างซึ่งยังคงเหมือนเดิมเมื่อแปลงเป็นรูปแบบวันที่ (เช่น YY) (I01f29)
เวอร์ชัน 1.2.0-alpha08
20 กันยายน 2023
androidx.compose.material3:material3-*:1.2.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha08 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลงพฤติกรรมที่ส่งผลกับส่วนอื่นในระบบ
ColorScheme
เปลี่ยนเป็น Immutable แล้ว ซึ่งทำให้การอัปเดตสีแต่ละรายการมีประสิทธิภาพน้อยลง แต่ทำให้การใช้สีที่พบบ่อยมีประสิทธิภาพมากขึ้น เหตุผลที่อยู่เบื้องหลังการเปลี่ยนแปลงนี้คือแอปส่วนใหญ่ไม่ได้มี Use Case หลักเป็นการอัปเดตสีแต่ละสี ยังคงทำได้ แต่จะมีการจัดองค์ประกอบใหม่มากกว่าเดิม ซึ่งจะช่วยลดจำนวนการสมัครใช้บริการสถานะผ่านโค้ด Material ทั้งหมดได้อย่างมาก และจะส่งผลต่อต้นทุนการเริ่มต้นและการรันไทม์ของ Use Case มาตรฐานมากขึ้น (Ic447d, b/297212873)- การยกระดับโทนสีจะไม่เคลื่อนไหวในสถานะการโต้ตอบต่างๆ อีกต่อไปเพื่อให้ตรงกับข้อกำหนด (Icdd12)
การเปลี่ยนแปลง API
- เพิ่ม
BottomAppBar
ใหม่ที่ใช้BottomAppBarScrollBehavior
เป็นพารามิเตอร์เพื่อซ่อนโดยอัตโนมัติเมื่อเลื่อนเนื้อหา นอกจากนี้ยังเพิ่มFabPosition.EndOverlay
ที่อนุญาตให้ FAB ซ้อนทับแถบแอปด้านล่างใน Scaffold แทนที่จะยึดไว้เหนือแถบแอป (Iecb47) - เพิ่มคอมโพเนนต์ป้ายกำกับแบบง่ายที่สร้างขึ้นบน
BasicTooltipBox
ซึ่งจะไม่ปิดเมื่อแตะนอกขอบเขตของป้ายกำกับ (I821f9)
การแก้ไขข้อบกพร่อง
- นำการใช้
rememberSaveable
สำหรับเคล็ดลับเครื่องมือออก (Icc131, b/299500338) - เปิดตัว Flag ชั่วคราวเพื่อควบคุมว่า Scaffold ควรวัดวิดเจ็ตย่อยในระหว่างการวัดหรือในระหว่างการจัดวาง โดยค่าเริ่มต้น ระบบจะวัดผลในเครื่องมือวัด หากพบปัญหาเกี่ยวกับลักษณะการทำงานใหม่ โปรดรายงานปัญหา (I0b354)
- ขอบถึงขอบแนวนอนคงที่ใน
BottomSheet
โดยใช้การวัดที่ถูกต้องสำหรับความกว้างของหน้าจออุปกรณ์ (I1df0c, b/299058752) - แก้ไขข้อบกพร่องที่
ModalBottomSheet
ไม่เรียกonDismissedRequest
เมื่อปิดโดยการปัดลงในชีต (Idfdd8)
เวอร์ชัน 1.2.0-alpha07
6 กันยายน 2023
androidx.compose.material3:material3-*:1.2.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha07 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เราได้เพิ่มการรองรับไอคอนที่พลิกอัตโนมัติใน
compose material 1.6.0-alpha05
โปรดดูรายละเอียดเกี่ยวกับไอคอนที่พลิกอัตโนมัติในหมายเหตุประจำรุ่น
การเปลี่ยนแปลง API
SliderState
ใช้DraggableState
(I9b116)- เปลี่ยนรูปร่างให้เป็นพารามิเตอร์ที่ต้องระบุ เปลี่ยนชื่อ
position
เป็นindex
ในฟังก์ชันตัวช่วยรูปร่าง (I34941) - อัปเดต
DatePicker
formatWithSkeleton
ให้มีแผนที่ที่ใช้เป็นแคชเพื่อปรับปรุงประสิทธิภาพ (I3195f) - เพิ่ม
BasicTooltipBox
ลงในcompose.foundation
และอัปเดตPlainTooltipBox
กับRichTooltipBox
ให้ใช้TooltipBox
กับ Composable ใหม่ของPlainTooltip
และRichTooltip
(I79e1d)
การแก้ไขข้อบกพร่อง
- ตอนนี้
dynamicLightColorScheme
และdynamicDarkColorScheme
จะแสดงสีที่มีโครมาสูงขึ้นสำหรับบทบาทของพื้นผิวและsurfaceContainer
(I5e901) - แก้ไขปัญหาที่คอมโพเนนต์บางรายการที่ใช้ Subcomposition (เช่น
BottomSheetScaffold
) ภายใน Scaffold ภายในLookaheadScope
พยายามอ่านขนาดเร็วเกินไป (I297b4, I871f1, b/295536718)
เวอร์ชัน 1.2.0-alpha06
23 สิงหาคม 2023
androidx.compose.material3:material3-*:1.2.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha06 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขการคำนวณ
DropdownMenu
ของoffset
เพื่อให้ค่าออฟเซ็ต x ขึ้นอยู่กับทิศทางการจัดวางในเครื่องเท่านั้น และค่าออฟเซ็ต y จะไม่กลับด้านอีกต่อไปเมื่อเมนูอยู่ใกล้ด้านล่างของหน้าจอ (Iccc74, b/294103942) - แก้ไขการคำนวณ
DropdownMenu
ของoffset
เพื่อให้ค่าออฟเซ็ต x ขึ้นอยู่กับทิศทางการจัดวางในเครื่องเท่านั้น และค่าออฟเซ็ต y จะไม่กลับด้านอีกต่อไปเมื่อเมนูอยู่ใกล้ด้านล่างของหน้าจอ (Ib87a2, b/294103942)
เวอร์ชัน 1.2.0-alpha05
9 สิงหาคม 2023
androidx.compose.material3:material3-*:1.2.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha05 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- การอัปเดตช่องทำเครื่องหมายและ
TriStateCheckbox
สีCheckboxDefaults.colors()
disabledUncheckedColor
จะมีผลกับเส้นขอบของช่องทําเครื่องหมายเท่านั้น กรณีพิเศษที่กำหนดให้คุณตั้งค่าสีช่องภายในเมื่อปิดใช้และไม่ได้เลือกต้องใช้อินสแตนซ์ที่สร้างขึ้นเองของCheckboxColors
ที่มีค่าสีที่ต้องการ (I77d17, b/291943198)
เวอร์ชัน 1.2.0-alpha04
26 กรกฎาคม 2023
androidx.compose.material3:material3-*:1.2.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- Experimental Segmented Button API (Ifc8fb)
- ตอนนี้ตัวคั่นมีพารามิเตอร์เพื่อควบคุมการวางแนวเพื่อรองรับตัวคั่นแนวตั้งแล้ว (I4c899, b/288438593)
การเปลี่ยนแปลง API
- เรากำลังย้ายการขึ้นอยู่กับความหนาแน่นไปยังระดับคอมโพเนนต์ โดยจะมีผลกับคอมโพเนนต์ต่อไปนี้
SwipeToDismiss
และคอมโพเนนต์ที่อิงตามชีต โปรดใช้การโอเวอร์โหลดใหม่ที่ระบุไว้ในกรณีที่ความหนาแน่นเป็นพารามิเตอร์ (I1846e) - คำอธิบายประกอบเพิ่มเติมเพื่อระบุอินพุตที่อนุญาตไปยัง Composable (Ief234)
- เพิ่มพารามิเตอร์ไอคอนลงในปุ่มที่แบ่งกลุ่ม แยกความหมายเพื่อให้เลือกปุ่มที่แบ่งกลุ่มเพื่อใช้การเลือกรายการเดียว และสลับเพื่อใช้การเลือกหลายรายการได้ โดยใช้
SelectableSegmentedButtonRow
และToggelableSegmentedButtonRow
ตามลำดับ (I38740) - เปลี่ยนชื่อตัวคั่นเป็น
HorizontalDivider
แล้ว เพิ่มฟังก์ชันVerticalDivider
(I5975c) - เปลี่ยนการใช้
ClosedFloatingPointRange
เป็นFloatRange
ที่มีน้ำหนักเบากว่าใน Material3 API เวอร์ชันทดลองเพื่อลดการแปลงอัตโนมัติ (I4aab5) - เพิ่มการจัดแนวเริ่มต้นใหม่สำหรับ
FabPosition
(Ib7aea, b/170592777)
การแก้ไขข้อบกพร่อง
ModalBottomSheet
เคารพทิศทางการจัดวางในพื้นที่ (Ib4f44, b/285628622)
เวอร์ชัน 1.2.0-alpha03
21 มิถุนายน 2023
androidx.compose.material3:material3-*:1.2.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลงลักษณะการทำงาน
- ตอนนี้
includeFontPadding
เป็นfalse
โดยค่าเริ่มต้นในตัวอักษร Material 3 นอกจากนี้ เรายังได้เปลี่ยนรูปแบบความสูงของบรรทัดเริ่มต้นเป็นTrim.None
และAlignment.Center
รวมถึงเพิ่มlineHeight
ที่ชัดเจน (ใน sp) ลงในTextStyle
ของTypography
ด้วย โปรดดูเอกสาร API หากต้องการปรับแต่งค่าเหล่านี้ และดูบล็อกโพสต์เพื่อดูคำอธิบายโดยละเอียดเกี่ยวกับการเปลี่ยนแปลงเหล่านี้ (I6266f, Icabc3)
ฟีเจอร์ใหม่
- เพิ่มการโอเวอร์โหลดสำหรับ
RangeSlider
ซึ่งเป็นเวอร์ชันที่มีสถานะของคอมโพเนนต์ สร้างRangeSliderState
ที่เก็บข้อมูลทั้งหมดของแทร็กที่ใช้งานอยู่ปัจจุบัน การวัดค่าของคอมโพเนนต์ของRangeSlider
รวมถึงตรรกะการลากและท่าทางสัมผัส (I8c270) - ตอนนี้แถบค้นหารองรับเงาผ่านพารามิเตอร์
shadowElevation
ที่เพิ่มเข้ามาใหม่แล้ว (Ia5369, b/271040353) ColorScheme
รองรับSurfaceContainer
บทบาทใหม่แล้ว- ตอนนี้คุณปิดใช้การซ้อนทับระดับความสูงของพื้นผิวได้แล้วด้วยการจัดองค์ประกอบ
LocalTonalElevationEnabled
(Ic203c, b/277774590)
การเปลี่ยนแปลง API
- เปิดตัวสร้างสีของคอมโพเนนต์ (I8c4a6)
- เพิ่มพารามิเตอร์ที่โฟกัสได้ลงในทั้ง 2 API ของเคล็ดลับ เพื่อให้นักพัฒนาซอฟต์แวร์สามารถเลือกให้เคล็ดลับใช้เหตุการณ์การแตะหรือไม่ก็ได้ โปรดระวังว่าการดำเนินการนี้อาจทำให้การไปยังส่วนต่างๆ โดยอัตโนมัติของโฟกัสการช่วยเหลือพิเศษหยุดทำงาน (Ie32d8)
- การเพิ่มประสิทธิภาพการช่วยเหลือพิเศษเพื่อการจัดสรรประสิทธิภาพและหน่วยความจำ (Iede48)
- เปิดเผย
DefaultSizeClasses
และสร้างStandardSizeClasses
สำหรับWindowSizeClasses
(I91838) - เปลี่ยน
WindowWidth/HeightSizeClass
เป็นคลาสค่าลอย (Ie686e)
การแก้ไขข้อบกพร่อง
- ตอนนี้พารามิเตอร์
contentWindowInsets
ของ Scaffold จะพิจารณา Inset ของหน้าต่างที่ใช้แล้ว โปรดทราบว่าลักษณะการทำงานของการเว้นวรรคเนื้อหาตามtopBar
และbottomBar
จะยังคงไม่เปลี่ยนแปลงเมื่อมีการระบุพารามิเตอร์เหล่านี้ (I08b73, b/264601542) - แก้ไขการจัดแนวของแถบแอปด้านบนตรงกลางเพื่อให้มั่นใจว่าชื่อที่ยาวจะไม่แสดงทับไอคอนการดำเนินการหรือไอคอนการนำทาง (I4369f, b/236994621)
- ตอนนี้ตำแหน่งแท็บจะบังคับใช้ความกว้างขั้นต่ำของเนื้อหาที่ 24.dp ซึ่งจะช่วยให้แตะตัวบ่งแท็บได้ง่าย (Id8861)
- ตอนนี้ชุดสีแบบไดนามิกจาก
dynamicLightColorScheme
และdynamicDarkColorScheme
รองรับบทบาทใหม่ของแพลตฟอร์มแล้ว (I1252e) - อัปเดตการจัดแนวการแจ้งเตือนด้วยป้ายเพื่อไม่ให้ตัดเมื่อทับซ้อนกับปู่ทวด (Idf75a)
เวอร์ชัน 1.2.0-alpha02
24 พฤษภาคม 2023
androidx.compose.material3:material3-*:1.2.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มพารามิเตอร์ระยะขอบหน้าต่างใน
ModalBottomSheet
- ตอนนี้สามารถวาดขอบมืดสำหรับ
ModalBottomSheet
ไว้ด้านหลังแถบสถานะได้แล้วโดยตั้งค่าwindowInsets
เป็น 0 - อัปเดตฟังก์ชันการทำงานเริ่มต้นของ
ModalBottomSheet
เพื่อให้อยู่นอกแถบระบบ รวมถึงการนำทาง - การจัดการระยะขอบของแถบสถานะจะดำเนินการโดยแฮนเดิลการลากในโหมดขอบถึงขอบ
BottomSheetDefaults
มีส่วนที่เว้นไว้ในหน้าต่างสำหรับBottomSheetWindow
(I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- ตอนนี้สามารถวาดขอบมืดสำหรับ
- เลิกใช้งาน
Indicator
และเพิ่มPrimary
/SecondaryIndicator
ให้ตรงกับข้อกำหนดของ M3PrimaryIndicator
จะตรงกับความกว้างของเนื้อหาของแท็บ ในขณะที่SecondaryIndicator
จะครอบคลุมความกว้างทั้งหมดที่ใช้ได้SecondaryIndicator
เทียบเท่ากับIndicator
ที่เลิกใช้งานแล้วในตอนนี้ และสามารถใช้แทนกันได้โดยตรง (I27604) - เพิ่มตัวเลือกในการส่ง
ScrollState
เมื่อสร้างDropdownMenu
หรือExposedDropdownMenu
เพื่อควบคุมสถานะการเลื่อนแนวตั้งของรายการเมนูที่แสดง (Ia0734, b/185304441) - เพิ่มการโอเวอร์โหลดสำหรับ
Slider
ซึ่งเป็นเวอร์ชันที่มีสถานะของคอมโพเนนต์ สร้างSliderState
ที่เก็บข้อมูลทั้งหมดของแทร็กที่ใช้งานอยู่ปัจจุบัน การวัดค่าของคอมโพเนนต์ของSlider
รวมถึงตรรกะการลากและท่าทางสัมผัส (I124a5) - เปลี่ยนชื่อพร็อพเพอร์ตี้ Semantics
isContainer
เป็นisTraversalGroup
(I121f6) - เพิ่ม
TextStyle.merge(...)
ที่เพิ่มประสิทธิภาพพร้อมรายการพารามิเตอร์ทั้งหมด (Iad234, b/246961787) - สร้างอินเทอร์เฟซสาธารณะ
TooltipState
,RichTooltipState
และPlainTooltipState
เพิ่มRichTooltipStateImpl
และPlainTooltipStateImpl
สำหรับสถานะเริ่มต้น เพิ่มฟังก์ชันremember*State
เพื่อรับสถานะที่ใช้งานเหล่านี้ นำTooltipSync
ออกเพื่อใช้TooltipDefault.GlobalMutatorMutex
แทน (I7813d) - อัปเดต
DatePickerColors
เพื่อรวมตัวเลือกการปรับแต่งเพิ่มเติมสำหรับตัวคั่นเครื่องมือเลือกวันที่ การนำทาง และสีของช่องป้อนข้อความ (I1a685, b/274626815) - ตอนนี้
DatePickerState
และDateRangePickerState
เป็นอินเทอร์เฟซสาธารณะที่มีการติดตั้งใช้งานเริ่มต้นซึ่งrememberDatePickerState
และrememberDateRangePickerState
สามารถเรียกข้อมูลได้ (I71c52) - นำ
dateValidator
ออกจากDatePicker
และDateRangePicker
และเปิดตัวอินเทอร์เฟซSelectableDates
ที่ตั้งค่าในสถานะเพื่อควบคุมวันที่หรือปีที่เลือกได้ใน UI (Ic2fc6) TimePicker
นำออกจาก API ที่เสถียรแล้ว คาดว่าจะมีการเปลี่ยนแปลงเพิ่มเติมใน State API (I3f39a)ModalBottomSheet
ย้ายไปใช้ Android เท่านั้น ไม่แนะนำให้ใช้ModalBottomSheet
บนเดสก์ท็อป และฟังก์ชันนี้จะไม่ได้รับการบำรุงรักษาอย่างต่อเนื่อง (Ib3778)
การแก้ไขข้อบกพร่อง
- แก้ไข
AlertDialog
การดำเนินการปิดให้ปรากฏใต้การดำเนินการยืนยันเมื่อการดำเนินการซ้อนทับกันเพื่อให้พอดีกับความกว้างของกล่องโต้ตอบ การแก้ไขนี้จะปรับการใช้งานให้สอดคล้องกับข้อกำหนดของ Material Design (I029de, b/235454277) - แก้ไขข้อบกพร่องใน
ListItem
ที่ใช้ระยะห่างที่ไม่ถูกต้องสำหรับรายการโฆษณา 3 บรรทัด (I6e235) ModalBottomSheet
ตอนนี้สามารถแสดงแป้นพิมพ์ IME ได้แล้ว (Idc508, b/262140644, b/268380384, b/272483584)
เวอร์ชัน 1.2.0-alpha01
10 พฤษภาคม 2023
androidx.compose.material3:material3:1.2.0-alpha01
และ androidx.compose.material3:material3-window-size-class:1.2.0-alpha01
เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตต่อไปนี้
เวอร์ชัน 1.1
เวอร์ชัน 1.1.2
20 กันยายน 2023
androidx.compose.material3:material3:1.1.2
และ androidx.compose.material3:material3-window-size-class:1.1.2
เปิดตัวแล้ว เวอร์ชัน 1.1.2 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขการส่งตัวแก้ไขไปยัง Composable 2 รายการอย่างไม่ถูกต้อง (b/282761472)
- แก้ไขปัญหาที่
TimePickerState
แสดงชั่วโมงไม่ถูกต้องเมื่อเริ่มต้นด้วย 23 ชั่วโมง (b/278242122) - แก้ไขสถานะการสลับเริ่มต้นสำหรับการตรวจสอบชั่วโมงและนาที (b/269768197, b/282790635)
- แก้ไข
state.hour
ที่แสดงค่าไม่ถูกต้องสำหรับเวลา 23:00 น. (b/282761472, b/278242122)
เวอร์ชัน 1.1.1
21 มิถุนายน 2023
androidx.compose.material3:material3:1.1.1
และ androidx.compose.material3:material3-window-size-class:1.1.1
เปิดตัวแล้ว เวอร์ชัน 1.1.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เพิ่มการเรียกใช้สำหรับ
ModalBottomSheet
โดยไม่มีพารามิเตอร์windowInset
เพื่อให้เข้ากันได้แบบไบนารี (Ib7959) - เพิ่มพารามิเตอร์ระยะขอบหน้าต่างใน
ModalBottomSheet
- ตอนนี้สามารถวาดขอบมืดสำหรับ
ModalBottomSheet
ไว้ด้านหลังแถบสถานะได้แล้วโดยตั้งค่าwindowInsets
เป็น 0 - อัปเดตฟังก์ชันการทำงานเริ่มต้นของ
ModalBottomSheet
เพื่อให้อยู่นอกแถบระบบ รวมถึงการนำทาง - การจัดการระยะขอบของแถบสถานะจะดำเนินการโดยแฮนเดิลการลากในโหมดขอบถึงขอบ
BottomSheetDefaults
มีส่วนที่เว้นไว้ในหน้าต่างสำหรับBottomSheetWindow
(I31200, b/274872542, b/272973615, b/272334475, b/268432129, b/275849044, b/275486106, b/268433162)
- ตอนนี้สามารถวาดขอบมืดสำหรับ
เวอร์ชัน 1.1.0
10 พฤษภาคม 2023
androidx.compose.material3:material3:1.1.0
และ androidx.compose.material3:material3-window-size-class:1.1.0
เปิดตัวแล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้
ฟีเจอร์หลักของ 1.1.0
คอมโพเนนต์ Material Design 3 ใหม่
การปรับปรุงคอมโพเนนต์ Material Design 3 ที่มีอยู่
เลื่อนระดับ API ทดลองเป็น API ที่เสถียร
โปรดดูรายละเอียดเพิ่มเติมในบล็อกโพสต์นี้
เวอร์ชัน 1.1.0-rc01
19 เมษายน 2023
androidx.compose.material3:material3:1.1.0-rc01
และ androidx.compose.material3:material3-window-size-class:1.1.0-rc01
เปิดตัวแล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
TimePicker
นำออกจาก API ที่เสถียรแล้ว คาดว่าจะมีการเปลี่ยนแปลงเพิ่มเติมใน State API (I3f39a)ModalBottomSheet
ย้ายไปใช้ Android เท่านั้น ไม่แนะนำให้ใช้ModalBottomSheet
บนเดสก์ท็อป และฟังก์ชันนี้จะไม่ได้รับการบำรุงรักษาอย่างต่อเนื่อง (Ib3778)
เวอร์ชัน 1.1.0-beta02
5 เมษายน 2023
androidx.compose.material3:material3:1.1.0-beta02
และ androidx.compose.material3:material3-window-size-class:1.1.0-beta02
เปิดตัวแล้ว เวอร์ชัน 1.1.0-beta02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
SheetState
มีพารามิเตอร์skipHiddenState
ที่ไม่บังคับแล้วrememberStandardBottomSheetState
มีพารามิเตอร์skipHiddenState
ที่ไม่บังคับแล้วBottomSheetScaffold
มีแองเคอร์ที่ซ่อนอยู่แล้ว แต่จะปิดใช้โดยค่าเริ่มต้น- อัปเดตเอกสารประกอบ
SheetState.requireOffset
แล้ว - เปลี่ยนชื่อ
BottomSheetDefaults.MinimizedShape
เป็นBottomSheetDefaults.HiddenShape
(I839f4, b/273870234) แล้ว
การแก้ไขข้อบกพร่อง
- อย่าเปลี่ยนหน้าปัดจากชั่วโมงเป็นนาทีเมื่อเปิดใช้การสำรวจด้วยการแตะ (I717d0)
- ตอนนี้ระบบได้ผสานรวมความหมายของแฮนเดิลการลาก
ModalBottomSheet
และBottomSheetScaffold
แล้ว (I05afb) - ตอนนี้พารามิเตอร์
BottomSheetScaffold
,containerColor
และcontentColor
จะมีผลกับเนื้อหาเท่านั้น (I992cb) BottomSheetScaffold nestedScroll
สำหรับเนื้อหาชีตจะใช้การปัดแล้ว (I992cb)
เวอร์ชัน 1.1.0-beta01
22 มีนาคม 2023
androidx.compose.material3:material3:1.1.0-beta01
และ androidx.compose.material3:material3-window-size-class:1.1.0-beta01
เปิดตัวแล้ว เวอร์ชัน 1.1.0-beta01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มพารามิเตอร์ประเภทเลย์เอาต์ไปยัง
TimePicker
ที่ใช้ร่วมกันได้ ซึ่งช่วยให้ใช้เลย์เอาต์ต่างๆ ได้ตามการกำหนดค่าหน้าจอ (Ia0e16) SearchBarDefaults
ได้รับการทำเครื่องหมายว่าอยู่ในขั้นทดลอง (I65561)- เพิ่มระดับเงาไปยัง
BottomSheetScaffold
(I94e0f) - เพิ่มการรองรับการแสดงเครื่องมือเลือกวันที่โดยไม่มีส่วนหัว การเปลี่ยนแปลง API เพื่ออนุญาตให้ส่งผ่านส่วนหัวเป็น Null เมื่อสร้างเครื่องมือเลือกวันที่ ตอนนี้คุณส่งบรรทัดแรก ชื่อ และ
showToggleMode = false
เป็นค่า Null เพื่อแสดงเครื่องมือเลือกแบบไม่มีส่วนหัวได้แล้ว (Id3f3a, b/266132421, b/267194809)
การแก้ไขข้อบกพร่อง
- ตอนนี้แถบค้นหาจะล้างโฟกัสโดยอัตโนมัติเมื่อไม่ได้ใช้งาน (I22a7c, b/261444487)
- อัปเดต
DateRangePicker
เพื่อให้เลือกช่วงที่มีวันที่เดียวกันสำหรับวันที่เริ่มต้นและวันที่สิ้นสุดได้ (I16529, b/272882497) - ตอนนี้ช่องข้อความจะจัดตำแหน่งองค์ประกอบข้อความอย่างถูกต้องเมื่อขนาดแบบอักษรเล็กกว่าที่คาดไว้ ซึ่งอาจส่งผลให้แอปมีการเปลี่ยนแปลงเล็กน้อยในระดับพิกเซลตามการตั้งค่าแบบอักษรและสคริปต์ (I8b8d0)
- ตอนนี้การดำเนินการเชิงความหมายของ Bottom Sheet มีป้ายกำกับแล้ว (I277b0)
เวอร์ชัน 1.1.0-alpha08
8 มีนาคม 2023
androidx.compose.material3:material3:1.1.0-alpha08
และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha08
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha08 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับ
BottomSheetScaffold
และBottomSheetScaffoldState
(I063d4)
การเปลี่ยนแปลง API
- เพิ่มฟังก์ชันการทำงานให้กับ
DatePickerState
และDateRangePickerState
เพื่อให้ตั้งค่าวันที่ได้หลังจากสร้างสถานะครั้งแรก รวมถึงรีเซ็ตการเลือกโดยการตั้งค่าการประทับเวลาเป็น Null การตั้งค่าวันที่ด้วยตนเองควรทำด้วยความระมัดระวัง และฟังก์ชันsetSelection
ใหม่จะแสดงข้อยกเว้นในกรณีที่วันที่ที่ระบุไม่เป็นไปตามข้อกำหนดเบื้องต้น (ดูเอกสารประกอบ) (Ifa645, b/268609314, b/270427389) - เปลี่ยนชื่อ Collapsed
SheetValue
เป็นPartiallyExpanded
เพื่อแสดงลักษณะการทำงานในสถานะนี้ได้อย่างแม่นยำและยืดหยุ่นยิ่งขึ้น (Ia1491) - อัปเดตชื่อพารามิเตอร์
ListItem
เป็น _content แทน _text ตอนนี้ตัวรับค่าเริ่มต้นคือReadOnlyComposables
ในกรณีที่เกี่ยวข้อง (I69a25) - เลื่อนระดับ API แบบอินเทอร์แอกทีฟของ Surface จากเวอร์ชันทดลอง (I90d59, b/261561812)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ระบบคำนวณสถานะของ
ModalBottomSheet
HalfExpanded
ไม่ถูกต้องและชีตจะปรากฏเป็นชีตลอย (I45e84, b/268411386) - เพิ่มเครื่องหมายถูก
confirmValueChange
ในการแตะขอบสำหรับModalBottomSheet
(I2311a, b/270425759) - ย้าย
BottomSheet
การดำเนินการเชิงความหมายไปยังแฮนเดิลลาก (I158ba) ModalBottomSheet
ตอนนี้จะสั่งให้โฟกัสเมื่อเปิดใช้และจัดการปุ่มย้อนกลับ (I4d2ab)- ตอนนี้ระบบจะจัดการ
ModalBottomSheet onDismissRequest
ระหว่างการปัดเพื่อเลื่อนที่ซ้อนกันด้วย (I655c5, b/268433166)
เวอร์ชัน 1.1.0-alpha07
22 กุมภาพันธ์ 2023
androidx.compose.material3:material3:1.1.0-alpha07
และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha07
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha07 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม Composable ของอินพุตเวลาที่ใช้ได้กับ
rememberTimePickerState()
โดยจะเป็นไปตามข้อกำหนด M3 สำหรับอินพุตเวลา (Ia4fab) - เพิ่ม
DateRangePicker
API ของ Material 3 สำหรับการเลือกช่วงวันที่ (I7a6c3, b/267194809) - เพิ่มการรองรับโหมดป้อนข้อมูล Material 3 สำหรับการเลือกช่วงวันที่ผ่าน
DateRangePicker
API (Ifdbc4) - ตอนนี้สีของช่องข้อความอนุญาตให้ปรับแต่งได้แล้ว ดังนี้
- สีของช่องป้อนข้อมูลและข้อความตัวยึดตำแหน่งตามสถานะโฟกัสและข้อผิดพลาด เปลี่ยนชื่อพารามิเตอร์
textColor
เป็นunfocusedTextColor
และเปลี่ยนชื่อplaceholderColor
เป็นunfocusedPlaceholderColor
- สีคอนเทนเนอร์สำหรับช่องข้อความที่กรอกตามสถานะข้อผิดพลาดด้วย
errorContainerColor
ใหม่
- สีของช่องป้อนข้อมูลและข้อความตัวยึดตำแหน่งตามสถานะโฟกัสและข้อผิดพลาด เปลี่ยนชื่อพารามิเตอร์
- สีของช่องข้อความเมนูแบบเลื่อนลงที่แสดงได้รับการอัปเดตด้วยพารามิเตอร์เพื่อรองรับ API คำนำหน้าและคำต่อท้ายใหม่ (I9c8b4, b/254284181, b/264766350)
การเปลี่ยนแปลง API
- เปลี่ยนกลับ Slider API บางเวอร์ชันและนำการโอเวอร์โหลดของ Slider ที่ซ้ำซ้อนออก ซึ่งจะครอบคลุมโดย Slider เวอร์ชันทดลองใหม่ที่มีภาพขนาดย่อและแทร็กที่กำหนดเอง กำลังเลื่อนระดับ
RangeSlider
ให้เสถียร (Ie8fbd) - เปลี่ยนชื่อ
defaultElevation
เป็นelevation
ในฟังก์ชันระดับความสูงของชิป (I0f872) - API ของช่องข้อความ Material 3 ต่อไปนี้ไม่ใช่เวอร์ชันทดลองอีกต่อไป
TextField
,OutlinedTextField
,textFieldWithLabelPadding
,textFieldWithoutLabelPadding
,outlinedTextFieldPadding
(Ieb5c0, b/261561819) TimePickers
is24Hour
ใช้การตั้งค่าระบบ (I18856)- นำคำอธิบายประกอบเวอร์ชันทดลองออกจาก Scaffold API (Ibb51e, b/261565765, b/261436953)
การแก้ไขข้อบกพร่อง
ModalBottomSheet
รูปร่างเริ่มต้นจะเป็นSheetDefaults.ExpandedShape
เสมอ (I0dfca)- การปรับปรุงการช่วยเหลือพิเศษสำหรับ Material 3
DatePicker
และDateRangePicker
(I5087e) - แก้ไขข้อบกพร่องที่ทำให้มีการส่งต่อข้อจำกัดความสูงสูงสุดและอาจทำให้เกิดข้อขัดข้อง (I30d8c)
- นำบทบาทเชิงความหมายออกจากพื้นผิวที่คลิกได้และเลือกได้ อัปเดตคอมโพเนนต์ที่ใช้บทบาทเหล่านั้นเพื่อตั้งค่าบทบาทโดยใช้ modifier.semantics (I793d9)
เวอร์ชัน 1.1.0-alpha06
8 กุมภาพันธ์ 2023
androidx.compose.material3:material3:1.1.0-alpha06
และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha06
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha06 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ตอนนี้ฟิลด์ข้อความรองรับข้อความคำนำหน้าและคำต่อท้ายแล้ว (Ia8578, b/179884561)
- เพิ่มฟังก์ชัน
TimePicker
เพื่อแสดงเครื่องมือเลือกเวลาตามข้อกำหนดของ Material 3 ซึ่งใช้ร่วมกับTimePickerState
และเมธอดอำนวยความสะดวกrememberTimePickerState
(I71910) - ตอนนี้อินพุตวันที่อยู่ในโหมดแสดงที่
DatePicker
เพิ่มการรองรับการสลับระหว่างโหมดตัวเลือกวันที่และโหมดการป้อนวันที่ (Ieeff7) - เพิ่ม API สำหรับ
RichTextTooltips
แล้ว (I58ef3) - การใช้งาน Modal Bottom Sheet สำหรับ Material 3 ซึ่งรวมถึง
ModalBottomSheet
และModalBottomSheetDefaults
นอกจากนี้ ยังเปิดตัวSheetState
และrememberSheetState
ซึ่งใช้กับคอมโพเนนต์ชีตในอนาคตได้ (I0853a, b/244189383)
การเปลี่ยนแปลง API
- ทำให้ API
showSnackbar
เสถียร (I195c2, b/261424370) - ทำให้ API สำหรับชิปความช่วยเหลือและชิปคำแนะนำเสถียร (Ibb67b, b/261424370)
- เลื่อนระดับ API
ListItem
,ListItemDefaults
และListItemColors
เป็นแบบที่ไม่ใช่เวอร์ชันทดลอง (I7e7fa, b/261438882) - เลื่อนระดับ
SliderPositions
,SliderDefaults.Thumb
และSliderDefaults.Track
เป็นเวอร์ชันเสถียร และเพิ่ม APISlider
และRangeSlider
ที่ไม่ใช่เวอร์ชันทดลองซึ่งมีภาพปกและแทร็กที่กำหนดเอง นอกจากนี้ เรายังจะเลิกใช้งาน API ของSlider
และRangeSlider
ก่อนหน้าด้วย (Ie5ea6, b/261566890) - ตั้งค่าเป็นสาธารณะ
Modifier.tooltipAnchor()
เพื่อให้นักพัฒนาแอปส่งไปยัง Anchor เพื่อระบุว่าควรแสดงเคล็ดลับเครื่องมือเมื่อกดค้าง อัปเดตPlainTooltipBox
API เพื่อไม่ให้TooltipState
เป็นค่าที่กำหนดให้เป็น Null ได้อีกต่อไป และตอนนี้มีค่าเริ่มต้นแล้ว (Ie2fb7) ProgressIndicatorDefaults.circularTrackColor
ได้รับการทำเครื่องหมายเป็น@Composable
เพื่อให้สอดคล้องกัน (Id29cc)- คืนค่าเครื่องมือรับพร็อพเพอร์ตี้
LocalMinimuTouchTargetEnforcement
และทําเครื่องหมายว่าเลิกใช้งานแล้ว รวมถึงเปลี่ยนเส้นทางไปยังLocalMinimumInteractiveComponentEnforcement
(I60dd5)
เวอร์ชัน 1.1.0-alpha05
26 มกราคม 2023
androidx.compose.material3:material3:1.1.0-alpha05
และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha05
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha05 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
DatePickerDialog
และการสนับสนุนการช่วยเหลือพิเศษ- เพิ่มภาพปกและแทร็กที่กำหนดเองไปยัง
RangeSlider
การอัปเดตการขึ้นต่อกัน
- ตอนนี้
Compose UI
และCompose Material
ต้องใช้ Lifecycle 2.6.0
เวอร์ชัน 1.1.0-alpha04
11 มกราคม 2023
androidx.compose.material3:material3:1.1.0-alpha04
และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha04
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
DatePicker
API เริ่มต้นสำหรับการเลือกวันที่เดียวผ่าน UI ปฏิทิน API นี้ยังอยู่ระหว่างการเปลี่ยนแปลง (I722b9)- เพิ่มการรองรับเคล็ดลับเครื่องมือแบบข้อความธรรมดาผ่าน
PlainTooltipBox
(I0cdfb) - แถบค้นหา (Iad128)
SwipeToDismiss
(I458a8, b/242889540)
การเปลี่ยนแปลง API
- เพิ่มพร็อพเพอร์ตี้ความหมาย
IsContainer
ใน Surfaces ระบบจะใช้พร็อพเพอร์ตี้นี้ในการเปลี่ยนแปลงในภายหลังซึ่งจะกำหนดลำดับการข้ามตามความหมายเชิงความหมายขององค์ประกอบต่างๆ เช่น พื้นผิว (I63379) - ทําเครื่องหมาย API ที่เกี่ยวข้องกับลิ้นชักการนําทางเป็นแบบเสถียร (Iab01e, b/261439597)
- เพิ่มพารามิเตอร์สีของเส้นสำหรับสัญญาณบอกสถานะความคืบหน้าแบบวงกลม และพารามิเตอร์การปิดเส้นสำหรับสัญญาณบอกสถานะความคืบหน้าทั้งแบบวงกลมและแบบเชิงเส้น (Ie668c, b/216325962, b/222964817)
- ความสามารถในการเป็นค่าว่างของประเภทการคืนค่าเพิ่มเติมของฟังก์ชันที่เลิกใช้งานแล้วและซ่อนอยู่ (Ibf7b0)
- เพิ่ม
Modifier.minimumInteractiveComponentSize
โดยสามารถใช้เพื่อสำรองขนาดอย่างน้อย 48.dp เพื่อแยกความแตกต่างของการโต้ตอบแบบสัมผัสหากองค์ประกอบมีขนาดเล็กกว่า (I33f58, b/258495559) - เพิ่ม API เวอร์ชันทดลองสำหรับ
AlertDialog
composable ที่มีช่องเนื้อหา (Iec4a2)
การแก้ไขข้อบกพร่อง
- ตอนนี้ความคืบหน้าของตัวบ่งชี้ความคืบหน้าจะอยู่ในช่วงที่คาดไว้แล้ว (I8a7eb, b/262262727)
ปัญหาที่ทราบ
- เมื่ออัปเดตจาก
androidx.compose.foundation:1.4.0-alpha03
เป็นandroidx.compose.foundation:1.4.0-alpha04
คุณอาจพบข้อผิดพลาดjava.lang.NoSuchFieldError
ที่นี่คือจุดที่รายงานปัญหาในตอนแรก เราได้ส่งการแก้ไขแล้ว และการแก้ไขนี้จะพร้อมใช้งานในการอัปเดต Compose ครั้งถัดไป วิธีแก้ปัญหาชั่วคราวคืออัปเดตไลบรารีandroidx.compose.material
และandroidx.compose.material3
เป็นเวอร์ชันล่าสุด(1.1.0-alpha04) หรือดาวน์เกรดandroidx.compose.foundation
เป็น 1.4.0-alpha03
เวอร์ชัน 1.1.0-alpha03
7 ธันวาคม 2022
androidx.compose.material3:material3:1.1.0-alpha03
และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha03
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha03 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
consumedWindowInsets()
เป็นconsumeWindowInsets()
และwithConsumedWindowInsets()
เป็นonConsumedWindowInsetsChanged()
รวมถึงทำให้ตัวแก้ไขเป็นแบบสาธารณะ (Ie44e1) - เพิ่มการเว้นวรรคเนื้อหาเริ่มต้นใหม่สำหรับปุ่มข้อความที่มีไอคอนเพื่อใช้ (I8f662)
- เพิ่มสีที่ปิดใช้สำหรับแถบนำทางและแถบด้านข้าง (Ia7892, b/258867034)
- เพิ่ม Modifier API เพื่อค้นหาข้อมูลการเลื่อนขององค์ประกอบระดับบน (I2ba9d, b/203141462)
- ใช้ใน
Clickable
เพื่อหน่วงเวลาการโต้ตอบการกดอย่างถูกต้อง เมื่อท่าทางสัมผัสอาจกลายเป็นเหตุการณ์การเลื่อน - แก้ไขปัญหาที่
Clickables
ไม่หน่วงเวลาการกระเพื่อมอย่างถูกต้องเมื่อใช้ภายในScrollable ViewGroup
- อัปเดตลิ้นชักและชีตเพื่อหน่วงเวลาการกดอย่างถูกต้องในกรณีที่ท่าทางสัมผัสอาจกลายเป็นเหตุการณ์การเลื่อน
การอัปเดตการขึ้นต่อกัน
Compose UI
และCompose Material
ตอนนี้ต้องใช้ Lifecycle 2.5.1 (I05ab0, b/258038814)
เวอร์ชัน 1.1.0-alpha02
9 พฤศจิกายน 2022
androidx.compose.material3:material3:1.1.0-alpha02
และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha02
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
awaitFirstDown
และwaitForUpOrCancellation
ตอนนี้ยอมรับPointerEventPass
เพื่อความยืดหยุ่นที่มากขึ้น (ยังแก้ไขExposedDropdownMenuBox
ที่แสดงเมนูขณะเลื่อนด้วย)(I7579a, b/212091796)- เพิ่มพารามิเตอร์
minLines
ลงในข้อความ Material และ Material3TextField
และOutlinedTextField
ซึ่งช่วยให้ตั้งค่าความสูงขั้นต่ำของคอมโพเนนต์ในแง่ของจำนวนบรรทัดได้ (I4af1d) - เลิกใช้งานฟังก์ชัน
TopAppBarDefaults smallTopAppBarColors
เพื่อให้ใช้ฟังก์ชันtopAppBarColors
ใหม่แทน ซึ่งควรใช้เมื่อสร้างTopAppBar
(Ie6cb9) - เพิ่มพารามิเตอร์
minLines
ลงในBasicText
และBasicTextField
ซึ่งช่วยให้ตั้งค่าความสูงขั้นต่ำของ Composable เหล่านี้ในแง่ของ จำนวนบรรทัด (I24294, b/122476634)
การแก้ไขข้อบกพร่อง
- ตัดเนื้อหาของ
IconButton
และIconToggleBotton
ของ Material3 ให้เป็นรูปร่างเลเยอร์สถานะของคอมโพเนนต์ (เช่น รูปร่างวงกลม) (I9da8f) - อัปเดตแถบแอปด้านบนขนาดกลางและขนาดใหญ่ของ Material3 เพื่อใช้สีพื้นหลังเดียวกันทั่วทั้งพื้นผิว และอนุญาตให้ตั้งค่าการลบล้างสีเริ่มต้นด้วยค่าสีโปร่งใส (I67659, b/249688556, b/250838918)
เวอร์ชัน 1.1.0-alpha01
24 ตุลาคม 2022
androidx.compose.material3:material3:1.1.0-alpha01
และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha01
เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขแถบแอปด้านบนเมื่อใช้ชื่อกับ TextStyle และ Brush (If667e)
รุ่น 1.0
เวอร์ชัน 1.0.1
9 พฤศจิกายน 2022
androidx.compose.material3:material3:1.0.1
และ androidx.compose.material3:material3-window-size-class:1.0.1
เปิดตัวแล้ว เวอร์ชัน 1.0.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- อัปเดตแถบแอปด้านบนขนาดกลางและขนาดใหญ่ของ Material3 เพื่อใช้สีพื้นหลังเดียวกันทั่วทั้งพื้นผิว และอนุญาตให้ตั้งค่าการลบล้างสีเริ่มต้นด้วยค่าสีโปร่งใส (I67659, b/249688556, b/250838918)
เวอร์ชัน 1.0.0
24 ตุลาคม 2022
androidx.compose.material3:material3:1.0.0
และ androidx.compose.material3:material3-window-size-class:1.0.0
เปิดตัวแล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้
ฟีเจอร์หลักของเวอร์ชัน 1.0.0
นี่คือ Compose Material 3 เวอร์ชันเสถียรเวอร์ชันแรก
การกำหนดธีม Material Design 3 และสีแบบไดนามิกของ Material You
คอมโพเนนต์ Material Design 3
- ป้าย
- แถบแอปด้านล่าง
- ปุ่ม
- FAB และ FAB แบบขยาย
- การ์ด
- ช่องทำเครื่องหมาย
- ชิป
- กล่องโต้ตอบ
- ตัวคั่น
- เมนูแบบเลื่อนลง
- List
- แถบนำทาง
- ลิ้นชักการนำทาง
- แถบนำทาง
- ตัวบ่งชี้ความคืบหน้า
- ปุ่มตัวเลือก
- แถบเลื่อน
- เปลี่ยน
- แท็บ
- ช่องข้อความ
- แถบแอปด้านบน
- ไอคอน
- ข้อความ
- Surface
- เลย์เอาต์
- สีเนื้อหา
คลาสขนาดหน้าต่าง
material3-window-size-class
เป็นไลบรารีใหม่ที่รองรับคลาสขนาดหน้าต่าง ซึ่งเป็นชุดเบรกพอยต์วิวพอร์ตที่กำหนดไว้ล่วงหน้าเพื่อให้คุณออกแบบ พัฒนา และทดสอบเลย์เอาต์แอปพลิเคชันที่ปรับขนาดได้ คุณใช้calculateWindowSizeClass
เพื่อดึงข้อมูลอินสแตนซ์คลาสขนาดหน้าต่างได้ ซึ่งคุณสามารถใช้เพื่อกำหนดลักษณะที่ UI ควรปรากฏ เช่น แสดงแถบนำทางแทนการนำทางด้านล่างสำหรับขนาดหน้าต่างที่ใหญ่ขึ้น ดูข้อมูลเพิ่มเติมและตัวอย่างการใช้งานได้ในเอกสารประกอบข้อมูลอ้างอิง API สำหรับWindowSizeClass
โปรดดูรายละเอียดเพิ่มเติมในบล็อกโพสต์นี้
เวอร์ชัน 1.0.0-rc01
5 ตุลาคม 2022
androidx.compose.material3:material3:1.0.0-rc01
และ androidx.compose.material3:material3-window-size-class:1.0.0-rc01
เปิดตัวแล้ว เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มพารามิเตอร์ช่องเพื่อรองรับ API ฟิลด์ข้อความเป็นข้อความ (Iaac0d, b/227146125)
เวอร์ชัน 1.0.0-beta03
21 กันยายน 2022
androidx.compose.material3:material3:1.0.0-beta03
และ androidx.compose.material3:material3-window-size-class:1.0.0-beta03
เปิดตัวแล้ว เวอร์ชัน 1.0.0-beta03 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้
ExposedDropdownMenuDefaults
จะแสดงค่าระยะห่างจากขอบสำหรับรายการในเมนู (I34ee1) - ตอนนี้
ExposedDropdownMenuBoxScope
มีตัวแก้ไขModifier.menuAnchor()
ที่ควรส่งไปยังช่องข้อความเพื่อให้ลักษณะการทำงานของ a11y เป็นไปอย่างถูกต้อง (I27fa3) - เพิ่ม 2 เมธอดที่โอเวอร์โหลดสำหรับ Slider API ปัจจุบันเพื่อให้ผู้ใช้ส่งนิ้วโป้งหรือแทร็กเพื่อป้อนข้อมูลลงในแถบเลื่อนได้ (I21c00)
การแก้ไขข้อบกพร่อง
- อัปเดตการแมปสีธีมมืดสำหรับคอนเทนเนอร์ "เมื่อเกิดข้อผิดพลาด" เป็นโทน 90 (Ic5612)
- แก้ไขเพื่อให้ตั้งค่าพื้นหลังโปร่งใสสำหรับแถบแอปด้านบนขนาดเล็กของ Material 3 ได้ (I645e2, b/245575782)
เวอร์ชัน 1.0.0-beta02
7 กันยายน 2022
androidx.compose.material3:material3:1.0.0-beta02
และ androidx.compose.material3:material3-window-size-class:1.0.0-beta02
เปิดตัวแล้ว เวอร์ชัน 1.0.0-beta02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- การแทรกคอมโพเนนต์เริ่มต้นที่เปิดตัวในคอมโพเนนต์ m3 ในเวอร์ชัน beta01 จะไม่พิจารณาการแทรก IME อีกต่อไป
- ตอนนี้คอมโพเนนต์ Scaffold ของ Material3 มีพารามิเตอร์
contentWindowInsets
แล้ว ซึ่งช่วยให้ระบุจำนวนการแทรกเพื่อจัดการช่องเนื้อหาได้ (Icf11a, b/243713323) - เลิกใช้งานฟังก์ชัน
SmallTopAppBar
ของ Material 3 เวอร์ชันทดลอง และเปิดตัวฟังก์ชันTopAppBar
ที่เทียบเท่า โปรดย้ายข้อมูลการใช้งาน ไปยังเวอร์ชันใหม่ (I74404, b/226918634) - เพิ่มการควบคุมลักษณะการทำงานของการปัดและการสแนปแถบแอปด้านบน (I15c81)
- นำ startIndent ออกจาก Divider และย้ายสีไปยังพารามิเตอร์สุดท้าย (If7be2)
การแก้ไขข้อบกพร่อง
- ให้กล่องโต้ตอบระบุตัวเองต่อผู้ใช้ Talkback โดยการประกาศคำว่า "กล่องโต้ตอบ" เมื่อแสดง (I857ef)
เวอร์ชัน 1.0.0-beta01
24 สิงหาคม 2022
androidx.compose.material3:material3:1.0.0-beta01
และ androidx.compose.material3:material3-window-size-class:1.0.0-beta01
เปิดตัวแล้ว เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้
ข้อมูลอ้างอิงของ API
หากต้องการดูธีม คอมโพเนนต์ และ Composable อื่นๆ ล่าสุดที่มีให้ใช้งาน โปรดดูภาพรวมเอกสารอ้างอิง API ของ Compose Material 3
การเปลี่ยนแปลง API
- อัปเดตแถบแอปด้านบนของ Material 3 ให้เปลี่ยนจากสถานะยุบอย่างสมบูรณ์เป็นสถานะขยายอย่างสมบูรณ์ นอกจากนี้ ยังอัปเดต
TopAppBarDefaults
ฟังก์ชันลักษณะการทำงานให้เป็น Composables และระบุค่าเริ่มต้นสำหรับสถานะแถบแอปด้านบนและข้อกำหนดภาพเคลื่อนไหวด้วย (I642b3) - อัปเดตลายเซ็นของคอมโพเนนต์ FAB ให้ตรงกับ Surface API (I3afaa)
- เพิ่มการรองรับการแทรกในตัวสำหรับแถบแอปด้านบน ลิ้นชัก แถบนำทาง และแถบนำทางด้านข้าง เมื่อใช้แยกกันหรือใช้กับ Scaffold คอมโพเนนต์เหล่านี้จะจัดการระยะขอบภายในให้นักพัฒนาแอปโดยอัตโนมัติ หมายเหตุ: การเปลี่ยนแปลงนี้ไม่ได้เพิ่มการจัดการไอคอนแถบสถานะและความโปร่งใสของแถบสถานะและแถบนำทางโดยอัตโนมัติ โปรดดำเนินการด้วยตนเองต่อไปเพื่อให้มั่นใจว่าจะได้รับประสบการณ์การใช้งานแบบขอบจรดขอบที่ดีที่สุด (I7e4e6, b/183161866)
- อัปเดตค่าเริ่มต้นของคอมโพเนนต์เพื่อลดพื้นผิว API เพื่อความยืดหยุ่นและการปรับปรุงประสิทธิภาพในอนาคต (I31820)
- จัดเรียงพารามิเตอร์ของชิปและชีตลิ้นชักการนำทางใหม่เพื่อรักษาความสอดคล้องภายใน API (I45d0b)
- นำ
startIndent
ออกจากตัวคั่นและย้ายสีให้เป็นพารามิเตอร์สุดท้าย (If7be2)
เวอร์ชัน 1.0.0-alpha16
10 สิงหาคม 2022
androidx.compose.material3:material3:1.0.0-alpha16
และ androidx.compose.material3:material3-window-size-class:1.0.0-alpha16
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha16 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- รองรับการระบุความกว้างที่กำหนดเองในลิ้นชักการนำทาง (Ia7f10)
การเปลี่ยนแปลง API
- เรียงลำดับพารามิเตอร์แท็บและพารามิเตอร์แท็บไอคอนนำเพื่อรักษาความสอดคล้องภายใน API (Ie2637)
- ทำเครื่องหมาย
BadgeDefaults
ว่าเป็นเวอร์ชันทดลอง (I98ef3) - นำฟังก์ชันลิ้นชักการนำทางที่เลิกใช้งานแล้วออก (I4f2db)
- จัดเรียงพารามิเตอร์ของแถบเลื่อนใหม่ใน Material 3 เพื่อรักษาความสอดคล้องกันภายใน API (I0aee7)
- จัดเรียงพารามิเตอร์
NavigationBar
และNavigationRail
ใหม่เพื่อให้สอดคล้องกันภายใน API (I51cda) - จัดลำดับพารามิเตอร์ใหม่ใน Material 3 เพื่อรักษาความสอดคล้องใน API (If4ae1)
- จัดเรียงพารามิเตอร์ของแถบเลื่อนใหม่ใน Material 3 เพื่อรักษาความสอดคล้องกันภายใน API (I62673)
- เปลี่ยนชื่อพารามิเตอร์ไอคอนเป็นการดำเนินการเพื่อให้สอดคล้องกับแถบแอปด้านบน (Id75be)
- ทำเครื่องหมาย
Badge
และBadgedBox
เป็นการทดลองเนื่องจากการจัดแนวจุดยึดยังไม่แน่นอน (I1712e, b/236524516) - เปลี่ยน
@ExperimentalMaterial3Api
คำอธิบายประกอบในปุ่มไอคอนตัวแปรเป็น@OptIn
(I070b5) - แยกเนื้อหาของลิ้นชักการนำทางไปยัง Composable ของตัวเองเพื่อรองรับการระบุความกว้างที่กำหนดเองในลิ้นชัก (Ia7f10)
- นำ
Divider
ออกจากMenuDefaults
และTabDefaults
(I4e33c)
เวอร์ชัน 1.0.0-alpha15
27 กรกฎาคม 2022
androidx.compose.material3:material3:1.0.0-alpha15
และ androidx.compose.material3:material3-window-size-class:1.0.0-alpha15
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha15 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- อนุญาตให้ลากแถบแอปด้านบนจากแถบเอง (I65c00, b/205873416)
การเปลี่ยนแปลง API
- อัปเดต API
FilterChip
และElevatedFilterChip
เพื่อนำช่องselectedIcon
ออกและส่งเสริมการใช้leadingIcon
ซ้ำเพื่อแสดงสถานะที่เลือก (Ie5dc2) - เพิ่มบทบาทสีของตัวแปรขอบและเงา (Id6d54)
- แก้ไขรูปแบบการตั้งชื่อสำหรับค่าเริ่มต้นที่ประกอบได้ (I62b27)
- ทำเครื่องหมาย
ListItemDefaults
และListItemColors
ว่าเป็นเวอร์ชันทดลอง (I1f3ec) - การเปลี่ยนแปลง API แถบแอปด้านบนเพื่อให้แสดงความหมายของพร็อพเพอร์ตี้สถานะได้ดียิ่งขึ้น นอกจากนี้ ให้ทําเครื่องหมาย API แถบแอปด้านบนเป็นแบบทดลอง (Ic0ad8)
- ตอนนี้เราได้เพิ่มสีการเลือกข้อความลงใน
TextFieldColors
เพื่อให้ค้นพบได้ดียิ่งขึ้น (Iba1b8) - เพิ่ม
ButtonDefault.ButtonWithIconContentPadding
เพื่อใช้กับปุ่มที่มีไอคอน (I2bf9c) - เราได้ทำเครื่องหมายช่องข้อความเป็นเวอร์ชันทดลองเพื่อให้มีความยืดหยุ่นมากขึ้นในการเปลี่ยนแปลง API ในอนาคต (I127b5)
- นำคำอธิบายประกอบ
@ExperimentalMaterial3Api
ออกจากฟังก์ชันCheckbox
(I5eefc) - นำคำอธิบายประกอบ
@ExperimentalMaterial3Api
ออกจากฟังก์ชันRadioButton
(I17e2a) - นำคำอธิบายประกอบ
@ExperimentalMaterial3Api
ออกจากการ์ดที่ไม่มีการโต้ตอบ (I9bd49) - อัปเดตออบเจ็กต์ค่าเริ่มต้นของคอมโพเนนต์ต่างๆ ให้มีสี รูปร่าง ฯลฯ (I96e11)
การแก้ไขข้อบกพร่อง
- นำไอคอนต่อท้ายที่ใช้งานไม่ได้ออกจากตัวอย่างชิปอินพุตเพื่อหลีกเลี่ยงไม่ให้ผู้ใช้สับสนในแอปแคตตาล็อก (I9846a)
เวอร์ชัน 1.0.0-alpha14
29 มิถุนายน 2022
androidx.compose.material3:material3:1.0.0-alpha14
และ androidx.compose.material3:material3-window-size-class:1.0.0-alpha14
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha14 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เพิ่มการใช้งานรายการ M3 โปรดดูเอกสารประกอบเพื่อดูตัวอย่างการใช้งาน (Id7a20)
การเปลี่ยนแปลง API
- เปลี่ยนชื่อพารามิเตอร์จากค่าเป็นค่าใน
RangeSlider
(I3b79a) - การเปลี่ยนแปลง API ในการติดตั้งใช้งาน
InputChip
เพื่อรองรับสถานะที่เลือกได้ตามข้อกำหนดของ Material Design การรองรับเพิ่มเติมที่สีFilterChip
สำหรับสถานะที่เลือกที่ปิดใช้ (I55244, b/235792432) - เพิ่ม FAB เริ่มต้น
BottomAppBar
(Ida4c8) - เพิ่ม
ColorScheme.surfaceColorAtElevation
แล้ว (Id41af) - ตอนนี้อินเทอร์เฟซในไลบรารี Compose สร้างขึ้นโดยใช้เมธอดอินเทอร์เฟซเริ่มต้นของ jdk8 (I5bcf1)
WindowWidthSizeClass
และWindowHeightSizeClass
จะใช้ Comparable ได้แล้ว จึงสามารถเปรียบเทียบได้โดยใช้โอเปอเรเตอร์ (<, <=, >=, >) และ API อื่นๆ (I747d0)
การแก้ไขข้อบกพร่อง
- อัปเดตตัวอย่างป้ายเพื่อระบุคำอธิบายเนื้อหาที่มีความหมายมากขึ้น (I10b9d)
- เพิ่มตัวเลือกในการใช้ขนาดแบบอักษรของระบบกับเครื่องมือเลือกธีมของแคตตาล็อก Material 3 (I10605)
- เพิ่มโค้ดตัวอย่างสำหรับป้ายและตัวบ่งชี้ความคืบหน้าที่ไม่แน่นอน (I8fbe0)
เวอร์ชัน 1.0.0-alpha13
1 มิถุนายน 2022
androidx.compose.material3:material3:1.0.0-alpha13
และ androidx.compose.material3:material3-window-size-class:1.0.0-alpha13
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha13 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- รองรับการรักษาตำแหน่งแถบแอปด้านบนเมื่อมีการเปลี่ยนแปลงการกำหนดค่า (I10459, b/216160958)
เวอร์ชัน 1.0.0-alpha12
18 พฤษภาคม 2022
androidx.compose.material3:material3:1.0.0-alpha12
และ androidx.compose.material3:material3-window-size-class:1.0.0-alpha12
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha12 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- ตอนนี้องค์ประกอบหลักของแถบเลื่อนมีความกว้างเป็น 0 ได้แล้ว (b/231707291)
เวอร์ชัน 1.0.0-alpha11
11 พฤษภาคม 2022
androidx.compose.material3:material3:1.0.0-alpha11
และ androidx.compose.material3:material3-window-size-class:1.0.0-alpha11
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha11 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม
RangeSlider
ไปยัง Material 3 (I18e38) - เพิ่มการรองรับ Material3
AssistChip
และInputChip
(I0d25a) - เพิ่มการรองรับ Material3
FilterChip
และSuggestionChip
(I9fdf3)
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ Composable
TextFieldDefaults.BorderStroke
ที่วาดเส้นขอบในOutlinedTextField
เป็นTextFieldDefaults.BorderBox
(I5f295) - การเปลี่ยนแปลงภาพของ Switch M3 (Iab30e)
- อนุญาตให้ส่งสีไปยังปุ่มไอคอนมาตรฐาน (Ia2445)
การแก้ไขข้อบกพร่อง
- เพิ่มการตรวจสอบ Lint ใน material3/Scaffold เพื่อให้แน่ใจว่ามีการใช้ระยะเว้นด้านใน (I72293, b/226951418)
เวอร์ชัน 1.0.0-alpha10
20 เมษายน 2022
androidx.compose.material3:material3:1.0.0-alpha10
และ androidx.compose.material3:material3-window-size-class:1.0.0-alpha10
เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha10 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
material3-window-size-class
เป็นไลบรารีใหม่ที่รองรับคลาสขนาดหน้าต่าง ซึ่งเป็นชุดเบรกพอยต์วิวพอร์ตที่กำหนดไว้ล่วงหน้าเพื่อให้คุณออกแบบ พัฒนา และทดสอบเลย์เอาต์แอปพลิเคชันที่ปรับขนาดได้ คุณใช้calculateWindowSizeClass
เพื่อดึงข้อมูลอินสแตนซ์คลาสขนาดหน้าต่างได้ ซึ่งคุณสามารถใช้เพื่อกำหนดลักษณะที่ UI ควรปรากฏ เช่น แสดงแถบนำทางแทนการนำทางด้านล่างสำหรับขนาดหน้าต่างที่ใหญ่ขึ้น ดูข้อมูลเพิ่มเติมและตัวอย่างการใช้งานได้ในเอกสารประกอบข้อมูลอ้างอิงของ API สำหรับWindowSizeClass
ดูข้อมูลเพิ่มเติมเกี่ยวกับการกำหนดคลาสขนาดหน้าต่างได้ที่คำแนะนำแบบสาธารณะเกี่ยวกับการรองรับหน้าจอขนาดต่างๆ
การเปลี่ยนแปลง API
- เพิ่มระดับความสูงของ FAB เริ่มต้นสำหรับ
BottomAppBar
นำ Lambda ต่อท้ายออกจากBottomAppBar
ที่มี FAB (I92c47) - เพิ่ม
FilledIconButton
,FilledTonalIconButton
และOutlinedIconButton
ของ Material3 (Ib2bda) - อัปเดต Material 3 Snackbar API เพื่อยอมรับค่าสีสำหรับการดำเนินการที่ไม่บังคับและการดำเนินการยกเลิก (Ibe4b4)
- การดูบางส่วน (ลงหรือตำแหน่ง) เลิกใช้งานแล้วใน
PointerInputChange
คุณใช้consume()
เพื่อใช้การเปลี่ยนแปลงทั้งหมดได้ คุณใช้isConsumed
เพื่อพิจารณาว่ามีบุคคลอื่นใช้การเปลี่ยนแปลงไปก่อนหน้านี้หรือไม่ PointerInputChange::copy()
จะทำสำเนาแบบตื้นเสมอ ซึ่งหมายความว่าระบบจะใช้สำเนาของPointerInputChange
เมื่อมีการใช้สำเนาใดสำเนาหนึ่ง หากต้องการสร้างPointerInputChange
ที่ไม่มีขอบเขต ให้ใช้ตัวสร้างแทน (Ie6be4, b/225669674)- การเปลี่ยนแปลง Cards API เพื่อรับสีคอนเทนเนอร์และเนื้อหาผ่านอินเทอร์เฟซ
CardColors
และเพื่อรองรับสถานะที่ปิดใช้สำหรับ การ์ดที่คลิกได้ (I927df) - เราได้เปลี่ยนชื่อพารามิเตอร์
backgroundColor
เป็นcontainerColor
ในช่องข้อความ Material 3 เพื่อให้สอดคล้องกับคอมโพเนนต์อื่นๆ มากขึ้น (I6fbd9)
การแก้ไขข้อบกพร่อง
- อัปเดต
IconButton
มาตรฐานให้สอดคล้องกับข้อกำหนด Material3 (I09eab) - ย้ายความสูงของแถบด้านบนของ Scaffold ของ Material3 ไปยังระยะเว้นที่ส่งไปยังเนื้อหา เพื่อให้เนื้อหาแสดงผลใต้แถบแอปด้านบนได้ หากไม่สนใจ
PaddingValues
เนื้อหาอาจถูกแถบด้านบนบดบัง (I83cbc, b/217776202)
เวอร์ชัน 1.0.0-alpha09
6 เมษายน 2022
androidx.compose.material3:material3:1.0.0-alpha09
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha09 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เพิ่ม Material 3 Switch API (I2c3ad)
การเปลี่ยนแปลง API
- เพิ่มการรองรับเมนูแบบเลื่อนลงที่มีช่องข้อความ (หรือที่เรียกว่า "เมนูแบบเลื่อนลงที่แสดง" หรือ "กล่องคำสั่งผสม") (I1b832)
- เพิ่มพารามิเตอร์รูปร่างลงใน MaterialTheme และระบบย่อยของรูปร่าง (I37426)
- เพิ่มพารามิเตอร์แบบขยายไปยัง
ExtendedFloatingActionButton
เพื่อควบคุมว่าจะขยายหรือยุบ FAB หรือไม่ โดยมีการเคลื่อนไหวระหว่างแต่ละสถานะ เพิ่มการโอเวอร์โหลด Extended FAB สำหรับ Extended FAB ที่มีข้อความต่อท้ายสำหรับ ExtendedFAB ที่ไม่มีไอคอน (Iba7f1)
เวอร์ชัน 1.0.0-alpha08
23 มีนาคม 2022
androidx.compose.material3:material3:1.0.0-alpha08
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha08 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับช่องข้อความ Material 3 (I795cc, b/199377790)
การเปลี่ยนแปลง API
- เพิ่มตัวแบ่งเริ่มต้นสำหรับเมนู (I01374)
- เพิ่มพารามิเตอร์สี
surfaceTint
ลงในคลาสColorScheme
(I2f558)
การแก้ไขข้อบกพร่อง
- แก้ไขที่ปุ่ม Material3 เพื่ออ่านค่ารูปแบบข้อความเริ่มต้น จาก MaterialTheme (Ie62fc)
เวอร์ชัน 1.0.0-alpha07
9 มีนาคม 2022
androidx.compose.material3:material3:1.0.0-alpha07
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อัปเดต Material 3 Surface API ที่นำฟังก์ชันที่โอเวอร์โหลดสำหรับ Surface ที่คลิกได้กลับมา รวมถึงเพิ่มฟังก์ชันเพื่อรองรับ Surface ที่เลือกได้และสลับได้ (I4bf18)
- ตอนนี้
LazyVerticalGrid
และLazyHorizontalGrid
เสถียรแล้ว (I307c0) LazyVerticalGrid/LazyHorizontalGrid
และ API ที่เกี่ยวข้องทั้งหมดถูกย้ายไปไว้ในแพ็กเกจย่อย .grid โปรดอัปเดตการนำเข้าจาก androidx.compose.foundation.lazy เป็น androidx.compose.foundation.lazy.grid (I2d446)- เปลี่ยนกลับการเปลี่ยนแปลงก่อนหน้านี้ที่ใช้เฉพาะ View สำหรับ
WindowInsetsControllerCompat
และกำหนดให้ต้องมี Window อีกครั้ง ซึ่งจำเป็นสำหรับการจัดการแฟล็กหน้าต่างบางรายการ เลิกใช้งานViewCompat.getWindowInsetsController
เพื่อWindowCompat.getInsetsController
เพื่อให้แน่ใจว่าใช้ Window ที่ถูกต้อง (เช่น หาก View อยู่ในกล่องโต้ตอบ) (I660ae, b/219572936) - เพิ่ม
LazyVerticalGrid
API ใหม่เพื่อกำหนดขนาดแกนไขว้ (I17723)
การแก้ไขข้อบกพร่อง
- อัปเดต Card API เพื่อให้เป็นไปตามการเปลี่ยนแปลงใน Surface API (I3c8b9)
เวอร์ชัน 1.0.0-alpha06
23 กุมภาพันธ์ 2022
androidx.compose.material3:material3:1.0.0-alpha06
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
NavigationDrawerItem
ที่แสดงถึงปลายทางเดียวภายในลิ้นชัก (Ic396f, b/218286829)PermanentNavigationDrawer
และDismissibleNavigationDrawer
ได้รับการเพิ่มเป็น API เวอร์ชันทดลองแล้ว ซึ่งเป็นลิ้นชักที่เหมาะกับอุปกรณ์หน้าจอขนาดใหญ่ (I5f8ab, b/218286829)- เพิ่มการรองรับแถบแอปด้านล่างของ Material 3 (Ic432a)
NavigationDrawer
เปลี่ยนชื่อเป็นModalNavigationDrawer
(I1807d, b/218286829) แล้ว- เพิ่มคลาสและโทเค็นของแถบเลื่อน Material 3 (I1ccee)
- เพิ่มการใช้งานแท็บ โปรดดูเอกสารประกอบเพื่อดูตัวอย่างการใช้งาน (Ie0146)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่
TalkBack
การไปยังส่วนต่างๆ แบบเส้นตรงของโปรแกรมอ่านหน้าจอเลือกชื่อแถบแอปด้านบนที่ว่างเปล่า (Id4690) - เพิ่ม
IconSize
ไปยังFloatingActionButtonDefaults
แล้ว (Ia71cf) - แก้ไขข้อบกพร่องสำหรับปุ่ม
AlertDialog
ที่ซ่อนอยู่เมื่อเพิ่มข้อความยาวด้วยLazyColumn
(Ib2cc9, b/216663029)
เวอร์ชัน 1.0.0-alpha05
9 กุมภาพันธ์ 2022
androidx.compose.material3:material3:1.0.0-alpha05
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
เพิ่มคอมโพเนนต์ Material Design 3
- เมนูแบบเลื่อนลง
- การ์ด
การเปลี่ยนแปลง API
- ฟังก์ชัน
Surface
ที่เลิกใช้งานแล้วซึ่งใช้ onClick callback ควรสร้างพื้นผิวที่คลิกได้ด้วยInteractionSource
และModifier.clickable()
(I211c6) - เพิ่มการรองรับระดับความสูงเมื่อกดและโฟกัสสำหรับ FAB (Ibb584)
- เปลี่ยน
Surface
API เพื่อรับ InteractionSource ซึ่งช่วยให้ ควบคุมลักษณะที่ปรากฏในสถานะต่างๆ ได้ (Iafbc8)
การแก้ไขข้อบกพร่อง
- เพิ่มสีระดับที่ 3 ที่ขาดหายไปในรูปแบบสีแบบไดนามิก (I456c4, b/214588434)
เวอร์ชัน 1.0.0-alpha04
26 มกราคม 2022
androidx.compose.material3:material3:1.0.0-alpha04
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
NonRestartableComposable
ไปยังเมธอดที่โอเวอร์โหลด ของเมธอดที่มีอยู่โดยไม่มีตรรกะที่ซับซ้อน ซึ่งจะช่วยลดการตรวจสอบการจดจำ (เท่ากับ) ที่คอมไพเลอร์ สร้างขึ้นสําหรับพารามิเตอร์ทั้งหมดที่ ซ้ำกันในฟังก์ชันภายในที่เรียกใช้ (I90490) - เพิ่มตัวแบ่ง Material 3 (Ica5fc)
- ทำเครื่องหมายช่องทำเครื่องหมายและปุ่มตัวเลือกด้วยคำอธิบายประกอบ API เวอร์ชันทดลอง (Ie44bb)
- เพิ่มการรองรับตัวบ่งชี้ความคืบหน้าของ Material 3 (Iff232, b/205023841)
การแก้ไขข้อบกพร่อง
- อัปเดตสีคอนเทนเนอร์
TextButton's
ที่ปิดใช้ให้โปร่งใส (I6b248, b/213339737)
เวอร์ชัน 1.0.0-alpha03
12 มกราคม 2022
androidx.compose.material3:material3:1.0.0-alpha03
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- เพิ่ม
LocalIndication
ลงในMaterialTheme
ของ Material 3 (I7ce4e) - แก้ไขรัศมีมุมที่ใช้กับช่องทำเครื่องหมาย (I38b03, b/175198975, b/202309440)
การอัปเดตการขึ้นต่อกัน
- ตอนนี้ต้องใช้ Kotlin
1.6.10
เวอร์ชัน 1.0.0-alpha02
1 ธันวาคม 2021
androidx.compose.material3:material3:1.0.0-alpha02
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับช่องทำเครื่องหมายและปุ่มตัวเลือก
- อัปเดตให้เข้ากันได้กับ Kotlin
1.6.0
การเปลี่ยนแปลง API
- นำลิ้นชักออกจาก Scaffold ของ Material 3 (I04f51)
- เพิ่มการรองรับ Material 3
Checkbox
(Id5542) - เพิ่มการรองรับ Material 3
RadioButton
(I20334)
การแก้ไขข้อบกพร่อง
- ลดรัศมีระลอก
IconButton
จาก 40dp เป็น 20dp (I68bbe, b/206674345) - เส้นทางด่วนของสตริงพอร์ตสำหรับ
Text
เปลี่ยนจากcompose.material
(I30b03) - แก้ไขปุ่มที่ฮาร์ดโค้ดให้เปิดใช้เสมอ (Iea832, b/205335456)
เวอร์ชัน 1.0.0-alpha01
27 ตุลาคม 2021
androidx.compose.material3:material3:1.0.0-alpha01
ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
การกำหนดธีม Material Design 3 และสีแบบไดนามิกของ Material You
คอมโพเนนต์ Material Design 3
- ปุ่ม
- FAB และ FAB แบบขยาย
- กล่องโต้ตอบ
- แถบนำทาง
- ลิ้นชักการนำทาง
- แถบนำทาง
- แถบแอปด้านบน
- ป้าย
- ไอคอน
- ข้อความ
- Surface
- เลย์เอาต์
- สีเนื้อหา
ดูข้อมูลเพิ่มเติมได้ที่ส่วน Material Design 3 และ Material You ในคู่มือการใช้ธีม Material ใน Compose