Compose Material 3
| อัปเดตล่าสุด | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า |
|---|---|---|---|---|
| 6 พฤษภาคม 2026 | 1.4.0 | - | - | 1.5.0-alpha19 |
โครงสร้าง
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 | คอมโพเนนต์พื้นฐานของ UI ของ Compose ที่จำเป็นต่อการโต้ตอบกับอุปกรณ์ ซึ่งรวมถึงเลย์เอาต์ การวาด และอินพุต |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ใน Compose คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มทรัพยากร Dependency สำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับ
แอปหรือโมดูล
Groovy
dependencies { implementation "androidx.compose.material3:material3:1.4.0" implementation "androidx.compose.material3:material3-window-size-class:1.4.0" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.5.0-alpha19" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.4.0") implementation("androidx.compose.material3:material3-window-size-class:1.4.0") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.5.0-alpha19") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพาบิลด์
ความคิดเห็น
ความคิดเห็นของคุณช่วยเราปรับปรุง Jetpack ให้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของ Issue Tracker
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
- ทำให้ API ชุดการนำทางไม่ใช่เวอร์ชันทดลอง (If62af)
การแก้ไขข้อบกพร่อง
- ใช้ Inset สำหรับเนื้อหาโดยค่าเริ่มต้น (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
- อัปเดตทรัพยากร 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และระบบจะสร้างMutableInteractionSourceภายในคอมโพเนนต์หากจำเป็น การเปลี่ยนเป็นค่าว่างจะทำให้คอมโพเนนต์บางอย่างไม่จัดสรร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.5
เวอร์ชัน 1.5.0-alpha19
6 พฤษภาคม 2026
androidx.compose.material3:material3-*:1.5.0-alpha19 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha19 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- ตอนนี้การจัดรูปแบบข้อความรองรับชุดแบบอักษรเริ่มต้นที่จะผสานกับรูปแบบข้อความที่ระบุ หากไม่ได้ตั้งค่าชุดแบบอักษรอย่างชัดเจน (I2e305, b/500356360)
การเปลี่ยนแปลง API
- นำ
supportingTextออกจาก Lambda ต่อท้ายสำหรับDropdownMenuItemแต่ให้ย้ายไปไว้หลังtrailingIconแทน (I5694b, b/503047115) - เลื่อนเวอร์ชัน
ToggleButtonsเป็นเวอร์ชันเสถียร (I8a771, b/497876827) - โปรโมต API เมนูที่สื่อความหมาย นำ
DropdownMenuItemออกเนื่องจากเป็น API แบบทดลองที่เลิกใช้งานแล้วซึ่งเป็นส่วนหนึ่งของ 1.5.0-alpha (I1d556, b/497885285) - เลื่อนระดับ FAB และ FAB Menu API จากเวอร์ชันทดลอง (Ie509c, b/497892373)
- โปรโมต API ปุ่มแบบด่วน นำ API การทดสอบที่เลิกใช้งานแล้วออก
SmallButtonContentPaddingซึ่งเปิดตัวในเวอร์ชัน 1.5.0-alpha (Iee31e, b/497873833) - ย้าย API การสั่งซื้อโครงสร้างกลับไปเป็นเวอร์ชันทดลอง (I01492, b/489424245)
- เพิ่มการโอเวอร์โหลดตัวสร้าง Typography อีกรายการ (I8b3b3, b/500356360)
- เปลี่ยนกลับโปรโมชัน
MaterialShapesและLoadingIndicatorเป็นเวอร์ชันเสถียร (I30e69, b/497876695, b/497877850)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องในการติดตั้งใช้งานแถบเลื่อนที่ทำให้ระบบใช้ระยะห่างจากวงแหวนโฟกัสแบบอินเซ็ตกับแทร็กและหัวแม่มือเมื่อคอมโพเนนต์ไม่ได้อยู่ในโฟกัส (I16315, b/506158497)
- แก้ไขปัญหาใน
ModalBottomSheetที่มีการใช้imePaddingโดยไม่มีเงื่อนไข ทำให้ควบคุมลักษณะการทำงานของ IME ผ่านcontentWindowInsetsไม่ได้ (Ied801, b/289824811) - [FAB] แก้ไขข้อขัดข้องใน
Modifier.animateFloatingActionButtonที่เกิดจากการปัดเศษ int กับ float ตามความหนาแน่น (I2d25f, b/489769219) - แก้ไขการโฟกัสที่ติดอยู่ภายในเครื่องมือเลือกช่วงวันที่ การกด Tab จะย้ายโฟกัสเข้าและออกจากวันที่ ส่วนปุ่มลูกศรจะย้ายโฟกัสผ่านวันที่ (I7f3ea, b/498332749)
- เปลี่ยนกลับการเปลี่ยนแปลงปุ่มขนาดกลางและใหญ่สำหรับโหมดเคอร์เซอร์แบบแม่นยำ และขนาดไอคอนเริ่มต้นของกล่องโต้ตอบสำหรับโหมดเคอร์เซอร์แบบแม่นยำด้วย (I58d8c, b/496938250, b/500356640)
- แก้ไขปัญหาการโฟกัสแป้นพิมพ์ที่ติดอยู่ในเครื่องมือเลือกวันที่ที่ไม่ใช่กล่องโต้ตอบ นอกจากนี้ ยังแก้ไขลำดับโฟกัสของปุ่มปิดและปุ่มยืนยันที่ไม่เป็นไปตามลำดับภาพด้วย (Ibbe2e, b/500454457)
เวอร์ชัน 1.5.0-alpha18
22 เมษายน 2026
androidx.compose.material3:material3-*:1.5.0-alpha18 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha18 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มโอเวอร์โหลด
FilterChip,ElevatedFilterChipและInputChipด้วยการเปลี่ยนรูปร่าง เพิ่มค่าเริ่มต้นของรูปร่าง ระยะห่าง และสีใหม่สำหรับการโอเวอร์โหลดเหล่านี้ (I84717, b/442678355) - เพิ่มการรองรับวงแหวนโฟกัสแบบอินเซ็ตผ่าน API แบบเลือกใช้ โดยใช้
LocalRippleThemeConfigurationองค์ประกอบใหม่ (I0551a, b/282184440)
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
rememberWithGapSearchBarStateเป็นrememberSearchBarWithGapStateแล้ว (I5f54b, b/498697243) - API
RippleThemeConfigurationและLocalRippleThemeConfigurationได้รับการอัปเกรดเป็นเวอร์ชันเสถียรแล้ว โดยเพิ่มความสามารถในการกำหนดค่าการวาดระลอกคลื่นให้มีลักษณะวงแหวนโฟกัสแบบฝังแทนที่จะเป็นการระบุโฟกัสตามความทึบแสง API ที่ใช้ API การกำหนดค่า Material Ripple ถูกเลิกใช้งานแล้ว (Ide5d0, b/485893129) - โปรโมต
WavyProgressIndicatorAPI (Id72a3, b/497877853) - โปรโมต
materialExpressTheme,expressiveLightColorScheme(I40eab, b/497876844) BottomSheetcomposable ได้ย้ายไปที่BottomSheet.ktแล้ว (If7e33, b/500091309)- เพิ่ม
Material3ExpressiveApiคำอธิบายประกอบที่ไม่ต้องใช้OptIn(Ib9f2e, b/499994043) - เพิ่ม
DropdownMenuPopupPositionProvidersเป็นDropdownMenuPopupเพื่อให้นักพัฒนาแอปกำหนดค่าตำแหน่งของเมนูที่วางไว้เทียบกับจุดยึดได้ ซึ่งจะช่วยให้รองรับเมนูย่อยภายในเมนูแบบเลื่อนลงได้ ตอนนี้คุณสร้างเมนูย่อยแบบเรียงซ้อนได้แล้วโดยใช้การวางตำแหน่งแบบสัมพัทธ์กับจุดยึดใหม่ ส่งตัวเลือกการวางตำแหน่งใหม่เหล่านี้ไปยังrememberDropdownMenuPopupPositionProviderเพื่อกำหนดค่าเมนู ดูการติดตั้งใช้งานที่สมบูรณ์ได้ที่ตัวอย่างเมนูแคตตาล็อก (Ic1ace, b/476161294)
การแก้ไขข้อบกพร่อง
- อัปเดตคอมโพเนนต์ Material3 เพื่อรองรับการระบุวงแหวนโฟกัสแบบแทรก (I88006, b/498610244, b/467984300, b/498281359)
- แก้ไขปัญหาในตัวอย่าง
TimePickerที่โฟกัสTalkBackเคลื่อนที่ ทำให้ป้อนเวลาที่ไม่ถูกต้องได้ (I51690, b/498364606)
เวอร์ชัน 1.5.0-alpha17
8 เมษายน 2026
androidx.compose.material3:material3-*:1.5.0-alpha17 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha17 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เลื่อนระดับ
TopAppBarScrollBehaviorและวิธีการที่เกี่ยวข้องเป็นเวอร์ชันเสถียร API เหล่านี้ไม่จำเป็นต้อง@ExperimentalMaterial3Apiเลือกใช้อีกต่อไป (Ieb2d1, b/496918628)
เวอร์ชัน 1.5.0-alpha16
25 มีนาคม 2026
androidx.compose.material3:material3-*:1.5.0-alpha16 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha16 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- โปรโมต
Typographyตัวสร้างและแอตทริบิวต์ เพิ่มTypographyตัวสร้างที่ยอมรับค่าเริ่มต้นFontFamilyเพื่อใช้กับTextStylesทั้งหมดในสเกล (I3f6f1, b/236358112) - เลื่อนระดับ API ที่เป็นเวอร์ชันทดลองสำหรับแถบเลื่อนให้เป็นเวอร์ชันที่เสถียร (I5efb3, b/304811984)
การเปลี่ยนแปลง API
isAnchoredDraggableComponentsAnchorRecoveryEnabledเปิดตัวแฟล็กฟีเจอร์สำหรับคอมโพเนนต์ที่ลากได้ซึ่งพบข้อผิดพลาดเป้าหมายที่ไม่ชัดเจน คอมโพเนนต์ประกอบด้วยModalBottomSheet,BottomSheetScaffold,SwipeToDismissBoxและWideNavigationRail(I5b0e5, b/487941042, b/478210200, b/477038695)- เพิ่ม
DropdownMenuItemTrailingLabelฟังก์ชันเริ่มต้นและการเว้นวรรค UI ที่เพิ่มประสิทธิภาพของเคอร์เซอร์สำหรับเมนูที่แบ่งกลุ่ม (I28977, b/485937388) - เพิ่มระยะขอบสำหรับกล่องโต้ตอบเมื่อ
ComposeMaterial3Flags.isPrecisionPointerComponentSizingEnabledเป็นจริง และเพิ่มAlertDialogDefaults.IconSizeสำหรับไอคอน (Ib9652, b/485932651) - เพิ่มประสิทธิภาพการคำนวณขนาดขั้นต่ำภายในของ
BasicTextFieldComposeFoundationFlags#isBasicTextFieldMinSizeOptimizationEnabledจะเป็นตัวควบคุมการตั้งค่าเหล่านี้ หากคุณต้องการปิดใช้ (I70ade) - อัปเดตลําดับพารามิเตอร์ใน
SearchBarDefaults.InputFieldเพื่อรักษาความเข้ากันได้ของซอร์สโค้ด (I20e3b, b/486964336) - นำ API
FilterChipและAssistChipที่เลิกใช้งานแล้วซึ่งมีพารามิเตอร์ horizontalSpacing ออก (Iec623, b/483762893) - พารามิเตอร์
isAtTopในTopAppBarDefaults.pinnedScrollBehaviorและTopAppBarDefaults.enterAlwaysScrollBehaviorได้รับการเปลี่ยนชื่อเป็นisAtStart(If7323, b/405129274)
การแก้ไขข้อบกพร่อง
- ตอนนี้คอมโพเนนต์
BottomSheetจะใช้MaterialTheme.motionSchemeในระหว่างการเลื่อนที่ซ้อนกันและท่าทางสัมผัสการลาก (I5fe22, b/452071842, b/384959324) - แก้ไขการใช้ระยะห่างภายในของป้ายกำกับไอคอนเมื่อรายการมี
selectedLeadingIconที่ไม่ได้แสดงในขณะนี้ (Iba820)
เวอร์ชัน 1.5.0-alpha15
25 กุมภาพันธ์ 2026
androidx.compose.material3:material3-*:1.5.0-alpha15 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha15 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดตัวคอมโพเนนต์ Scrim เพื่อใช้ร่วมกับคอมโพเนนต์ Modal (I29555, b/455862212, b/372395682, b/375853129)
- เปิดตัวคอมโพเนนต์ชีตแบบคงที่แบบสแตนด์อโลน (I0ef95, b/455862212, b/350779977, b/444176963, b/336349080)
การเปลี่ยนแปลง API
- เราได้ปรับโครงสร้าง
MaterialThemeใหม่เพื่อใช้CompositionLocalเดียวสำหรับข้อมูลธีม ตอนนี้คุณเข้าถึงสถานีวิทยุที่เปิดเพลงบรรเลงได้ผ่านMaterialTheme.LocalMaterialTheme.currentหรือcurrentValueOf(MaterialTheme.LocalMaterialTheme)ในCompositionLocalAccessorScope(Idee2e, b/483676974) - อัปเดตระยะห่างจากขอบของเนื้อหาเริ่มต้นของปุ่มข้อความสื่ออารมณ์ให้เป็นไปตามข้อกำหนดที่ถูกต้อง รวมถึงยกเลิกการเลิกใช้งาน
TextButtonContentPaddingและTextButtonWithIconContentPaddingด้วย (I67283) - เพิ่มพารามิเตอร์เพื่อปิดใช้ตัวแฮนเดิลการกลับจาก
BottomSheet(Iff81e, b/483763626) - เปลี่ยนรูปแบบการเคลื่อนไหวจากเวอร์ชันทดลอง (If822f, b/484003769)
- เพิ่มพารามิเตอร์ "เปิดใช้" และ "เกณฑ์" ลงใน
PullToRefreshBoxใน Material3 (I5610b, b/369044003) - แทนที่
horizontalSpacingด้วยhorizontalArrangementในFilterChipและElevatedFilterChipเพิ่มค่าเริ่มต้นของhorizontalArrangementลงในFilterChipDefaults(If3d6a, b/304853782) - ปรับปรุง KDoc สำหรับ
TopAppBarDefaultsลักษณะการทำงานของการเลื่อนเพื่ออธิบายการใช้งานเนื้อหาที่ย้อนกลับและเลื่อนไว้ล่วงหน้าได้ดียิ่งขึ้น (I247dd, b/405129274) - แทนที่พารามิเตอร์
horizontalSpacingด้วยพารามิเตอร์horizontalArrangmenetเพิ่มค่าเริ่มต้นของhorizontalArrangementลงในAssistChipDefaults(I15cec, b/304853782) - เพิ่ม Getter สำหรับ
shouldUsePrecisionPointerComponentSizing(I234ce) - เพิ่มการโอเวอร์โหลดไปยัง
TopAppBarDefaults.enterAlwaysScrollBehaviorและTopAppBarDefaults.pinnedScrollBehaviorที่ยอมรับพารามิเตอร์isAtTopStateซึ่งจะช่วยให้ตรวจหาat top stateที่กำหนดเองได้เมื่อใช้ลักษณะการเลื่อน (I785b9, b/405129274) - เพิ่มพารามิเตอร์
contentPaddingและhorizontalArrangementลงในInputChipและElevatedInputChipเพิ่มค่าเริ่มต้นของhorizontalArrangementและcontentPaddingลงในInputChipDefaults(Iae39c, b/304853782) - เพิ่มการปรับขนาดตัวชี้ที่แม่นยำและการเว้นวรรคสำหรับปุ่ม และเลิกใช้งาน
TextButtonContentPaddingval ที่ล้าสมัย (I6d7b6, b/479879803) - เพิ่ม
rememberWithGapSearchBarStateเพื่อใช้กับExpandedDockedSearchBarWithGap(Ia3361)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่เงาไม่แสดงสำหรับบานหน้าต่างที่ลอยอยู่ (Ie6108, b/470517507)
- อัปเดต
TextButtonsให้มีข้อกำหนดการเว้นวรรคที่ถูกต้องของ Material3 หากต้องการเลือกไม่ใช้และเปลี่ยนกลับไปใช้ลักษณะการทำงานแบบเดิม คุณควรตั้งค่าisTextButtonContentPaddingFixEnabledเป็น false ในแอปพลิเคชัน (I66c8e)
เวอร์ชัน 1.5.0-alpha14
11 กุมภาพันธ์ 2026
androidx.compose.material3:material3-*:1.5.0-alpha14 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha14 มีการเปลี่ยนแปลงเหล่านี้
วิธีแก้ปัญหาเฉพาะหน้า
- เพิ่ม
isAnchoredDraggableComponentsStrictOffsetCheckEnabledแล้ว แฟล็กนี้ควบคุมว่าBottomSheetScaffold,ModalBottomSheet,SwipeToDismissBoxและWideNavigationต้องกำหนดค่าออฟเซ็ตภายในอย่างเคร่งครัดหรือไม่ เมื่อปิดใช้ คอมโพเนนต์จะไม่วางเนื้อหาจนกว่าจะเริ่มต้นออฟเซ็ต โดยค่าสถานะนี้จะช่วยแก้ปัญหาชั่วคราวในกรณีที่คอมโพเนนต์เหล่านี้แสดงข้อยกเว้นเนื่องจากไม่ได้เริ่มต้นออฟเซ็ต (I36870, b/477038695, b/478210200, b/471818801, b/475249572, b/475598146)
การเปลี่ยนแปลง API
- เพิ่ม
isTextButtonContentPaddingFixEnabledที่เมื่อเป็นจริงจะทำให้TextButtonมีข้อกำหนดการเว้นวรรคที่ถูกต้อง (Ib986e) - เพิ่มพารามิเตอร์
indicatorPaddingสำหรับWideNavigationRailItemแล้ว (I3d5dc) - เพิ่มพารามิเตอร์
contentPaddingและhorizontalArrangementลงในSuggestionChipและElevatedSuggestionChipเพิ่มค่าเริ่มต้นของhorizontalArrangementและContentPaddingลงในSuggestionChipDefaultsสร้างChipArrangementชั้นเรียน (Ida874, b/304853782) - อัปเดตรายการในเมนูที่เลือกได้ให้มีพารามิเตอร์สำหรับข้อความสนับสนุน เลิกใช้งาน API ก่อนหน้าซึ่งไม่มีพารามิเตอร์ข้อความสนับสนุน นอกจากนี้ ให้เพิ่มขนาดไอคอนเริ่มต้นที่แนะนำสำหรับไอคอนนำหน้าและไอคอนต่อท้ายด้วย (I89e4b, b/417731599)
- อัปเดตเลย์เอาต์ของแถบแสดงข้อความเพื่อปรับปรุงการจัดแนวข้อความหลายบรรทัด เราได้เปิดตัวฟีเจอร์
isSnackbarStylingFixEnabledเพื่อช่วยในการย้ายข้อมูลเพื่อลดการหยุดชะงักของ UI โปรดเปิดใช้ Flag นี้ด้วยตนเองในแอปพลิเคชันของคุณ เราจะนำออกในการเปิดตัวเวอร์ชันในอนาคต (I37d63, b/322866101) - แก้ไขข้อบกพร่องใน
BottomSheetScaffold,ModalBottomSheet,SwipeToDismissBoxและWideNavigationRailที่ระบบไม่คำนวณจุดยึดใหม่ในบางกรณี การแก้ไขนี้อยู่หลังแฟล็กฟีเจอร์ComposeMaterial3Flags#isAnchoredDraggableComponentsInvalidationFixEnabled(I9acb1, b/478210200) - เพิ่มพารามิเตอร์ระยะห่างจากขอบของเนื้อหาไปยัง
WideNavigationRailและModalWideNavigationRailเพื่อให้ปรับแต่งระยะห่างจากขอบเริ่มต้นได้ (I49106)
การแก้ไขข้อบกพร่อง
- การตั้งค่า
BottomSheetScaffold sheetPeekHeightเป็น 0 จะปิดใช้สมอpartiallyExpandedPartiallyExpandedจะยังคงอยู่ในเลย์เอาต์แรกเพื่อให้คำนวณเลย์เอาต์ได้ (Ia33a4, b/465158677) SheetState#targetValueจะเลือกใช้จุดยึดปัจจุบันหากออฟเซ็ตปัจจุบันถูกต้อง ซึ่งจะป้องกันไม่ให้ initialValue อัปเดตทันที (Ied2c4, b/477279704)- แก้ไขไอคอนของ
WideNavigationRailItemที่ไม่ได้อยู่ตรงกลางแนวตั้งหากความสูงของรายการเปลี่ยนแปลง (Ib8c83)
เวอร์ชัน 1.5.0-alpha13
28 มกราคม 2026
androidx.compose.material3:material3-*:1.5.0-alpha13 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha13 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มการรองรับแถบค้นหา
animationSpecForContentExpandและanimationSpecForContentCollapse(I033a5)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่เนื้อหาของ
SearchBarที่ขยายไม่ได้ใช้สีที่รับรู้ธีม (I878e0, b/379441904) - แก้ไขข้อบกพร่องที่
BottomSheetScaffoldจะเรียกใช้การเรียกกลับconfirmValueChangeของSheetStateด้วยค่าที่ไม่ถูกต้องเมื่อส่งแฮนเดิลการลากไปยังBottomSheetScaffoldโปรดทราบว่าควรใช้confirmValueChangeเพื่อคัดค้านการเปลี่ยนแปลงสถานะเท่านั้น ใช้snapshotFlowเพื่อสังเกตการเปลี่ยนแปลงสถานะ (Ice9ee, b/465824174, b/477031833)
เวอร์ชัน 1.5.0-alpha12
14 มกราคม 2026
androidx.compose.material3:material3-*:1.5.0-alpha12 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha12 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- อัปเดต
TopAppBarDefaults(enterAlwaysและลักษณะการทำงานที่ปักหมุด) เพื่อรองรับlazyListState,scrollStateและreverseScrollingการแก้ไขนี้จะแก้ปัญหาทิศทางการจัดวางและจัดการเนื้อหาที่เลื่อนในตอนแรกได้อย่างถูกต้อง (I9d5c2, b/262234750) - เพิ่มพารามิเตอร์
contentPaddingและhorizontalSpacingลงในAssistChipและElevatedAssistChipเพิ่มค่าเริ่มต้นของHorizontalSpacingและContentPaddingลงในAssistChipDefaults(I2ac90, b/304853782) DatePickerAPI ที่ใช้คลาสเวลาของ Java จะไม่ได้รับการติดแท็กเป็นแบบทดลองอีกต่อไป (I5039c, b/457537971)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องในการจัดรูปแบบวันที่ใน API 23 (I67a94, b/452713222)
DatePicker - แก้ไขข้อบกพร่องในการจัดแนวภาพในตัวอย่างตัวบ่งชี้ภาพเคลื่อนไหวแฟนซีเมื่อใช้กับแถวแท็บที่เลื่อนได้ (Iae0f3, b/466790304)
- แก้ไขปัญหาที่ตัวเลือก AM/PM ของ
TimePickerไม่ได้ใช้รูปแบบข้อความที่กำหนดโดยข้อกำหนดของ Material Design (Ie908a, b/469788786) - แก้ไขข้อขัดข้องใน
HorizontalFloatingToolbarที่อาจเกิดขึ้นในโหมดแนวนอนเมื่อแสดงแป้นพิมพ์บนหน้าจอ (Ia13c1, b/466692323) - แก้ไขปัญหาที่
TopAppBarชื่ออาจทับซ้อนกับactionsเมื่อไม่มีnavigationIconตอนนี้ชื่อจะถูกจำกัดให้พอดีกับพื้นที่ที่มีอยู่แล้ว (I2ba97, b/428697836) - รองรับ RTL ด้วยการขยายแผงยึด (I0770b, b/467775639)
เวอร์ชัน 1.5.0-alpha11
17 ธันวาคม 2025
androidx.compose.material3:material3-*:1.5.0-alpha11 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha11 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- เพิ่ม
ExpandedFullScreenContainedSearchBarแล้ว (Ie472d,b/454658635) - เพิ่มการรองรับการสร้าง Carousel แบบหลายสัดส่วนโดยใช้ Lazy Grid (I2b109, b/462137656)
- ตอนนี้รายการที่สื่อความหมายของ Material พร้อมใช้งานแล้ว โดยรองรับการโต้ตอบและการจัดรูปแบบที่แบ่งกลุ่ม มีการเพิ่มฟิลด์สีเพิ่มเติมใน
ListItemColors(I54057, b/441569230) - ตอนนี้ API ภาพสไลด์แบบเรียกดูหลายรายการและแบบไม่จำกัดมีเสถียรภาพแล้ว (I7a558, b/401537465)
- เพิ่มพารามิเตอร์
contentPaddingและhorizontalSpacingลงในFilterChipและElevatedFilterChipเพิ่มค่าเริ่มต้นของHorizontalSpacingและContentPaddingลงในFilterChipDefaults(Iec6e3, b/455596578)
การแก้ไขข้อบกพร่อง
- การตั้งค่า
BottomSheetScaffold sheetPeekHeightเป็น 0 จะปิดใช้สมอpartiallyExpanded(I52dc9, b/465158677)
เวอร์ชัน 1.5.0-alpha10
3 ธันวาคม 2025
androidx.compose.material3:material3-*:1.5.0-alpha10 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha10 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มภาพหมุนแบบหลายสัดส่วน (I15247, b/411232854)
การเปลี่ยนแปลง API
- ตอนนี้เราได้จัดเตรียมแฟล็กฟีเจอร์
isCheckboxStylingFixEnabledผ่านออบเจ็กต์ComposeMaterial3Flagsแล้ว (I97baf, b/457504316) - พารามิเตอร์
disabledCheckmarkColorในCheckboxColorsได้ย้ายไปไว้ที่ส่วนท้ายของรายการพารามิเตอร์เพื่อให้มั่นใจถึงความเข้ากันได้แบบไบนารี (I734d8, b/457504316)
การแก้ไขข้อบกพร่อง
- เปลี่ยนแป้นลูกศรทั้งหมดที่เปลี่ยนค่าแถบเลื่อนเพื่อแก้ไขการโฟกัสที่ติดอยู่ในอุปกรณ์บางเครื่องที่ไม่มีแป้น Tab (I154dd, b/460912699)
เวอร์ชัน 1.5.0-alpha09
19 พฤศจิกายน 2025
androidx.compose.material3:material3-*:1.5.0-alpha09 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha09 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการอัปเดตเมนูที่สื่ออารมณ์ ซึ่งรวมถึงรายการในเมนูที่เปิด/ปิดได้ รายการในเมนูที่เลือกได้ กลุ่มเมนู และเมนูป๊อปอัป นอกจากนี้ ยังมีค่าเริ่มต้นของเมนูแบบใหม่ที่สื่อความหมายใน
MenuDefaultsด้วย (I5cdd4, b/417731597, b/448646125, b/448646896, b/448646891) - ตอนนี้
Modifier.minimumInteractiveComponentSizeมีAlignmentLines: MinimumInteractiveTopAlignmentLineและMinimumInteractiveLeftAlignmentLineใหม่ 2 รายการที่เผยแพร่ต่อสาธารณะ เส้นเหล่านี้จะทำเครื่องหมายขอบภาพของคอมโพเนนต์ก่อนที่จะเพิ่มพื้นที่ว่างเพื่อให้เป็นไปตามข้อกำหนดของพื้นที่เป้าหมายการสัมผัสขั้นต่ำ (I7f485, b/458124197) - เพิ่ม
ExpandedDockedSearchBarWithGapแล้ว (Idb7f8)
การเปลี่ยนแปลง API
- เพิ่มการตรวจสอบเพื่อเปิดใช้การกำหนดขนาดคอมโพเนนต์ตัวชี้ที่แม่นยำ (I8108d)
- เพิ่ม
Modifier.alignในButtonGroupScope(I03890, b/416590906) - นำ
ModalBottomSheetAPI ที่เลิกใช้งานแล้วซึ่งเป็นแบบทดลองที่อยู่ในรุ่นที่เสถียรอย่างน้อย 1 รุ่นออก (Ifbe1d, b/449757604) ButtonGroupใหม่ที่โอเวอร์โหลดด้วยพารามิเตอร์verticalAlignment(I23a37, b/416590906)- นำ API ทดลองที่ซ่อนไว้ซึ่งเลิกใช้งานแล้วออก ซึ่ง API เหล่านี้อยู่ในรุ่นที่เสถียรอย่างน้อย 1 รุ่น (I4f68d, b/449754465, b/449749933, b/401311419, b/449749928, b/449756019)
การแก้ไขข้อบกพร่อง
- เพิ่มเคล็ดลับเครื่องมือลงในปุ่มรายการเพิ่มเติมเริ่มต้นของแถบเครื่องมือแบบลอย (Ife952, b/422781172)
- แก้ไขตัวบ่งชี้ของ
WideNavigationRailที่ถูกตัดหากตั้งค่าให้มีความกว้างมากขึ้นผ่านขนาดป้ายกำกับที่ใหญ่ขึ้น (I9d740, b/444728723) - อัปเดตปุ่มต่อท้ายของปุ่มแยกเพื่อให้ไอคอนอยู่ตรงกลางตามรูปร่างที่กำหนดแม้ใน RTL (Icab82)
เวอร์ชัน 1.5.0-alpha08
5 พฤศจิกายน 2025
androidx.compose.material3:material3-*:1.5.0-alpha08 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha08 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มพร็อพเพอร์ตี้
hourInputและminuteInputลงในอินเทอร์เฟซTimePickerStateแล้ว พร็อพเพอร์ตี้เหล่านี้มีไว้เพื่อเก็บข้อมูลดิบที่ยังไม่ได้ตรวจสอบจากผู้ใช้ พร็อพเพอร์ตี้ชั่วโมงและนาทีที่มีอยู่จะยังคงอยู่และแสดงถึงเวลาที่ถูกต้องล่าสุดที่ทราบ (I09d74, b/394612017)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้ใช้ Switch กับ
ReusableContentโดยไม่เคลื่อนไหวไม่ได้แล้ว (I61093, b/455909150)
เวอร์ชัน 1.5.0-alpha07
22 ตุลาคม 2025
androidx.compose.material3:material3-*:1.5.0-alpha07 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha07 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
SearchBar.InputFieldที่ได้รับการปรับปรุงพร้อมพารามิเตอร์keyboardOptionsซึ่งช่วยให้ป้อนข้อความได้อย่างมีประสิทธิภาพด้วยการระบุตัวเลือกแป้นพิมพ์และพารามิเตอร์lineLimitsที่ช่วยให้ระบุการเลื่อนการตัดข้อความได้ (Id08a4, b/416991049)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องในแถบเลื่อนที่การโต้ตอบด้วยการกดไม่เกิดขึ้นเมื่อแตะลง การเปลี่ยนแปลงนี้ช่วยให้มั่นใจได้ว่าระบบจะปล่อย
PressInteraction.PressทันทีในawaitFirstDownซึ่งจะให้ความคิดเห็นแบบภาพทันที (If9e25, b/308501482) - แก้ไขปัญหาเกี่ยวกับเครื่องหมายแคร์ต
Tooltipไม่เปลี่ยนทิศทางเมื่อเลื่อน ตอนนี้TooltipBoxจะทริกเกอร์การจัดองค์ประกอบใหม่ทุกครั้งที่ป๊อปอัปเคล็ดลับเครื่องมือสลับด้าน เพื่อให้มั่นใจว่าทิศทางของแคร์เร็ตจะอัปเดตอย่างถูกต้อง (I5ad1e, b/438875827)
เวอร์ชัน 1.5.0-alpha06
8 ตุลาคม 2025
androidx.compose.material3:material3-*:1.5.0-alpha06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มสีที่เลื่อนสำหรับ
AppBarWithSearchแล้ว นอกจากนี้ สีคอนเทนเนอร์ของช่องป้อนข้อมูลแถบค้นหายังโปร่งใสโดยค่าเริ่มต้นด้วย สีคอนเทนเนอร์เริ่มต้นของแถบค้นหาจะไม่เปลี่ยนแปลง (I4fe32) - เพิ่ม Composable ตัวบ่งชี้การล้นเริ่มต้นไปยัง
FloatingToolbar(I6a6f8, b/415833723) - อัปเดต
isExpandedเป็นisShowingสำหรับ API เมนูในกลุ่มปุ่ม (I86309, b/412419514) - อัปเดต
initialIsExpandedเป็นinitialIsShowingและเพิ่มตัวบ่งชี้การล้นเริ่มต้นที่ใช้ร่วมกันได้ในButtonGroupDefaults(I6e67c, b/412419514) - นำฟีเจอร์ลากเพื่อปรับขนาดออกจากพื้นผิว API สาธารณะ (Ic85ba, b/437953743, b/442636084)
การแก้ไขข้อบกพร่อง
- แก้ไขลำดับโฟกัสของการไปยังส่วนต่างๆ ของแป้นพิมพ์ด้วยปุ่ม และแก้ไขสำหรับ RTL ด้วย (Ibba27, b/422220597)
- แก้ไขการนำทางด้วยคีย์บอร์ดในตารางการเลือกปีของเครื่องมือเลือกวันที่ (I02363, b/422425720, b/446814683)
- แก้ไขการไปยังส่วนต่างๆ ด้วยแป้นพิมพ์สำหรับตารางการเลือกวันที่ในเครื่องมือเลือกวันที่ (I594ef, b/422220597, b/422223115)
- แก้ไขแถบเครื่องมือที่อยู่นอกหน้าจอซึ่งรับโฟกัสแป้นพิมพ์ (I01a73, b/422786812)
- แก้ไขการนำทางด้วยแป้นพิมพ์สำหรับ
RangeSliderและแถบเลื่อน (Ib6bcf, b/424845268, b/422942624)
เวอร์ชัน 1.5.0-alpha04
10 กันยายน 2025
androidx.compose.material3:material3-*:1.5.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มโอเวอร์โหลดที่ประกอบได้
Textซึ่งยอมรับแลมบ์ดาColorProducerที่ช่วยให้เปลี่ยนสีได้อย่างมีประสิทธิภาพโดยไม่ต้องทริกเกอร์การจัดองค์ประกอบใหม่ทั้งหมด (I9ff25, b/407055128)
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
Scrim()เป็นLevitatedPaneScrim()และซ่อนพร็อพเพอร์ตี้ของคลาส Levitated และ Reflowed (I090e1, b/427953101) - ซ่อน API ของ
calculatePosture()เป็นภายใน (Ie7227, b/424442112) - เปิดเผย
PaneScaffoldHorizontalOrderเป็น API สาธารณะที่ปิดผนึก (Ia4ebe) - ทําเครื่องหมาย API ที่เกี่ยวข้องกับขนาดและท่าทางของหน้าต่างเป็นแบบทดลอง (I4ee96)
การแก้ไขข้อบกพร่อง
- แก้ไขลำดับการไปยังส่วนต่างๆ ด้วยแป้นพิมพ์เพื่อให้โฟกัสย้ายจากปุ่ม FAB ไปยังรายการแรกที่ด้านบน (Icaaa1, b/422762939)
- ปรับปรุงแป้นพิมพ์ของลิ้นชักการนำทางให้เข้าถึงได้ง่าย: ลิ้นชักจะโฟกัสไม่ได้อีกต่อไปเมื่อปิดแล้ว สามารถปิดได้ผ่านแป้น Esc และเนื้อหาของลิ้นชักจะได้รับโฟกัสเมื่อเปิด (Idb995, b/422793544, b/422793651, b/422797424)
- ตอนนี้หน้าปัดนาฬิกาของตัวเลือกเวลาจะตอบสนองต่อการไปยังส่วนต่างๆ/การป้อนข้อมูลด้วยแป้นพิมพ์แล้ว (I9d5d9, b/425710631)
- ใช้ Anchor เริ่มต้นใหม่เมื่อรายการ Anchor การขยายแผงเปลี่ยนแปลง (I91cd1, b/438829477)
เวอร์ชัน 1.5.0-alpha03
27 สิงหาคม 2025
androidx.compose.material3:material3-*:1.5.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงพฤติกรรม
- เราได้ปรับขนาดช่องทําเครื่องหมายและสีของตัวบ่งชี้ให้สอดคล้องกับข้อกําหนดแล้ว เราได้เพิ่มฟีเจอร์
isCheckboxStylingFixEnabledเพื่อช่วยในการย้ายข้อมูลเพื่อลดการหยุดชะงักของ UI โปรดเปิดใช้ด้วยตนเองในแอป เราจะนำฟีเจอร์นี้ออกในเวอร์ชันอนาคต (I5bcd3, b/304300693)
การเปลี่ยนแปลง API
- เพิ่มพารามิเตอร์
contentPaddingสำหรับTopAppBar(Ia5fea) - เพิ่มการลบล้างคอมโพเนนต์สำหรับโครงร่างชุดการนำทาง (I85312)
การแก้ไขข้อบกพร่อง
- ตอนนี้ระบบได้ใช้พารามิเตอร์
containerColorในTimePickerDialogอย่างถูกต้องแล้ว ซึ่งช่วยให้ปรับแต่งสีพื้นหลังของกล่องโต้ตอบได้ (I47f89, b/403183883) - แถบนำทางแบบโมดัลจะไม่สูญเสียโฟกัสเมื่อยุบ และจะปิดเมื่อกดแป้น ESC (4255257)
Snackbarตอนนี้มีลำดับการโฟกัสแป้นพิมพ์ที่ถูกต้องสำหรับปุ่มการดำเนินการและปุ่มปิดแล้ว และปุ่มปิดยังรองรับการแสดงเคล็ดลับเครื่องมือด้วย (11fa13d)
เวอร์ชัน 1.5.0-alpha02
13 สิงหาคม 2025
androidx.compose.material3:material3-*:1.5.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- ใน
PullToRefreshDefaultsเราได้เปลี่ยนชื่อshapeเป็นindicatorShapeและcontainerColorเป็นindicatorContainerColorรวมถึงเพิ่มindicatorMaxDistanceสำหรับใช้เป็นตัวบ่งชี้ (Ib6cbe) - นำแท็กการเลิกใช้งานออกจาก
PullToRefreshDefaults.indicatorColor(Iaaee2) - เพิ่ม
AppBarWithSearchแทนที่TopSearchBarและรองรับไอคอนการนำทาง/การดำเนินการ (I213a5)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่การกดกลับอัปเดตออฟเซ็ตลิ้นชักไม่ถูกต้อง (I85624, b/427778135)
SwipeToDismissBoxจะกลับไปใช้targetValueที่แก้ไขแล้วหากไม่มีจุดยึดอื่นๆBottomSheetScaffoldจะกลับไปใช้targetValueแบบขยายหากไม่มีจุดยึดอื่นๆ (I73d5e, b/428856426)- แก้ไขระยะห่างจากขอบของปุ่มใน
AlertDialogเมื่อวางซ้อนกันในแนวตั้ง (Ia2118) - [FAB] แก้ไขข้อบกพร่องที่ FAB ยังคงคลิกได้หลังจากที่
Modifier.animateFloatingActionButtonซ่อน (I8ea6c, b/430336834) - [แถบเลื่อน] แก้ไขการนำทางด้วยคีย์บอร์ดสำหรับแถบเลื่อน (I3a405)
เวอร์ชัน 1.5.0-alpha01
30 กรกฎาคม 2025
androidx.compose.material3:material3-*:1.5.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มผู้ให้บริการตำแหน่งสำหรับเคล็ดลับเครื่องมือ เพื่อให้นักพัฒนาแอปควบคุมได้ว่าเคล็ดลับเครื่องมือจะอยู่เหนือ ใต้ ซ้าย หรือขวาของจุดยึด เพิ่ม API ที่รับ Shape สำหรับแคร์เร็ต เพื่อให้ระบุรูปร่างที่กำหนดเองได้มากขึ้น (Ie513c)
การเปลี่ยนแปลง API
TextFieldColorsตอนนี้เมธอดในการคำนวณสีของคอมโพเนนต์ตามสถานะเป็นแบบสาธารณะแล้ว (I03165)- นำการระงับคำอธิบายประกอบออกจากแฮนเดิลการเรียกกลับของ
onDismissแล้ว (Ie3166) DatePickerState.getDisplayedMonth(): YearMonth?และDateRangePickerState.getDisplayedMonth(): YearMonth?ได้รับการอัปเดตให้แสดงผลค่าที่กำหนดให้เป็น Null ไม่ได้ (Ice09c, b/427952972)- นำ
ModalWideNavigationRailDefaultsออก ย้ายเนื้อหาไปยังWideNavigationRailDefaultsและเปลี่ยนชื่อที่เกี่ยวข้องกับรูปร่าง (Ic5e61) WideNavigationRailItemสีและข้อความของฟังก์ชันที่เลิกใช้งานแล้วควรมีระดับเป็น "ซ่อน" (Id7e82)- เปลี่ยนระดับของ
WideNavigationRailAPI ที่เลิกใช้งานแล้วเป็นคำเตือนและทำให้เป็นแบบทดลอง (I89085)
การแก้ไขข้อบกพร่อง
- ช่วยให้
DatePickerจัดรูปแบบตัวเลขตามภาษาของตัวเอง ก่อนหน้านี้ หากมีการกำหนดค่าDatePickerสำหรับภาษาอาหรับ ระบบอาจแสดงตัวเลขละตินอย่างไม่ถูกต้องหากภาษาของระบบในอุปกรณ์ใช้ระบบตัวเลขอื่น (Iccf76, b/432616196) - แก้ไขปัญหา
LinearProgressIndicatorที่ไม่ได้แสดงตัวบ่งชี้การหยุดอย่างถูกต้องในเลย์เอาต์ RTL (I0734c) PrimaryScrollableTabRowและตัวคั่นSecondaryScrollableTabRowจะขยายเป็นขนาดเต็มหน้าจอ แม้ว่าเนื้อหาแท็บจะไม่ขยายไปจนสุดหน้าจอก็ตาม (Ic1e9c, b/261741384)
Compose Material3 เวอร์ชัน 1.4
เวอร์ชัน 1.4.0
24 กันยายน 2025
androidx.compose.material3:material3-*:1.4.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.3.0:
ประกาศการเปลี่ยนแปลงคลัง
androidx.compose.material.icons ไม่แนะนําให้ใช้แสดงไอคอน Material ใน Compose อีกต่อไป เนื่องจาก Material Symbols เป็นวิธีใหม่ในการใช้งาน เราหยุดเผยแพร่การอัปเดตไลบรารีนี้แล้ว และได้นำไลบรารีนี้ออกจากการเผยแพร่ไลบรารี Material 3 ล่าสุดแล้ว คุณยังคงอ้างอิงไลบรารีนี้ด้วยตนเองได้หากยังย้ายข้อมูลไม่ได้
เราขอแนะนำให้ดาวน์โหลดไฟล์ XML ของ Vector Drawable จากแท็บ Android ของ https://fonts.google.com/icons แทน เพื่อเข้าถึงไอคอนที่มีสไตล์ล่าสุดอย่าง Material Symbols
ทำไมเราจึงไม่แนะนำห้องสมุดอีกต่อไป ไลบรารีไอคอน ("ไอคอน Material") ได้รับการแทนที่ด้วยรูปลักษณ์ใหม่ของสัญลักษณ์ Material แล้ว และเราพบว่าไลบรารีนี้อาจเพิ่มเวลาบิลด์ของแอปของคุณอย่างมาก เนื่องจากมีไอคอนต่างๆ ทั้งหมดซึ่งอาจไม่จำเป็น
ดูข้อมูลเพิ่มเติมได้ที่ https://developer.android.com/develop/ui/compose/graphics/images/material
การเปลี่ยนแปลงพฤติกรรม
ไลบรารีนี้จะไม่เพิ่มทรัพยากร Dependency ไปยัง
material-icons-coreอีกต่อไป ดังนั้นหากโปรเจ็กต์ของคุณใช้ทรัพยากร Dependency นั้น คุณจะต้องเพิ่มทรัพยากร Dependency นั้นอย่างชัดเจนในไฟล์ build.gradle[.kts] (I735ff, b/349894318)NavigationBarItemและNavigationRailItem's active label color change fromonSurfaceto secondary in order to improve usability, color contrast and improve coherence within the system (Ibc297), to revert to the previous behavior, copy the default colors and change theselectedTextColortoMaterialTheme.colorScheme.onSurface.ตอนนี้คอมโพเนนต์ Material 3 ใช้
MotionSchemeใหม่เพื่อกำหนดการเคลื่อนไหวแล้ว (Ie0f93)การเปลี่ยนแปลงการเคลื่อนไหวของตัวบ่งชี้ความคืบหน้าแบบวงกลมที่ไม่แน่นอน (I3c07e)
คอมโพเนนต์ Material Design 3 ใหม่
HorizontalCenteredHeroCarouselVerticalDragHandle- ช่องข้อความที่ปลอดภัยสำหรับช่องป้อนรหัสผ่าน
การปรับปรุงคอมโพเนนต์ Material Design 3 ที่มีอยู่
- ตอนนี้ข้อความรองรับ
autoSize- แล้ว
- ข้อความที่มี string
- ข้อความที่มี annotatedString
- เพิ่มตัวตกแต่ง Material 3 สำหรับ
BasicTextField2 - เพิ่ม
TimePickerDialogAPI ที่ใช้กับTimePicker,TimeInputหรือมีเวอร์ชันที่สลับได้ - API แถบค้นหาใหม่
- ตอนนี้แถบค้นหาที่ยุบและ "มุมมอง" การค้นหาที่ขยายจะกลายเป็น Composable แยกกันแล้ว
SearchBarแสดงแถบค้นหาในสถานะที่ยุบอยู่ExpandedFullScreenSearchBarและExpandedDockedSearchBarแสดงถึงแถบค้นหาในสถานะขยาย ซึ่งจะเปิดในหน้าต่างใหม่SearchBarStateเพื่อควบคุมสถานะของแถบค้นหา
- เลื่อนระดับ API ทดลองเป็น API ที่เสถียร
- ปรับปรุงประสิทธิภาพ
เวอร์ชัน 1.4.0-rc01
10 กันยายน 2025
androidx.compose.material3:material3-*:1.4.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.4.0-beta03
27 สิงหาคม 2025
androidx.compose.material3:material3-*:1.4.0-beta03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-beta03 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.4.0-beta02
13 สิงหาคม 2025
androidx.compose.material3:material3-*:1.4.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงทรัพยากร Dependency
- นำการขึ้นต่อกันของ
graphics-shapesออก (I219e0, b/436230765)
การเปลี่ยนแปลง API
- ใน
PullToRefreshDefaultsเราได้เปลี่ยนชื่อshapeเป็นindicatorShapeและcontainerColorเป็นindicatorContainerColorรวมถึงเพิ่มindicatorMaxDistanceสำหรับใช้เป็นตัวบ่งชี้ (Ib6cbe) - นำแท็กการเลิกใช้งานออกจาก
PullToRefreshDefaults.indicatorColor(Iaaee2) BasicAlertDialogOverrideScopeได้รับการเลื่อนขั้นเป็นเวอร์ชันเสถียรโดยไม่ตั้งใจ และมีการนำคำอธิบายประกอบเวอร์ชันทดลองออกใน aosp/3701846 ทำเครื่องหมายว่าเป็นการเข้าชมภายใน โดยจะยังคงเป็นเวอร์ชันทดลองแบบสาธารณะใน 1.5.0-alpha (I9182a)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่การกดกลับอัปเดตออฟเซ็ตลิ้นชักไม่ถูกต้อง (I85624, b/427778135)
เวอร์ชัน 1.4.0-beta01
30 กรกฎาคม 2025
androidx.compose.material3:material3-*:1.4.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบ
- เราได้นำ API สาธารณะทั้งหมดที่ติดแท็ก
ExperimentalMaterial3ExpressiveApiหรือExperimentalMaterial3ComponentOverrideApiออกแล้ว โปรดเปลี่ยนไปใช้1.5.0-alphaเพื่อใช้ฟีเจอร์เหล่านี้ต่อไป (Ie4ae0) - โปรดทราบว่าเราจะเปลี่ยนชื่อ
pullToRefreshAPI ที่เสถียรต่อไปนี้ในรุ่นถัดไป (Ib6cbe)
ฟีเจอร์ใหม่
Tooltipตอนนี้รองรับรูปร่างเคอร์เซอร์ที่กำหนดเองและตำแหน่งเคอร์เซอร์ที่กำหนดเอง (เหนือ ใต้ ซ้าย หรือขวาของจุดยึด) แล้ว (Ie513c)
การเปลี่ยนแปลง API
- นำการระงับคำอธิบายประกอบออกจากแฮนเดิลการเรียกกลับของ
onDismissแล้ว (Ie3166) DatePickerState.getDisplayedMonth(): YearMonth?และDateRangePickerState.getDisplayedMonth(): YearMonth?ได้รับการอัปเดตให้แสดงผลค่าที่กำหนดให้เป็น Null ไม่ได้ (Ice09c, b/427952972)- นำ
ModalWideNavigationRailDefaultsออก ย้ายเนื้อหาไปยังWideNavigationRailDefaultsและเปลี่ยนชื่อที่เกี่ยวข้องกับรูปร่าง (Ic5e61)
การแก้ไขข้อบกพร่อง
- ช่วยให้
DatePickerจัดรูปแบบตัวเลขตามภาษาของตัวเอง ก่อนหน้านี้ หากมีการกำหนดค่าDatePickerสำหรับภาษาอาหรับ ระบบอาจแสดงตัวเลขละตินอย่างไม่ถูกต้องหากภาษาของระบบในอุปกรณ์ใช้ระบบตัวเลขอื่น (Iccf76, b/432616196) - แก้ไขปัญหา
LinearProgressIndicatorที่ไม่ได้แสดงตัวบ่งชี้การหยุดอย่างถูกต้องในเลย์เอาต์ RTL (I0734c) PrimaryScrollableTabRowและตัวคั่นSecondaryScrollableTabRowจะขยายเป็นขนาดเต็มหน้าจอ แม้ว่าเนื้อหาแท็บจะไม่ขยายไปจนสุดหน้าจอก็ตาม (Ic1e9c, b/261741384)
เวอร์ชัน 1.4.0-alpha18
16 กรกฎาคม 2025
androidx.compose.material3:material3-*:1.4.0-alpha18 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha18 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
ModalBottomSheetPropertiesตอนนี้มีตัวเลือกในการปิดใช้ dismissRequest จากการคลิกขอบดำแล้ว (I8e715)- เพิ่มการรองรับ
trackCornerSizeลงในแทร็กของRangeSlider(Iec529)
การเปลี่ยนแปลง API
- กำหนดให้
railExpandedเป็นพารามิเตอร์ที่จำเป็นสำหรับWideNavigationRailItemเพิ่มmodalContentColorสำหรับWideNavigationRailColorsและย้ายWideNavigationRailDefaults.modalContainerShapeไปยังModalWideNavigationRailDefaults.containerShape(Id60c5) - ย้ายพารามิเตอร์ฟังก์ชันสีใหม่ของ
WideNavigationRailไปไว้สุดท้ายและเลิกใช้งานฟังก์ชันเก่า (Iac7f7) PullToRefreshตอนนี้เป็น API ที่เสถียรแล้ว (I18537)- การอัปเดต
DatePickersAPI เราได้นำวันที่สิ้นสุดที่เป็นค่าเริ่มต้นซึ่งเป็นค่า Null สำหรับDateRangePickerออก และกำหนดให้ต้องส่งวันที่สิ้นสุด นอกจากนี้ เรายังได้ชี้แจงการใช้งานการแสดงวันที่ในเอกสารประกอบ API ในเวลาเที่ยงคืน UTC และทำเครื่องหมายตัวรับและตัวตั้งค่าล่าสุดที่ใช้ java.time API เป็นเวอร์ชันทดลองในตอนนี้ (I121b3, b/427952972) - เลื่อนระดับ API พารามิเตอร์ไอคอนที่มี
tint: ColorProducerเป็น API ที่ไม่ใช่เวอร์ชันทดลอง (Ia0133) - นำคำอธิบายประกอบเวอร์ชันทดลองออกจาก
DatePicker,DateRangePickerรวมถึงสถานะ คลาส และประเภทที่รองรับ (I0e4e0, b/391848485) - เปลี่ยนค่าที่โฟกัสได้เริ่มต้นเป็น false เพื่อแก้ไขโฟกัส a11y และเพิ่มพารามิเตอร์
hasActionลงในTooltipBox(I62998) - เลื่อนระดับ API
WideNavigationRail,ShortNavigationBarและNavigationItemที่อยู่ในขั้นทดลอง (I3ca3c) - นำคำอธิบายประกอบ
@ExperimentalMaterial3Apiออกจากฟังก์ชันแถบแอปด้านบน คลาสที่รองรับ และออบเจ็กต์บางรายการ (I0a9b7)
เวอร์ชัน 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เป็นการอ้างอิงที่เลิกใช้งานแล้ว ผู้ใช้ควรใช้การเรียกกลับของSwipeToDismissBoxAPIonDismissedแทน (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เครื่องมือสร้างที่ไม่มีบทบาทคอนเทนเนอร์พื้นผิวจะได้รับการทำเครื่องหมายว่าซ่อนอยู่และไม่แนะนำให้ใช้แล้ว (Ia7237)- นำข้อกำหนด
CircularWavyProgressIndicatorSize.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โดยมีพารามิเตอร์การแสดงโฆษณาใน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) - การอัปเดต
TowRowsTopAppBarAPI นำ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 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
เพิ่ม
TimePickerDialogAPI ที่ใช้กับ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)
- เพิ่ม
TwoRowsTopAppBarAPI ซึ่งเป็นทางเลือกที่ปรับแต่งได้มากกว่าแถบแอปด้านบนขนาดกลางและขนาดใหญ่สำหรับการสร้างแถบแอปด้านบนแบบ 2 แถว ตอนนี้ นักพัฒนาแอปสามารถควบคุมเนื้อหาของชื่อและคำบรรยายแทนเสียงในทั้งสถานะยุบและขยาย โดยมีความสูงที่ปรับแต่งได้สำหรับแต่ละสถานะ (I0be3c, b/306697446, b/229134133, b/268068946)
การเปลี่ยนแปลง API
- เปลี่ยนชื่อ
BottomAppBarรูปแบบการทดสอบเป็นFlexibleBottomAppBarเพื่อให้ควบคุมการจัดเรียงและความสูงของเนื้อหาได้มากขึ้น (Iaa448) - อัปเดตการตั้งชื่อพร็อพเพอร์ตี้ในออบเจ็กต์เริ่มต้นของกลุ่มปุ่มเป็น
CapitalCaseอัปเดตชื่อของanimateFractionให้แม่นยำยิ่งขึ้นตามลักษณะการทำงานที่แสดง (I545cd) - เพิ่มการโอเวอร์โหลดสำหรับปุ่มทั่วไปที่อนุญาตให้ใช้รูปร่างเคลื่อนไหวเมื่อมีการโต้ตอบด้วยการกด เพิ่มรูปร่างปุ่มที่แคชไว้แล้ว (I5ec20)
- ตอนนี้คุณควบคุมวิธีที่
FloatingToolbarที่มี FAB ตอบสนองต่อการเลื่อนได้โดยระบุFloatingToolbarScrollBehaviorสำหรับแถบเครื่องมือที่วางไว้ตามขอบตรงกลาง (เช่น ตรงกลางด้านบนหรือด้านล่าง) เราขอแนะนำให้ใช้ลักษณะการเลื่อนเพื่อซ่อนทั้งคอมโพเนนต์เมื่อเลื่อนเพื่อให้ดูสะอาดตามากขึ้น นอกจากนี้ ยังช่วยป้องกันไม่ให้ FAB ไม่อยู่ตรงกลาง ซึ่งอาจเกิดขึ้นเมื่อใช้ Flagexpandedสำหรับการยุบ (I33f67) - อัปเดต
TopAppBarAPI เวอร์ชันทดลองให้ใช้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
- การอัปเดต
TopAppBarAPI เปลี่ยนชื่อแถบแอปด้านบนขนาดกลางและขนาดใหญ่พร้อมคำบรรยายเป็น*FlexibleTopAppBarรวมรูปแบบสีไว้ในTopAppBarDefault.topAppBarColors()ฟังก์ชันเดียว และเพิ่มพารามิเตอร์สีsubtitleเพื่อใช้กับ Composable ของคำบรรยายแทนเสียงที่ระบุ (I41b65) - นำ
WideNavigationRailArrangementAPI ออกเพื่อใช้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 ที่ทำให้ประกาศตัวเองเมื่อปิดเมื่อ
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, ปานกลาง, ใหญ่ และ xLarge ลงในค่าเริ่มต้นของปุ่ม (If8b6d)
การแก้ไขข้อบกพร่อง
- อัปเดตสีไอคอนต่อท้ายของชิปตัวกรองจากสีหลักเป็น
OnSurfaceContainerตามข้อกำหนด และอัปเดตสีเส้นขอบของชิปทั้งหมดจากสีโครงร่างเป็นสีโครงร่างตัวแปรตามข้อกำหนด (I68bd4)
เวอร์ชัน 1.4.0-alpha03
30 ตุลาคม 2024
androidx.compose.material3:material3-*:1.4.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.4.0-alpha03 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
SheetStateเลิกใช้งานเครื่องมือสร้างที่มีความหนาแน่นแล้วเพื่อใช้เกณฑ์ตำแหน่งและความเร็วแทน (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) - เปลี่ยนชื่อ
TextFieldLabelScopeprogressเป็นlabelMinimizedProgressแล้ว - เปลี่ยนชื่อ
TextFieldLabelPositionDefaultเป็น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 ดังกล่าวอย่างชัดเจนในไฟล์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)
- เพิ่ม
ModalWideNavigationRailAPI และเปลี่ยนชื่อModalExpandedNavigationRailAPI เป็นDismissibleModalWideNavigationRail(Ic9118) - อัปเดต
FloatingAppBarScrollBehaviorเพื่อคำนวณscreenOffsetโดยอัตโนมัติและไม่จำเป็นต้องมี@Composable(Idf349) - อัปเดต API ของ
LoadingIndicatorเพื่อแก้ไขการตั้งชื่อในออบเจ็กต์ค่าเริ่มต้น เพิ่มค่าคงที่LoadingIndicatorElevationที่PullToRefresh(I1d72b) - อัปเดต API ของ
LoadingIndicatorเพื่อแก้ไขการตั้งชื่อในออบเจ็กต์ค่าเริ่มต้น เพิ่มค่าคงที่LoadingIndicatorElevationที่PullToRefresh(I1d72b) - เพิ่มพารามิเตอร์
amplitudeและwaveSpeedลงในรูปแบบที่ไม่แน่นอนของLinearWavyProgressIndicatorและCircularWavyProgressIndicator(I2a0c5) - รองรับการเปลี่ยนรูปร่างของปุ่มเปิด/ปิดไอคอนตามสถานะที่กดหรือเลือก (Ibc781)
- อัปเดตคลาสการพิมพ์เพื่อรองรับขนาดตัวอักษรที่เน้น (Ifa13c)
SplitButtonรูปร่างจะเปลี่ยนตามสถานะเริ่มต้น / สถานะที่กด นำAnimatedTrailingButtonAPI ออกเนื่องจากTrailingButtonAPI สามารถเสนอการปรับแต่งเดียวกันได้ (I95066)- เพิ่มตัวแก้ไขเพื่อเคลื่อนไหวการแสดงและการซ่อน FAB เช่น เมื่อเนื้อหาเลื่อน (I8338d)
- เพิ่มรูปร่างกลุ่มปุ่มที่เชื่อมต่อและระยะห่างไปยัง
ButtonGroupDefaultsเพื่อใช้ในตัวอย่าง (I68e30) - ปุ่มแยกจะเพิ่มระยะห่างด้านข้างสำหรับปุ่มต่อท้าย และเปิดใช้การจัดกึ่งกลางแบบออปติคัลที่คำนวณจากความแตกต่างของมุมเริ่มต้นและมุมสิ้นสุด (I122e2)
- ขอแนะนำ Material
MotionSchemeใหม่ที่อนุญาตให้ตั้งค่ารูปแบบการเคลื่อนไหวของคอมโพเนนต์ โดยตั้งค่าสคีมผ่านMaterialTheme(Id50c2)
การแก้ไขข้อบกพร่อง
- ใช้ดัชนีการย้ายโฟกัสที่ถูกต้องกับ
ScaffoldComposables ย่อย ลำดับคือ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) - เพิ่มเครื่องหมายแคร์เร็ตเริ่มต้นสำหรับริชทูลทิป รองรับการวาดเครื่องหมายแคร์เร็ตที่กำหนดเองเมื่อระบุแองเคอร์
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)- เพิ่มความหมายของชีตปิดลงใน
ModalBottomSheetScrim (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คลาสที่อนุญาตให้จัดรูปแบบลิงก์เป็นพารามิเตอร์ไปยัง Text ที่ใช้ร่วมกันได้แทน (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เป็นLocalRippleConfigurationแทนการระบุRippleConfigurationเป็นisEnabled = false(I22725) ModalBottomSheetวาดขอบมืดเหนือแถบสถานะได้แม่นยำยิ่งขึ้นเมื่อเปิดใช้การแสดงผลแบบขอบจรดขอบ ตอนนี้เนื้อหาของ Bottom Sheet แบบโมดอลสามารถใช้ส่วนแทรกของหน้าต่างได้แล้ว ซึ่งจะช่วยให้เนื้อหาที่มองเห็นได้อยู่เหนือแถบนำทาง พารามิเตอร์ModalBottomSheetwindowInsetsเปลี่ยนชื่อเป็นcontentWindowInsetsเพื่อระบุตำแหน่งที่จะใช้ Inset ซึ่งจะไม่เชื่อมโยงกับตรรกะของหน้าต่างอีกต่อไป ประเภทcontentWindowInsetsได้รับการเปลี่ยนเป็นฟังก์ชันที่แสดงผลWindowInsetsเพื่อให้สามารถแก้ไขได้ภายในหน้าต่างใหม่ (I39630, b/274872542, b/300280229, b/290893168)PrimaryScrollableTabRowและSecondaryScrollableTabRowตอนนี้ใช้เลย์เอาต์ที่กำหนดเองแทนการประกอบย่อย ซึ่งจะช่วยปรับปรุงประสิทธิภาพ (I991e0)- ลิงก์ข้อความมีตัวเลือกการจัดรูปแบบสถานะที่กดนอกเหนือจากการจัดรูปแบบปกติ การวางเมาส์ และการโฟกัส
TextDefaultsแต่ละรายการมีอาร์กิวเมนต์pressedStyleเพื่อรองรับ (Ic473f, b/139312671)
การแก้ไขข้อบกพร่อง
- ตอนนี้จุดยึดการลากของลิ้นชักการนำทางจะตรงกับความกว้างของ
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) - นำ
DismissDirectionและDismissValueenum และ API ที่เลิกใช้งานแล้วออก (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 composable (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แล้ว ตอนนี้สีTopAppBaronScrollเป็น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 หมายความว่าคุณไม่ต้องการยกMutableInteractionSourceและระบบจะสร้างMutableInteractionSourceภายในคอมโพเนนต์หากจำเป็น การเปลี่ยนเป็นค่าว่างจะทำให้คอมโพเนนต์บางอย่างไม่จัดสรรMutableInteractionSourceและทำให้คอมโพเนนต์อื่นๆ สร้างอินสแตนซ์เมื่อจำเป็นเท่านั้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพในคอมโพเนนต์เหล่านี้ หากไม่ได้ใช้MutableInteractionSourceที่ส่งไปยังคอมโพเนนต์เหล่านี้ เราขอแนะนำให้ส่งค่าเป็น null แทน นอกจากนี้ เราขอแนะนำให้คุณทำการเปลี่ยนแปลงที่คล้ายกันในคอมโพเนนต์ของคุณเองด้วย (I41abb, b/298048146) - เพิ่ม
RippleConfigurationและLocalRippleConfigurationเพื่ออนุญาตให้ปรับแต่งการกระเพื่อมต่อคอมโพเนนต์ / ทรีย่อยโดยใช้ค่าคงที่ เช่น หากต้องการเปลี่ยนสีของคอมโพเนนต์ที่คุณควบคุมไม่ได้ หรือปิดใช้เอฟเฟกต์ระลอกสำหรับคอมโพเนนต์ ในกรณีส่วนใหญ่ คุณควรใช้ค่าเริ่มต้น เนื่องจาก API เหล่านี้เป็นทางออกสำหรับการปรับแต่งคอมโพเนนต์แต่ละรายการ / ทรีย่อยที่จำกัด สำหรับการเปลี่ยนแปลงที่กว้างขึ้นและระบบการออกแบบที่กำหนดเอง คุณควรสร้างเอฟเฟกต์ระลอกของคุณเองโดยใช้createRippleModifierNodeแทน (I7b5d6, b/298048146) - เพิ่ม 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ที่เลิกใช้งานแล้วออกSwipeToDismisscomponent, 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
- ทําเครื่องหมาย
SwipeToDismissBoxDismissDirectionและDismissValueว่าเป็นฟีเจอร์ทดลอง (I517b0) - เปลี่ยนชื่อ
SwipeToDismissเป็นSwipeToDismissBoxเปลี่ยนชื่อbackgroundเป็นbackgroundContentและdismissContentเป็น Lambdacontentต่อท้าย (I7f4d3) - ทำให้ตัวสร้างสำหรับ
ChipElevationและSelectableChipElevationเป็นแบบสาธารณะ (Ie0c48, b/308432421) - กำลังเพิ่ม
ModalBottomSheetPropertiesกำลังย้ายsecurePolicyไปยังModalBottomSheetPropertiesกำลังเพิ่มisFocusableและshouldDismissOnBackPressไปยังModalBottomSheetPropertiesบูลีนใหม่เหล่านี้ช่วยกำหนดวิธีที่ Bottom Sheet แบบโมดัลควรจัดการเหตุการณ์ 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) - เปลี่ยนชื่อ
SwipeToDismissAPI เป็นSwipeDismissและเลื่อนระดับSwipeDismissAPI ใหม่เป็นเวอร์ชันที่เสถียร (I14cbe) - เพิ่ม
tonalElevationและshadowElevationลงใน API ของเคล็ดลับเครื่องมือ นอกจากนี้ เราจะย้าย API ของTooltipBox,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ย้ายข้อมูลไปใช้AnchoredDraggableAPI ใหม่แล้วDrawerStateanimateToถูกแทนที่ด้วยเมธอดเปิดและปิด และตอนนี้ออฟเซ็ตจะแสดงเป็นจำนวนลอยตัวแทนที่จะเป็นออบเจ็กต์สถานะ คุณเข้าถึงการชดเชยได้โดยตรงผ่าน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ตอนนี้เป็นแบบเปลี่ยนแปลงไม่ได้แล้ว ซึ่งทำให้การอัปเดตสีแต่ละรายการมีประสิทธิภาพน้อยลง แต่ทำให้การใช้สีที่พบบ่อยมีประสิทธิภาพมากขึ้น เหตุผลที่อยู่เบื้องหลังการเปลี่ยนแปลงนี้คือแอปส่วนใหญ่ไม่ได้มี 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) - อัปเดต
DatePickerformatWithSkeletonให้มีแผนที่ที่ใช้เป็นแคชเพื่อปรับปรุงประสิทธิภาพ (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 จะพิจารณาการแทรกหน้าต่างที่ใช้แล้ว โปรดทราบว่าลักษณะการทำงานของการเว้นวรรคเนื้อหาตาม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มีแท็ก Anchor ที่ซ่อนไว้ที่กำหนดแล้ว แม้ว่าจะปิดใช้โดยค่าเริ่มต้นก็ตาม- อัปเดตเอกสาร
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)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่ระบบคำนวณสถานะของ
ModalBottomSheetHalfExpandedไม่ถูกต้องและชีตจะดูเหมือนลอยอยู่ (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) - เพิ่ม
DateRangePickerAPI ของ Material 3 สำหรับการเลือกช่วงวันที่ (I7a6c3, b/267194809) - เพิ่มการรองรับโหมดป้อนข้อมูล Material 3 สำหรับการเลือกช่วงวันที่ผ่าน
DateRangePickerAPI (Ifdbc4) - ตอนนี้สีของช่องข้อความอนุญาตให้ปรับแต่งได้แล้ว ดังนี้
- สีของช่องป้อนข้อมูลและข้อความตัวยึดตำแหน่งตามสถานะโฟกัสและข้อผิดพลาด เปลี่ยนชื่อพารามิเตอร์
textColorเป็นunfocusedTextColorและเปลี่ยนชื่อplaceholderColorเป็นunfocusedPlaceholderColor - สีคอนเทนเนอร์สำหรับช่องข้อความที่กรอกแล้วตามสถานะข้อผิดพลาดด้วยพารามิเตอร์
errorContainerColorใหม่
- สีของช่องป้อนข้อมูลและข้อความตัวยึดตำแหน่งตามสถานะโฟกัสและข้อผิดพลาด เปลี่ยนชื่อพารามิเตอร์
- สีของช่องข้อความเมนูแบบเลื่อนลงที่เปิดเผยได้รับการอัปเดตด้วยพารามิเตอร์เพื่อรองรับ API คำนำหน้าและคำต่อท้ายใหม่ (I9c8b4, b/254284181, b/264766350)
การเปลี่ยนแปลง API
- เปลี่ยนกลับ API แถบเลื่อนบางเวอร์ชันและนำการโอเวอร์โหลดแถบเลื่อนที่ซ้ำซ้อนออก ซึ่งครอบคลุมโดยแถบเลื่อนเวอร์ชันทดลองใหม่ที่มีภาพขนาดย่อและแทร็กที่กำหนดเอง กำลังโปรโมต
RangeSliderให้เสถียร (Ie8fbd) - เปลี่ยนชื่อ
defaultElevationเป็นelevationในฟังก์ชันระดับความสูงของชิป (I0f872) - API ของช่องข้อความ Material 3 ต่อไปนี้ไม่ใช่เวอร์ชันทดลองอีกต่อไป
TextField,OutlinedTextField,textFieldWithLabelPadding,textFieldWithoutLabelPadding,outlinedTextFieldPadding(Ieb5c0, b/261561819) TimePickersis24Hourใช้การตั้งค่าระบบ (I18856)- นำคำอธิบายประกอบเวอร์ชันทดลองออกจาก Scaffold API (Ibb51e, b/261565765, b/261436953)
การแก้ไขข้อบกพร่อง
ModalBottomSheetรูปร่างเริ่มต้นจะเป็นSheetDefaults.ExpandedShapeเสมอ (I0dfca)- การปรับปรุงการช่วยเหลือพิเศษสำหรับ Material 3
DatePickerและDateRangePicker(I5087e) - แก้ไขข้อบกพร่องที่ทำให้มีการส่งต่อข้อจำกัดความสูงสูงสุดและอาจทำให้เกิดข้อขัดข้อง (I30d8c)
- นำบทบาทเชิงความหมายออกจากพื้นผิวที่คลิกได้และเลือกได้ อัปเดตคอมโพเนนต์ที่ใช้บทบาทเหล่านั้นเพื่อตั้งค่าบทบาทโดยใช้ตัวแก้ไข 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ที่ไม่ใช่เวอร์ชันทดลองซึ่งมีภาพขนาดย่อและแทร็กที่กำหนดเอง นอกจากนี้ เรายังจะเลิกใช้งาน APISliderและRangeSliderก่อนหน้าด้วย (Ie5ea6, b/261566890) - ตั้งค่า
Modifier.tooltipAnchor()เป็นสาธารณะ เพื่อให้นักพัฒนาแอปส่งค่านี้ไปยัง Anchor เพื่อระบุว่าควรแสดงเคล็ดลับเครื่องมือเมื่อกดค้าง อัปเดตPlainTooltipBoxAPI เพื่อไม่ให้TooltipStateเป็นค่าที่กำหนดให้เป็น Null ได้อีกต่อไป และตอนนี้มีค่าเริ่มต้นแล้ว (Ie2fb7) ProgressIndicatorDefaults.circularTrackColorได้รับการทำเครื่องหมายเป็น@Composableเพื่อให้สอดคล้องกัน (Id29cc)- คืนค่า Getter พร็อพเพอร์ตี้
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
การอัปเดตทรัพยากร Dependency
- ตอนนี้
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 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
DatePickerAPI เริ่มต้นสำหรับการเลือกวันที่เดียวผ่าน 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ที่ประกอบได้ซึ่งมีช่องเนื้อหา (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 - อัปเดตลิ้นชักและชีตเพื่อหน่วงเวลาการกดอย่างถูกต้องในกรณีที่ท่าทางสัมผัสอาจกลายเป็นเหตุการณ์การเลื่อน
การอัปเดตทรัพยากร Dependency
- ตอนนี้
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 และ Material3,TextFieldและOutlinedTextFieldซึ่งช่วยให้ตั้งค่าความสูงขั้นต่ำของคอมโพเนนต์ในแง่ของจำนวนบรรทัดได้ (I4af1d) - เลิกใช้งานฟังก์ชัน
TopAppBarDefaults smallTopAppBarColorsเพื่อให้ใช้ฟังก์ชันtopAppBarColorsใหม่แทน ซึ่งควรใช้เมื่อสร้างTopAppBar(Ie6cb9) - เพิ่มพารามิเตอร์
minLinesลงในBasicTextและBasicTextFieldซึ่งช่วยให้ตั้งค่าความสูงขั้นต่ำของ Composable เหล่านี้ในแง่ของ จำนวนบรรทัด (I24294, b/122476634)
การแก้ไขข้อบกพร่อง
- ตัดเนื้อหาของ
IconButtonMaterial3 และIconToggleBottonให้เป็นรูปร่างเลเยอร์สถานะของคอมโพเนนต์ (เช่น รูปร่างวงกลม) (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) - เลิกใช้งานฟังก์ชัน
SmallTopAppBarMaterial 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ฟังก์ชันลักษณะการทำงานให้เป็น Composable และระบุค่าเริ่มต้นสำหรับสถานะแถบแอปด้านบนและข้อกำหนดภาพเคลื่อนไหว (I642b3) - อัปเดตลายเซ็นของคอมโพเนนต์ FAB ให้ตรงกับ API ของ Surface (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
- จัดเรียงพารามิเตอร์แท็บ Reorder และแท็บไอคอน Leading ใหม่เพื่อรักษาความสอดคล้องภายใน API (Ie2637)
- ทำเครื่องหมาย
BadgeDefaultsว่าเป็นเวอร์ชันทดลอง (I98ef3) - นำฟังก์ชันลิ้นชักการนำทางที่เลิกใช้งานแล้วออก (I4f2db)
- จัดเรียงพารามิเตอร์แถบเลื่อนการเรียงใหม่ใน Material 3 เพื่อรักษาความสอดคล้องกันภายใน API (I0aee7)
- จัดเรียงพารามิเตอร์
NavigationBarและNavigationRailใหม่เพื่อให้สอดคล้องกันภายใน API (I51cda) - จัดลำดับพารามิเตอร์ใหม่ใน Material 3 เพื่อรักษาความสอดคล้องกันใน API (If4ae1)
- จัดเรียงพารามิเตอร์ของแถบเลื่อนใหม่ใน Material 3 เพื่อรักษาความสอดคล้องภายใน API (I62673)
- เปลี่ยนชื่อพารามิเตอร์ไอคอนเป็นการดำเนินการเพื่อให้สอดคล้องกับแถบแอปด้านบน (Id75be)
- ทำเครื่องหมาย
BadgeและBadgedBoxเป็นเวอร์ชันทดลองเนื่องจากการจัดแนว Anchor ยังคงมีการเปลี่ยนแปลง (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
- เปลี่ยนชื่อฟังก์ชันที่ประกอบกันได้
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) - เพิ่ม Material3
FilledIconButton,FilledTonalIconButtonและOutlinedIconButton(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
- อัปเดต Surface API ของ Material 3 ซึ่งจะนำฟังก์ชันที่โอเวอร์โหลดกลับมาสำหรับ 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) - เพิ่ม
LazyVerticalGridAPI ใหม่เพื่อกำหนดขนาดแกนไขว้ (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)
- เปลี่ยน
SurfaceAPI เพื่อรับ 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)
การอัปเดตทรัพยากร Dependency
- ตอนนี้ขึ้นอยู่กับ 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