Compose Material 3

สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design 3 ซึ่งเป็นวิวัฒนาการขั้นถัดไปของ Material Design Material 3 ประกอบด้วยธีมและคอมโพเนนต์ที่อัปเดต รวมถึงฟีเจอร์การปรับแต่งในแบบของคุณของ Material You เช่น สีแบบไดนามิก และออกแบบมาให้สอดคล้องไปกับสไตล์ภาพและ UI ของระบบ Android 12 ใหม่
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า เวอร์ชันอัลฟ่า
9 เมษายน 2025 1.3.2 - - 1.4.0-alpha12

โครงสร้าง

คอมโพสิชันคือชุดค่าผสมของรหัสกลุ่ม 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 การเขียนที่จำเป็นต่อการโต้ตอบกับอุปกรณ์ ซึ่งรวมถึงเลย์เอาต์ ภาพวาด และอินพุต

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

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

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

Groovy

dependencies {
    implementation "androidx.compose.material3:material3:1.3.2"
    implementation "androidx.compose.material3:material3-window-size-class:1.3.2"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha12"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.material3:material3:1.3.2")
    implementation("androidx.compose.material3:material3-window-size-class:1.3.2")
    implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha12")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

ความคิดเห็น

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

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

ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของเครื่องมือติดตามปัญหา

Compose Material3 Common เวอร์ชัน 1.0

เวอร์ชัน 1.0.0-alpha01

17 เมษายน 2024

androidx.compose.material3:material3-common:1.0.0-alpha01, androidx.compose.material3:material3-common-android:1.0.0-alpha01 และ androidx.compose.material3:material3-common-desktop:1.0.0-alpha01 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

คอมโพเนนต์ที่ไม่มีธีมซึ่งใช้สร้างคอมโพเนนต์ Material Design ได้

Compose Material3 Adaptive Navigation Suite เวอร์ชัน 1.0

เวอร์ชัน 1.0.0-alpha07

1 พฤษภาคม 2024

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07 และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha07 มีการคอมมิตเหล่านี้

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

  • ทำให้ API ชุดการนำทางไม่ใช่เวอร์ชันทดลอง (If62af)

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

  • ใช้ส่วนแทรกสำหรับเนื้อหาโดยค่าเริ่มต้น (50266df)

เวอร์ชัน 1.0.0-alpha06

17 เมษายน 2024

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06 และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีการคอมมิตเหล่านี้

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

  • เพิ่ม containerColor และ contentColor ลงใน NavigationSuiteScaffoldDefaults (I64e3a, b/331993720)
  • การเพิ่มฟังก์ชัน itemColors ลงใน NavigationSuiteDefaults (Idf719, b/328480012)
  • ทำให้ NavigationSuiteScope ปิดผนึก (Iefa57)

เวอร์ชัน 1.0.0-alpha05

6 มีนาคม 2024

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05 และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีการคอมมิตเหล่านี้

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

  • กำหนดตัวสร้าง NavigationSuiteItemColors เป็นสาธารณะ (Ica83a, b/324886877)

เวอร์ชัน 1.0.0-alpha04

21 กุมภาพันธ์ 2024

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04 และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีการคอมมิตเหล่านี้

การอัปเดตทรัพยากร Dependency

  • อัปเดตทรัพยากร 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 นั้นภายในคอมโพเนนต์หากจําเป็น การเปลี่ยนเป็นค่า Null จะช่วยให้คอมโพเนนต์บางรายการไม่จัดสรร MutableInteractionSource เลย และช่วยให้คอมโพเนนต์อื่นๆ สร้างอินสแตนซ์แบบเลื่อนเวลาไว้เมื่อจําเป็นเท่านั้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพของคอมโพเนนต์เหล่านี้ หากคุณไม่ได้ใช้ MutableInteractionSource ที่ส่งไปยังคอมโพเนนต์เหล่านี้ เราขอแนะนำให้ส่งค่า Null แทน นอกจากนี้ เราขอแนะนำให้คุณทำการเปลี่ยนแปลงที่คล้ายกันในคอมโพเนนต์ของคุณเองด้วย (I41abb, b/298048146)

เวอร์ชัน 1.0.0-alpha02

13 ธันวาคม 2023

androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02, androidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02 และ androidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha02 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

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

  • แก้ไขคอมโพเนนต์การนําทางที่เต็มหน้าจอเมื่อแพลตฟอร์มรูทมี 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

  • แยก API การนําทางออกจาก API โครงร่างแบบปรับเปลี่ยนได้ (Ic4045)
  • นำชั้นเรียน GutterSize ออก (I785b3)

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

  • แก้ไขไม่ให้สลับแผงเมื่อไม่ได้ใช้ 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

Compose Material3 เวอร์ชัน 1.4

เวอร์ชัน 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)
  • เปลี่ยนชื่อคอมโพเนนต์ IconButton xSmall- และ xLarge- เป็น extra โดยค่าเริ่มต้น (Ib6e0f)
  • เพิ่มฟังก์ชัน NavigationSuite, NavigationSuiteItem และ NavigationSuiteColors ใหม่เพื่อรองรับเลย์เอาต์ประเภทใหม่ (I203d6)
  • เพิ่ม NavigationSuiteTypes ใหม่และเพิ่มฟังก์ชัน navigationSuiteType ใหม่ที่มีตัวเลือกเลย์เอาต์เหล่านั้น (If68f9)

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

  • ตอนนี้ ColorScheme.contentColorFor จะแมป surfaceDim กับ onSurface (I8891a)
  • อัปเดตการใช้งาน DateInputTextField เพื่อแก้ไขปัญหาที่ช่องป้อนข้อมูลไม่แสดงวันที่ที่ตั้งค่าแบบเป็นโปรแกรม (I6c8d1, b/401143451)
  • แก้ไขลําดับโฟกัสการอ่านออกเสียงของแถบนําทางและแถบนําทางแบบกว้าง (I6cf6f, b/407048224)

เวอร์ชัน 1.4.0-alpha11

26 มีนาคม 2025

androidx.compose.material3:material3-*:1.4.0-alpha11 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha11 มีการคอมมิตเหล่านี้

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

  • อัปเดตการใช้อักษรตัวพิมพ์ใหญ่สำหรับพร็อพเพอร์ตี้แบบคอมโพสิเบิลในออบเจ็กต์เริ่มต้นสำหรับปุ่มและปุ่มเปิด/ปิด เพิ่มวิธีการใน ToggleButtonDefaults และ ButtonDefaults สำหรับระยะห่างจากขอบของเนื้อหา รูปร่าง ขนาดไอคอน ระยะห่างระหว่างไอคอน และรูปแบบข้อความที่แนะนำ โดยขึ้นอยู่กับความสูงของคอนเทนเนอร์ (Iea69e)
  • นําฟังก์ชันและค่าคงที่ทดลองที่เลิกใช้งานแล้วออกจาก FloatingToolbar (I8f339)
  • ตอนนี้คอมโพเนนต์การยกระดับใช้อินเทอร์เฟซทั่วไป และมีคอนสตรัคเตอร์และพร็อพเพอร์ตี้สาธารณะ (Ibb172)
  • การเพิ่มตัวแก้ไข animateWidth ใน ButtonGroupScope ที่จะต้องใช้กับรายการย่อยของกลุ่มปุ่มเพื่อให้แสดงภาพเคลื่อนไหวของรายการย่อยได้อย่างถูกต้อง (Ia3bb6)

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

  • แก้ไขระยะห่างจากขอบของแถบเครื่องมือแบบลอยเพื่อให้ภาพมีความสมดุลเมื่อยุบ และปรับปรุงความยืดหยุ่นสำหรับเนื้อหาขนาดใหญ่ (I06c00)

เวอร์ชัน 1.4.0-alpha10

12 มีนาคม 2025

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

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

  • TabRowDefaults.tabIndicatorOffset เลิกใช้งานแล้วเพื่อใช้ TabIndicatorScope.tabIndicatorOffset แทน (Ib36b3)
  • แก้ไขการพิมพ์ผิดสำหรับระยะห่างจากขอบของเนื้อหาขนาดเล็กในค่าเริ่มต้นของปุ่ม (I19bfe)
  • TabRow และ ScrollableTabRow เลิกใช้งานแล้ว โปรดใช้ตัวแปรหลักและรองของแต่ละรายการแทน แถวแท็บหลักและรองมีประสิทธิภาพและตรงตามข้อกำหนดมากขึ้น (I918e2)
  • เพิ่ม rememberSliderState และ rememberRangeSliderState แล้ว (I8e384)
  • เพิ่ม shouldAutoSnap ลงใน SliderState เพื่อควบคุมกลไกการจับภาพอัตโนมัติ การปิดใช้อาจมีประโยชน์สำหรับภาพเคลื่อนไหวที่กำหนดเอง (I07745)
  • ตอนนี้ความกว้างแท็บขั้นต่ำของแถวแท็บที่เลื่อนได้กลายเป็นพารามิเตอร์แล้ว ตัวแปรแถวแท็บหลักและรองไม่ใช่เวอร์ชันทดลองอีกต่อไป (If6f15, b/226665301)
  • ทำให้คลาส ExitAlwaysFloatingToolbarScrollBehavior เป็นสาธารณะซึ่งอนุญาตให้สร้างโดยไม่ต้องมีการจัดองค์ประกอบ (Ibf31c)

เวอร์ชัน 1.4.0-alpha09

26 กุมภาพันธ์ 2025

androidx.compose.material3:material3-*:1.4.0-alpha09 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha09 มีการคอมมิตเหล่านี้

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

  • เปลี่ยนชื่อช่องการตั้งค่าของ DragHandle ในสถานะเริ่มต้น แยกสถานะการกดและลาก กำหนดให้ขนาดเริ่มต้นเป็นแบบสาธารณะ (I787b9)
  • การอัปเดต TowRowsTopAppBar API นําพารามิเตอร์ Lambda expanded ออกและเพิ่มพารามิเตอร์แยกต่างหากสําหรับความสูงแบบขยายและแบบยุบ (Idd677, b/306697446, b/229134133, b/268068946)

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

  • ตอนนี้แถบแอปด้านล่างจะสังเกตบริการสำรวจด้วยการสัมผัส (เช่น TalkBack) และแสดงข้อความเหล่านั้นทุกครั้งที่บริการเปิดอยู่ (I4b34d)

เวอร์ชัน 1.4.0-alpha08

12 กุมภาพันธ์ 2025

androidx.compose.material3:material3-*:1.4.0-alpha08 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha08 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่ม TimePickerDialog API ที่สามารถใช้กับ TimePicker, TimeInput หรือมีเวอร์ชันที่เปลี่ยนได้ (Id2d83)

  • API แถบค้นหาใหม่

    • ตอนนี้แถบค้นหาแบบยุบและ "มุมมอง" การค้นหาแบบขยายจะแยกเป็นคอมโพสิเบิลที่แตกต่างกัน
    • 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 นี้มีพารามิเตอร์เส้นขีดที่ช่วยให้คุณควบคุมการแสดงผลเครื่องหมายถูกและขอบช่องทําเครื่องหมายได้มากขึ้น (I65a88)
  • เพิ่ม TwoRowsTopAppBar API ซึ่งเป็นทางเลือกที่ปรับแต่งได้มากกว่าแถบแอปขนาดกลางและขนาดใหญ่สำหรับการสร้างแถบแอปด้านบน 2 แถว ตอนนี้นักพัฒนาแอปสามารถควบคุมเนื้อหาของชื่อและคำบรรยายทั้งในสถานะยุบและขยาย โดยมีการปรับความสูงของแต่ละสถานะได้ (I0be3c, b/306697446, b/229134133, b/268068946)

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

  • เปลี่ยนชื่อรูปแบบ BottomAppBar เวอร์ชันทดลองเป็น FlexibleBottomAppBar เพื่อให้ควบคุมการจัดเรียงและระดับความสูงของเนื้อหาได้มากขึ้น (Iaa448)
  • อัปเดตการตั้งชื่อพร็อพเพอร์ตี้ในออบเจ็กต์เริ่มต้นของ Button Group เป็น CapitalCase อัปเดตชื่อ animateFraction ให้สอดคล้องกับลักษณะการทำงานที่แสดงมากขึ้น (I545cd)
  • การเพิ่ม Overloads สําหรับปุ่มทั่วไปที่อนุญาตให้มีรูปร่างเคลื่อนไหวเมื่อมีการโต้ตอบด้วยการกด เพิ่มรูปร่างปุ่มที่แคชไว้ (I5ec20)
  • ตอนนี้คุณควบคุมวิธีที่ FloatingToolbar ที่มี FAB ตอบสนองต่อการเลื่อนได้โดยระบุ FloatingToolbarScrollBehavior สำหรับแถบเครื่องมือที่วางไว้ตามขอบตรงกลาง (เช่น ตรงกลางด้านบนหรือด้านล่าง) เราขอแนะนำให้ใช้ลักษณะการเลื่อนเพื่อซ่อนคอมโพเนนต์ทั้งหมดเมื่อเลื่อนดูเพื่อให้ดูสะอาดตายิ่งขึ้น วิธีนี้ยังป้องกันไม่ให้ FAB อยู่นอกศูนย์ด้วย ซึ่งอาจเกิดขึ้นเมื่อใช้ Flag expanded สำหรับการยุบ (I33f67)
  • อัปเดต TopAppBar API เวอร์ชันทดลองให้ใช้ Alignment.Horizontal แทน TopAppBarTitleAlignment ที่กําหนดเองเมื่อตั้งค่าการจัดแนวของชื่อและคำบรรยายแทนเสียง (I70ca2)
  • SliderState#onValueChange เป็นสาธารณะแล้วเพื่อให้ผู้ใช้ควบคุมได้มากขึ้น (I104eb)
  • แนะนำ NavigationSuiteScaffoldState เพื่ออนุญาตภาพเคลื่อนไหวของคอมโพเนนต์การนำทาง นอกจากนี้ ให้แนะนำการโอเวอร์โหลดของ NavigationSuiteScaffold และ NavigationSuiteScaffoldLayout ที่มีพารามิเตอร์สถานะ (I6a8c9, b/328674235)

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

  • ย้ายชั้นเรียน IconButtonColors และ IconToggleButtonColors จาก IconButtonDefaults.kt กลับไปยัง IconButton.kt (I3c233)

การมีส่วนร่วมจากภายนอก

  • SliderState#isDragging เป็นแบบสาธารณะแล้ว (I8458a)

เวอร์ชัน 1.4.0-alpha06

15 มกราคม 2025

androidx.compose.material3:material3-*:1.4.0-alpha06 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha06 มีการคอมมิตเหล่านี้

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

  • เพิ่ม displayCutout ลงในกลุ่มส่วนตัดที่คอมโพเนนต์ Material พิจารณาโดยค่าเริ่มต้น เพื่อหลีกเลี่ยงไม่ให้เนื้อหาซ้อนทับกับส่วนตัดของจอแสดงผล การเปลี่ยนแปลงลักษณะการทำงานนี้จะส่งผลต่อลักษณะการทำงานของคอมโพเนนต์ที่รับรู้ส่วนเว้ารอบๆ ส่วนเว้าของจอแสดงผล ซึ่งรวมถึงค่าเริ่มต้นของพารามิเตอร์ WindowInsets สําหรับคอมโพเนนต์ Material 3 ที่รองรับการฝัง และค่า WindowInsets ที่ระบุไว้ในออบเจ็กต์ค่าเริ่มต้นของคอมโพเนนต์สําหรับทั้ง Material 2 และ Material 3 หากการเปลี่ยนแปลงนี้ทําให้เกิดลักษณะการทำงานที่ไม่พึงประสงค์ ให้ระบุพารามิเตอร์ WindowInsets ด้วยตนเองตามคอมโพเนนต์ (I43ee9, b/362508045)

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

  • การอัปเดต TopAppBar API เปลี่ยนชื่อแถบแอปด้านบนขนาดกลางและขนาดใหญ่ที่มีคำบรรยายเป็น *FlexibleTopAppBar รวมรูปแบบสีต่างๆ ไว้ในฟังก์ชัน TopAppBarDefault.topAppBarColors() เดียว และเพิ่มพารามิเตอร์สี subtitle เพื่อใช้กับ Composable ของคำบรรยายแทน (I41b65)
  • นํา WideNavigationRailArrangement API ออกเพื่อใช้ Arrangement.Vertical (Id0341)
  • เพิ่ม VerticalSlider @Composable ใหม่ (I2bfba)
  • เพิ่มแทร็กใหม่ @Composable ที่อนุญาตให้ระบุมุมแทร็กภายนอกและไอคอนแทร็กที่กำหนดเอง (I436a4)
  • อัปเดต API ของแถบเครื่องมือแบบลอยตัวให้ใช้ออบเจ็กต์ FloatingToolbarColors แทนคอนเทนเนอร์สีเดียว (I9a054)
  • เพิ่มและใช้คำอธิบายประกอบเวอร์ชันทดลองใหม่ ExperimentalMaterial3ComponentOverrideApi (Ia1eaf)
  • ตอนนี้ Modifier.indicatorLine จะเปลี่ยนรูปร่างของช่องข้อความเพื่อจัดการการตัด (I8c5f3, b/380704151)
  • เปลี่ยนชื่อฟังก์ชัน FloatingAppBar เวอร์ชันทดลองเป็น FloatingToolbar (I1dbf8)
  • เพิ่ม floatingToolbarVerticalNestedScroll ใหม่ที่สามารถแนบกับคอนเทนเนอร์ที่เลื่อนได้เพื่ออัปเดตสถานะการขยายของแถบเครื่องมือแบบลอยตามการเคลื่อนไหวการเลื่อนที่ข้ามเกณฑ์ (I6d65f)
  • ขอแนะนํา API ใหม่สําหรับการสร้างแถบเครื่องมือแบบลอยที่มีปุ่มการดำเนินการแบบลอย (FAB) แนบอยู่ API มีตัวเลือกการปรับแต่งที่ยืดหยุ่น ซึ่งช่วยให้คุณจัดเรียงแถบเครื่องมือในแนวนอนหรือแนวตั้ง และวาง FAB ที่จุดเริ่มต้นหรือจุดสิ้นสุดของแถบเครื่องมือได้ (I9e350)

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

  • แก้ไขปัญหาการช่วยเหลือพิเศษของ Snackbar ซึ่งทําให้ Snackbar ประกาศตัวเองเมื่อปิดอยู่เมื่อ TalkBack เปิดอยู่ (/I9db53)

การมีส่วนร่วมจากภายนอก

  • BasicTooltip ใน Foundation และ BasicTooltip/Tooltip ใน Material3 (Ifc2e6)

เวอร์ชัน 1.4.0-alpha05

12 ธันวาคม 2024

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

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

  • แทนที่ประเภทในค่า WideNavigationRailState.current/target ด้วย enum เพื่อให้อ่านได้ง่ายขึ้น (I2d6ab)
  • SplitButton เปลี่ยน Shape API จากคลาสข้อมูลเป็นคลาสเพื่อความเข้ากันได้ของไบนารี (I53812)
  • เพิ่ม API ของเคล็ดลับเครื่องมือซึ่งมีพารามิเตอร์ onDismissRequest เพื่อให้ผู้สร้างตัดสินใจได้ว่าจะเกิดอะไรขึ้นเมื่อผู้ใช้คลิกนอกเคล็ดลับเครื่องมือ เลิกใช้งาน API เก่าที่ไม่มีพารามิเตอร์ใหม่นี้ (I99aef)
  • เปลี่ยนชื่อ opticalCentering เป็น horizontalCenterOptically การเปลี่ยนตัวแก้ไขเป็นแบบภายใน แทนที่พารามิเตอร์การถ่วงด้วยออฟเซตเริ่มต้นและสิ้นสุดสูงสุด (I0b904)
  • เปลี่ยน WideNavigationRailState ให้มีค่าปัจจุบัน/เป้าหมาย นำรายการที่เป็นไปได้ออกเพื่อใช้บูลีน (Idfa29, b/356039090)
  • เพิ่ม NavigationBarItemComponentOverride (I3a06a)

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

  • แก้ไขลักษณะการทำงานของแถบแอปด้านบนและด้านล่างให้เปลี่ยนสีอย่างน่าเชื่อถือเมื่อเลื่อนเนื้อหาจนสุด (Idc4e8, b/293665988)
  • ตอนนี้ฟังก์ชันลักษณะการเลื่อนสำหรับแถบแอปด้านบนและด้านล่างจะแสดงลักษณะการเลื่อนที่จดจำไว้เพื่อให้ทำงานได้ดีขึ้นเมื่อมีการคอมโพสใหม่ (I0fdbe, b/207957336)
  • ตอนนี้พารามิเตอร์ตัวแก้ไขจะใช้หลังจากตัวแก้ไขภายใน เช่น ลักษณะการลากและความหมายแทนที่จะใช้ก่อน ซึ่งจะส่งผลต่อลําดับการใช้ตัวแก้ไข (I8d83f)
  • Bottom Sheet ที่ขยายจะยังคงขยายอยู่เมื่อเปลี่ยนขนาด (I2870b, b/324934884)
  • กำหนดสถานะและสถานะแถบนำทางสำหรับพร็อพเพอร์ตี้ Windows อย่างถูกต้อง (Ie674d, b/362539765)
  • ย้ายพารามิเตอร์ตัวแก้ไขไปยังรูทของแท็บเล็ตตามเอกสารประกอบ ซึ่งจะช่วยให้การติดตั้งใช้งานสอดคล้องกับ M2 (I0235e, b/372311595)

การมีส่วนร่วมจากภายนอก

  • ฟังก์ชัน DatePickerDialog ที่ใช้ร่วมกัน (I7dced)

เวอร์ชัน 1.4.0-alpha04

13 พฤศจิกายน 2024

androidx.compose.material3:material3-*:1.4.0-alpha04 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha04 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงลักษณะการทำงาน

  • เปลี่ยนสีกลับเป็น iconButtonColors, iconToggleButtonColors, outlinedIconButtonColors, outlinedIconToggleButtonColors และ outlinedIconToggleButtonBorder ตามที่ระบุไว้ใน aosp/3212478 ย้ายลักษณะการทำงานที่เปลี่ยนกลับแล้วไปไว้ในชุดฟังก์ชันใหม่ที่เรียกว่า 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)

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

  • เพิ่มประสิทธิภาพลักษณะการทํางานของ contentPadding ใน Scaffold เพื่อหลีกเลี่ยงการจัดเรียงเนื้อหาส่วนเนื้อหาใหม่ทุกครั้งที่มีการเปลี่ยนแปลง contentPadding (I8c8e2, b/373904168)
  • เปลี่ยนชื่อ progress ของ TextFieldLabelScope เป็น labelMinimizedProgress
  • เปลี่ยนชื่อ TextFieldLabelPosition Default เป็น Attached แล้ว นำสมาชิกอินเทอร์เฟซออกแล้ว (If75c6)
  • แก้ไขปัญหาเกี่ยวกับ DatePicker ในโหมดป้อนข้อมูล ซึ่งข้อผิดพลาดในการตรวจสอบอาจทําให้ความสูงของคอมโพเนนต์เปลี่ยนแปลง (I2e229, b/280462363)
  • ทําให้แถบเลื่อนของวัสดุเปลี่ยนค่าเมื่อกดแป้นควบคุม (I1c442)

เวอร์ชัน 1.4.0-alpha02

16 ตุลาคม 2024

androidx.compose.material3:material3-*:1.4.0-alpha02 ได้รับการปล่อยแล้ว เวอร์ชัน 1.4.0-alpha02 มีการคอมมิตเหล่านี้

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

  • การอัปเดตเครื่องมือเลือกวันที่เพื่อให้แน่ใจว่ามีการใช้ภาษาอย่างสอดคล้องกันตลอดทั้ง DatePicker และ DateRangePicker เมื่อตั้งค่าภาษาผ่าน DatePickerState หรือ DateRangePickerState โดยตรง โปรดทราบว่าเมื่อตั้งค่าภาษาเป็นรัฐโดยตรง คุณจะต้องตรวจสอบว่ามีการแปลข้อความชื่อและบรรทัดแรกให้สอดคล้องกับภาษานั้น เนื่องจากระบบจะยังคงใช้ข้อความเริ่มต้นตามภาษาเริ่มต้นของแพลตฟอร์ม (I37073, b/326490763, b/321657276)
  • SheetState.isAnimationRunning แสดงแล้ว (I9a3d7)
  • ตอนนี้ DatePickerColors จะมีความสำคัญเหนือกว่าสีที่ขัดแย้งกันซึ่งกำหนดไว้ในรูปแบบข้อความการจัดรูปแบบตัวอักษรของธีม นอกจากนี้ โปรดทราบว่าการอัปเดตนี้จะปรับตําแหน่งพารามิเตอร์ 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 อีกต่อไป ดังนั้นหากโปรเจ็กต์ของคุณต้องใช้ 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)
  • เพิ่มวัสดุ SecureTextField และ OutlinedSecureTextField สำหรับช่องป้อนรหัสผ่าน (I7e22d)
  • เพิ่มขอบเขตในป้ายกํากับช่องข้อความเพื่อค้นหาความคืบหน้าของภาพเคลื่อนไหว (If5ec8)
  • เพิ่มการรองรับ MotionEvent.CLASSIFICATION_DEEP_PRESS ไปยังเคล็ดลับเครื่องมือ (I62e6a)
  • ตอนนี้ isAfternoon ของ TimePickerState เป็น val ของส่วนขยายแทนที่จะเป็น var ในอินเทอร์เฟซ และเปลี่ยนชื่อเป็น isPm (I89a97)
  • อัปเดตคลาสการจัดรูปแบบตัวอักษรเพื่อรองรับขนาดแบบเน้น (Ifa13c)
  • เพิ่ม ModalWideNavigationRail API และเปลี่ยนชื่อ ModalExpandedNavigationRail API เป็น DismissibleModalWideNavigationRail (Ic9118)
  • อัปเดต FloatingAppBarScrollBehavior ให้คํานวณ screenOffset โดยอัตโนมัติและไม่ต้องระบุ @Composable (Idf349)
  • การอัปเดต LoadingIndicator API เพื่อแก้ไขการตั้งชื่อออบเจ็กต์ค่าเริ่มต้น เพิ่มค่าคงที่ LoadingIndicatorElevation ที่ PullToRefresh (I1d72b)
  • การอัปเดต LoadingIndicator API เพื่อแก้ไขการตั้งชื่อออบเจ็กต์ค่าเริ่มต้น เพิ่มค่าคงที่ LoadingIndicatorElevation ที่ PullToRefresh (I1d72b)
  • เพิ่มพารามิเตอร์ amplitude และ waveSpeed ลงในรูปแบบที่ไม่แน่นอนของ LinearWavyProgressIndicator และ CircularWavyProgressIndicator (I2a0c5)
  • รองรับการเปลี่ยนรูปร่างของปุ่มเปิด/ปิดไอคอนตามสถานะการกดหรือเลือก (Ibc781)
  • อัปเดตคลาสการจัดรูปแบบตัวอักษรเพื่อรองรับขนาดแบบเน้น (Ifa13c)
  • SplitButton รูปร่างจะเปลี่ยนตามสถานะเริ่มต้น / กด นํา AnimatedTrailingButton API ออกเนื่องจาก TrailingButton API เสนอการปรับแต่งแบบเดียวกันได้ (I95066)
  • เพิ่มตัวแก้ไขเพื่อแสดงภาพเคลื่อนไหวของการแสดงและการซ่อน FAB เช่น เมื่อเลื่อนเนื้อหา (I8338d)
  • การเพิ่มรูปร่างและระยะห่างของกลุ่มปุ่มที่เชื่อมต่อกันไปยัง ButtonGroupDefaults เพื่อใช้ในตัวอย่าง (I68e30)
  • ปุ่มแยกเพิ่มระยะขอบแนวนอนสำหรับปุ่มต่อท้ายและเปิดใช้การกึ่งกลางแบบออปติคอลที่คำนวณจากความแตกต่างของมุมเริ่มต้นและมุมสิ้นสุด (I122e2)
  • ขอแนะนำ Material MotionScheme ใหม่ที่ช่วยในการตั้งค่ารูปแบบการเคลื่อนไหวของคอมโพเนนต์ กำหนดรูปแบบผ่าน MaterialTheme (Id50c2)

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

  • ใช้ดัชนีการโฟกัสที่ถูกต้องกับ Composable ย่อย Scaffold ลําดับคือ topBar, bottomBar, fab, เนื้อหา, แถบข้อมูล (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 รายการใหม่

  • ภาพสไลด์
  • [ModalBottomSheet] ตอนนี้รองรับการกดย้อนกลับแบบคาดการณ์ใน U+ แล้ว (Iccf32, b/281967264, b/304850357)
  • [SearchBar] ตอนนี้รองรับการย้อนกลับที่คาดการณ์ได้ใน U+ (I657f8)
  • ตอนนี้ลิ้นชักการนำทาง (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)
  • บทบาทพื้นฐานของแพลตฟอร์มและคอนเทนเนอร์แพลตฟอร์มได้รับการปรับเล็กน้อยเพื่อให้มีสีสันมากขึ้นในธีมสว่างและธีมมืด (I677a5)
  • โปรโมต 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 และป้ายกำกับ (I3833e)
  • เพิ่มตัวแก้ไขใหม่ 2 รายการใน CarouselItemScope ได้แก่ maskClip และ maskBorder เพื่อเพิ่มรูปร่างและเส้นขอบลงในรายการภาพสไลด์ได้อย่างง่ายดาย (Id67a1)
  • TimePickerState เป็นอินเทอร์เฟซและอนุญาตให้ตั้งเวลาได้แล้ว (I88546)
  • อัปเดต API สำหรับการจัดรูปแบบลิงก์: ย้าย TextLinkStyles ไปยัง TextStyle และนำ TextDefaults ออกจากวัสดุ (I5477b)

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

  • ตอนนี้ไอคอนสถานะและแถบนําทางของ ModalBottomSheet จะตอบสนองต่อสถานะธีมมืด (Ie1fe7, b/338342149)
  • เพิ่มความหมายของชีตที่ปิดแล้วลงในModalBottomSheetสกรีน (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 ที่อนุญาตให้จัดรูปแบบลิงก์เป็นพารามิเตอร์ให้กับคอมโพสิชันข้อความแทน (I31b93)

เวอร์ชัน 1.3.0-alpha06

1 พฤษภาคม 2024

androidx.compose.material3:material3-*:1.3.0-alpha06 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-alpha06 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบ

  • API ใหม่สำหรับการดึงเพื่อรีเฟรช

    • ปรับ PullToRefreshState ให้ใช้ค่าเศษแทนหน่วย Dp
    • ผู้ใช้จะเป็นผู้ควบคุมสถานะ isRefreshing แทน PullToRefreshState
    • แยกการเชื่อมต่อการเลื่อนที่ฝังอยู่ออกจาก PullToRefreshState การดำเนินการนี้จัดการโดย PullToRefreshBox หรือ Modifier.pullToRefresh ใหม่
    • การอัปเดตนี้ถือเป็นการเปลี่ยนแปลงที่ส่งผลต่อ API เวอร์ชันทดลองก่อนหน้านี้ (I0adeb, b/314496282, b/317177684, b/323787138, b/324573502, b/317177683)

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

  • ระบบนำ RippleConfiguration#isEnabled ออกแล้ว และทำให้ LocalRippleConfiguration เป็นค่าที่อนุญาตเป็น Null หากต้องการปิดใช้การกระเพื่อม ให้ระบุ null ไปยัง LocalRippleConfiguration แทนการระบุ RippleConfiguration ไปยัง isEnabled = false (I22725)
  • ModalBottomSheet วาดหน้าจอซ้อนทับแถบสถานะได้แม่นยำยิ่งขึ้นเมื่อเปิดใช้การแสดงผลแบบเต็มหน้าจอ ตอนนี้เนื้อหาของชีตด้านล่างแบบโมดัลสามารถใช้ส่วนแทรกของหน้าต่างได้ ซึ่งจะช่วยให้เนื้อหาที่มองเห็นอยู่เหนือแถบนำทาง เปลี่ยนชื่อพารามิเตอร์ ModalBottomSheet windowInsets เป็น contentWindowInsets เพื่อระบุตําแหน่งที่จะใช้ส่วนแทรก ซึ่งจะไม่เชื่อมโยงกับตรรกะกรอบหน้าต่างอีกต่อไป ประเภท 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 ของ Foundation จะเสถียร (Icda29)
  • เพิ่มออบเจ็กต์ TextDefaults ที่มีเมธอดในการสร้าง LinkAnnotation และแยกวิเคราะห์สตริงที่ติดแท็ก HTML ซึ่งใช้ MaterialTheme กับลิงก์ (I98532, b/139312671)
  • ExposedDropdownMenuBoxScope ไม่อนุญาตให้ใช้คลาสย่อยอีกต่อไป ตอนนี้เมนูแบบเลื่อนลงที่แสดงจะมี MenuAnchorType ซึ่งควรส่งไปยัง menuAnchor เพื่อรองรับการช่วยเหลือพิเศษได้ดียิ่งขึ้น คุณควรใช้วิธีนี้แทนการส่ง focusable ไปยัง ExposedDropdownMenu ซึ่งเลิกใช้งานแล้ว menuAnchorมีพารามิเตอร์ใหม่ในการควบคุมสถานะ enabled (I55ee6, b/257209915, b/308840226)
  • แก้ไขสีเส้นขอบของ OutlinedButton เมื่อปิดใช้ เพิ่มการโอเวอร์โหลด ButtonDefaults.outlinedButtonBorder("enabled") ที่รับสถานะ "เปิดใช้งาน" (Ie650b, b/318461363)
  • เพิ่มคลาส CarouselItemInfo ใหม่เพื่อช่วยให้ลูกค้าทราบข้อมูลเกี่ยวกับขนาดของสินค้า (I9070c)
  • เราได้เลิกใช้งานตัวสร้าง ColorScheme ที่ไม่มีคอนเทนเนอร์พื้นผิวแล้ว โปรดย้ายข้อมูลไปยังคอนสตรคเตอร์ที่มีคอนเทนเนอร์พื้นผิว (I35c11)
  • [Outlined]TextFieldDefaults เปลี่ยนชื่อ ContainerBox เป็น Container แล้ว (Ie8d3b)

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

  • BottomSheetScaffold จะไม่เลื่อนจากการเลื่อนที่ซ้อนกันอีกต่อไปหาก sheetSwipeEnabled เป็นเท็จ (I5e1c1, b/306464779)
  • นำคำอธิบายประกอบExperimentalMaterial3Api OptIn บางรายการใน IconButtonSamples.kt ออก (I111d1)

เวอร์ชัน 1.3.0-alpha04

3 เมษายน 2024

androidx.compose.material3:material3-*:1.3.0-alpha04 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-alpha04 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มภาพสไลด์ Material3 เวอร์ชันทดลอง 2 เวอร์ชัน ได้แก่ HorizontalMultiBrowseCarousel และ HorizontalUncontainedCarousel (I88d64)
  • อัปเดตลิ้นชักการนำทางของ 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)
  • นำเอนทิตีและ API DismissDirection และ DismissValue ที่เลิกใช้งานแล้วออก (I89ccd)
  • เพิ่มแท็กทดลองลงในCarouselStateออบเจ็กต์สหายของภาพสไลด์ (I94154)
  • เลิกใช้งาน LocalMinimumInteractiveComponentEnforcement และเปิดตัว LocalMinimumInteractiveComponentSize แทน (I7a7ac)
  • เครื่องมือสร้าง SearchBarColors พร้อมใช้งานแบบสาธารณะแล้ว (I769ca)
  • เพิ่มพารามิเตอร์ gesturesEnabled ไปยัง SwipeToDismissBox แล้ว (Idc59f, b/324170119)
  • นํา API ของช่องข้อความที่ทําเครื่องหมายว่าเลิกใช้งานและเวอร์ชันทดลองออก (I1305f)

เวอร์ชัน 1.3.0-alpha03

20 มีนาคม 2024

androidx.compose.material3:material3-*:1.3.0-alpha03 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-alpha03 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบ (Visual Breaking Changes)

  • อัปเดตการวางซ้อนสถานะโฟกัสเป็น 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)
  • เรียงลําดับพารามิเตอร์ใหม่ในคอมโพสิชันแทร็กแถบเลื่อน (I9f315)
  • ขณะนี้ ExposedDropdownMenu ติดตั้งใช้งานโดยใช้ Popup แล้ว ลักษณะการทำงานควรเหมือนกัน ยกเว้นเมนูที่โฟกัสได้ซึ่งมีช่องข้อความที่แก้ไขได้อาจปิดไปเมื่อพิมพ์บนแป้นพิมพ์

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

  • บทบาทพื้นฐานของแพลตฟอร์มและคอนเทนเนอร์แพลตฟอร์มได้รับการปรับเล็กน้อยเพื่อให้มีสีสันมากขึ้นในธีมสว่างและธีมมืด (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 สำหรับการคํานวณช่วงแถบเลื่อน เนื่องจากการปัดเศษ Float อาจไม่ถูกต้อง (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)
  • อัปเดตสีของคอนเทนเนอร์และสีของแฮนเดิลการลากของ Bottom Sheet (I72a0a)
  • ตอนนี้สีของคอนเทนเนอร์ RichTooltip เป็น SurfaceContainer แล้ว (Ia8b45)
  • ตอนนี้สีของคอนเทนเนอร์ SearchBar เป็น SurfaceContainerHighest แล้ว SearchBarDefaults.TonalElevation เปลี่ยนชื่อเป็น 0.dp แล้ว (I88604)
  • อัปเดตสวิตช์ที่ปิดใช้และแทร็ก/ไอคอนที่ไม่ได้เลือกเพื่อใช้ประโยชน์จากบทบาทสี SurfaceContainerHighest (I7687a)
  • ตอนนี้สีของคอนเทนเนอร์ AlertDialog เป็น SurfaceContainerHigh แล้ว (Ie0433)
  • ตอนนี้สีของคอนเทนเนอร์ BottomAppBar เป็น SurfaceContainer แล้ว TopAppBar onScroll เปลี่ยนเป็น SurfaceContainer แล้ว (I41630)
  • ตอนนี้สีของคอนเทนเนอร์ ElevatedCard เป็น SurfaceContainerLow แล้ว สีคอนเทนเนอร์ของ FilledCard เป็น SurfaceContainerHighest (I35141)
  • ตอนนี้สีของคอนเทนเนอร์ ElevatedButton เป็น SurfaceContainerLow แล้ว ตอนนี้ FilledIconButton ที่ไม่ได้เลือกจะมีสีคอนเทนเนอร์เป็น SurfaceContainerHighest (I792c9)
  • อัปเดตบทบาทสีของคอนเทนเนอร์ TimePicker และสีหน้าปัดนาฬิกาเป็น SurfaceContainerHighest (I43b93)

เวอร์ชัน 1.3.0-alpha01

21 กุมภาพันธ์ 2024

androidx.compose.material3:material3-*:1.3.0-alpha01 ได้รับการปล่อยแล้ว เวอร์ชัน 1.3.0-alpha01 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • อัปเดตการเขียน M3 ModalBottomSheet เพื่อรองรับการคาดคะเนการพิมพ์ย้อนกลับใน U+ (Iccf32, b/281967264, b/304850357)
  • อัปเดต Compose M3 SearchBar เพื่อรองรับการคาดคะเนการกดย้อนกลับใน U+ (I657f8)
  • อัปเดตแถบเลื่อนเพื่อปรับปรุงการช่วยเหลือพิเศษด้วยการเพิ่มตัวบ่งชี้ระยะห่างและจุดสิ้นสุด (I3058e)
  • อัปเดต ProgressIndicator เพื่อปรับปรุงการช่วยเหลือพิเศษด้วยการเพิ่มตัวบ่งชี้ระยะห่างและจุดจอด (I21451)
  • การเพิ่มเคอร์เซอร์เริ่มต้นสำหรับเคล็ดลับเครื่องมือแบบริชมีเดีย ตอนนี้ API เคล็ดลับเครื่องมือแบบริชมีเดียใหม่อนุญาตให้วาดเคอร์เซอร์ที่กำหนดเองสำหรับจุดยึด LayoutCoordinates หนึ่งๆ ได้ (Ifd42c)

การเปลี่ยนแปลงลักษณะการทำงาน

  • คอมโพเนนต์ Material ได้ย้ายข้อมูลไปใช้ Ripple API ใหม่แล้ว และจะไม่ค้นหา RippleTheme อีกต่อไป

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

  • drawStopIndicator สนุกๆ พร้อมให้รับชมแบบสาธารณะแล้ว (I3f59f)
  • ทําเครื่องหมายฟังก์ชัน formatWithSkeleton ของ DatePicker เป็นภายใน (Ic65dc)
  • ตอนนี้ DropdownMenu รองรับสี รูปร่าง ความสูง และเส้นขอบที่กำหนดเอง (I8e981, b/289554448, b/301887035, b/283654243)
  • คอมโพเนนต์ Material3 ที่แสดง MutableInteractionSource ใน API ได้รับการอัปเดตให้แสดง MutableInteractionSource แบบ Null ที่ค่าเริ่มต้นเป็น null ไม่มีการทําการเปลี่ยนแปลงเชิงความหมายในส่วนนี้ การผ่านค่า Null หมายความว่าคุณไม่ต้องการยกระดับ MutableInteractionSource และระบบจะสร้าง MutableInteractionSource นั้นภายในคอมโพเนนต์หากจําเป็น การเปลี่ยนเป็นค่า Null จะช่วยให้คอมโพเนนต์บางรายการไม่จัดสรร MutableInteractionSource เลย และช่วยให้คอมโพเนนต์อื่นๆ สร้างอินสแตนซ์แบบเลื่อนเวลาไว้เมื่อจําเป็นเท่านั้น ซึ่งจะช่วยปรับปรุงประสิทธิภาพของคอมโพเนนต์เหล่านี้ หากคุณไม่ได้ใช้ MutableInteractionSource ที่ส่งไปยังคอมโพเนนต์เหล่านี้ เราขอแนะนำให้ส่งค่า Null แทน นอกจากนี้ เราขอแนะนำให้คุณทำการเปลี่ยนแปลงที่คล้ายกันในคอมโพเนนต์ของคุณเองด้วย (I41abb, b/298048146)
  • เพิ่ม RippleConfiguration และ LocalRippleConfiguration เพื่ออนุญาตให้ปรับแต่งริปเปิลตามคอมโพเนนต์ / ต้นไม้ย่อยโดยใช้ค่าคงที่ เช่น หากต้องการเปลี่ยนสีของคอมโพเนนต์ที่คุณไม่ได้ควบคุม หรือปิดใช้ภาพกระเพื่อมสำหรับคอมโพเนนต์ ในกรณีส่วนใหญ่ คุณควรใช้ค่าเริ่มต้น เนื่องจาก API เหล่านี้เป็นทางออกสำหรับการปรับแต่งคอมโพเนนต์แต่ละรายการ / ต้นไม้ย่อยแบบจํากัด สําหรับการเปลี่ยนแปลงที่กว้างขึ้นและระบบการออกแบบที่กําหนดเอง คุณควรสร้าง Ripple ของคุณเองโดยใช้ createRippleModifierNode แทน (I7b5d6, b/298048146)
  • เพิ่ม Ripple API ใหม่ใน material3 ซึ่งมาแทนที่ rememberRipple ที่เลิกใช้งานแล้ว นอกจากนี้ ยังเพิ่ม CompositionLocal ชั่วคราว LocalUseFallbackRippleImplementation เพื่อเปลี่ยนคอมโพเนนต์ material3 กลับไปใช้ rememberRipple / RippleTheme API ที่เลิกใช้งานแล้ว เราจะนำตัวเลือกนี้ออกในรุ่นที่ใช้งานเสถียรรุ่นถัดไป และตัวเลือกนี้มีไว้เพื่อเป็นความช่วยเหลือในการย้ายข้อมูลชั่วคราวในกรณีที่คุณระบุ RippleTheme ที่กําหนดเองเท่านั้น (I34cbc, b/298048146)

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

  • นำองค์ประกอบย่อยภายใน ModalBottomSheet ออกเพื่อปรับปรุงประสิทธิภาพ แก้ไขปัญหาที่ ModalBottomSheet อาจขัดข้องในบางสถานการณ์เมื่อใช้ร่วมกับ LookaheadScope (I2a198)
  • นำองค์ประกอบย่อยภายใน BottomSheetScaffold ออกเพื่อปรับปรุงประสิทธิภาพ แก้ไขปัญหาที่ BottomSheetScaffold จะขัดข้องในบางสถานการณ์เมื่อใช้ร่วมกับ LookaheadScope (Ie6401)
  • ปรับการจัดแนวป้ายให้อยู่ใกล้กับกึ่งกลางของเนื้อหาแองเคอร์มากขึ้นเมื่อเทียบกับมุมขวาบน (I18a28)
  • แก้ไขปัญหาการช่วยเหลือพิเศษสำหรับ DateRangePicker ที่แสดงชื่อข้อความเป็นเดือน-ปีให้ผู้ใช้โปรแกรมอ่านหน้าจอ การเข้าถึงด้วยสวิตช์ และการเข้าถึงด้วยเสียงดำเนินการได้ (I2ac55)
  • แก้ไขข้อบกพร่องเกี่ยวกับลําดับ mediumTopAppBarColors param (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 ทดลองเป็นเวอร์ชันเสถียรแล้ว

การปรับปรุงประสิทธิภาพ

เวอร์ชัน 1.2.0-rc01

24 มกราคม 2024

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

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

  • แก้ไขข้อบกพร่องเกี่ยวกับลําดับ mediumTopAppBarColors param (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

  • เพิ่มความสามารถในการเปิดใช้เคอร์เซอร์เคล็ดลับเครื่องมือสําหรับ Tooltip API แบบธรรมดา (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)
  • เลิกใช้งาน DismissDirection และ DismissValue API ค่าเหล่านี้ผสานเป็น SwipeToDismissValue ซึ่งแสดงทั้งตําแหน่งและทิศทางของ SwipeToDismissBox ตอนนี้ DismissState.progress มีสถานะเป็น FloatRange ระหว่าง 0.0 ถึง 1.0 เราได้นํา Saver และ Constructor ที่เลิกใช้งานของ DismissState ออกแล้ว คอมโพเนนต์ SwipeToDismiss, สถานะ และออบเจ็กต์เริ่มต้นได้รับการทําเครื่องหมายว่าอยู่ระหว่างการทดสอบ (Ib54f2)

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

  • ตอนนี้ตัวบ่งชี้เริ่มต้นสำหรับ PullToRefresh จะเป็นลูกศรหัวเปิดแทนรูปสามเหลี่ยมเต็ม (I67be3)

เวอร์ชัน 1.2.0-alpha12

29 พฤศจิกายน 2023

androidx.compose.material3:material3-*:1.2.0-alpha12 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha12 มีการคอมมิตเหล่านี้

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

  • RangeSlider จะใช้ช่วง Kotlin (เช่น 0f..1f) แทนคลาสค่า FloatRange ที่กําหนดเอง ตอนนี้ SnapFlingBehavior.kt ใช้ช่วง Kotlin ด้วย (I025cb)
  • ตั้งค่าฟังก์ชันโรงงานของเครื่องมือแก้ไขเป็น @Stable (Ib109f)

เวอร์ชัน 1.2.0-alpha11

15 พฤศจิกายน 2023

androidx.compose.material3:material3-*:1.2.0-alpha11 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha11 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ใช้ PullToRefreshContainer และ PullToRefreshState ซึ่งร่วมกันใช้การดึงเพื่อรีเฟรชใน Material3 (I16456, b/261760718)

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

  • ทําเครื่องหมาย SwipeToDismissBox DismissDirection และ DismissValue เป็นการทดสอบ (I517b0)
  • เปลี่ยนชื่อ SwipeToDismiss เป็น SwipeToDismissBox เปลี่ยนชื่อ background เป็น backgroundContent และ dismissContent เป็น content ที่อยู่ท้าย (I7f4d3)
  • ทำให้ตัวสร้างของ ChipElevation และ SelectableChipElevation เป็นสาธารณะ (Ie0c48, b/308432421)
  • กำลังเพิ่ม ModalBottomSheetProperties กำลังย้าย securePolicy ไปยัง ModalBottomSheetProperties เพิ่ม isFocusable และ shouldDismissOnBackPress ไปยัง ModalBottomSheetProperties บูลีนใหม่เหล่านี้จะช่วยกำหนดวิธีที่ชีตด้านล่างแบบโมดอลควรจัดการเหตุการณ์ IME (Iea56f, b/278216859)
  • อัปเดตสถานะ RangeSlider และ Slider เพื่อนำ initialOnValueChange, คำนำหน้าเริ่มต้น และ kdocs ที่เหมาะสมออก (I57d30)
  • เลิกใช้งานคลาส ChipBorder และการเรียกใช้ฟังก์ชันที่เกี่ยวข้อง ขอแนะนำให้ใช้ BorderStroke โดยตรงแทน (I89cc2)
  • Foundation Tooltip API เปลี่ยนชื่อเป็น @ExperimentalFoundationApi แล้ว (I30b0b)
  • เราไม่เลิกใช้งาน TabRow และ ScrollableTabRow อีกต่อไป ระบบจะทําเครื่องหมายตัวแปรหลักและรองใหม่เป็นเวอร์ชันทดลอง (I0def6)
  • ตอนนี้ชิปตัวกรองและชิปอินพุตใช้ BorderStroke โดยตรง (I07a8d)
  • ตอนนี้ SegmentedButton ใช้ BorderStroke โดยตรง (I89b9b)
  • เปลี่ยนชื่อฟังก์ชัน AlertDialog ทั่วไปเป็น BasicAlertDialog และเลิกใช้งานฟังก์ชันก่อนหน้า (Idbe52)
  • เปลี่ยนชื่อ SwipeToDismiss API เป็น SwipeDismiss และโปรโมต SwipeDismiss API เวอร์ชันใหม่เป็นเวอร์ชันเสถียร (I14cbe)
  • การเพิ่ม tonalElevation และ shadowElevation ลงใน API ของเคล็ดลับเครื่องมือ นอกจากนี้ เราจะย้าย API TooltipBox, PlainTooltip และ RichTooltip กลับไปเป็นแบบทดลองอีกครั้งเนื่องจากมีการเผยแพร่ API เหล่านี้เป็นเวอร์ชันเสถียรโดยไม่ตั้งใจ (If0f66, b/293939035)
  • โปรโมต API ชิปเวอร์ชันทดลองเป็นเวอร์ชันเสถียร (Iea2c3)
  • นำคำอธิบายประกอบ @ExperimentalMaterial3Api ออกจากการ์ดแบบคลิกได้ของ Material3 (I88dbf)

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

  • แก้ไขปัญหาที่ SwipeToDismiss จะขัดข้องในบางสถานการณ์ที่มีเลย์เอาต์ Lazy และ Lookahead ที่ซ้อนกัน (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)
  • [Nav rail/bar] รองรับสีโปร่งใสสำหรับตัวบ่งชี้ (Ie0a9b, b/267289987)

เวอร์ชัน 1.2.0-alpha09

4 ตุลาคม 2023

androidx.compose.material3:material3-*:1.2.0-alpha09 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha09 มีการคอมมิตเหล่านี้

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

  • ย้ายข้อมูล ModalNavigationDrawer และ DismissibleNavigationDrawer ไปใช้ AnchoredDraggable API ใหม่ animateTo ของ DrawerState เปลี่ยนไปใช้เมธอดเปิดและปิด และตอนนี้ระบบจะแสดงออฟเซ็ตเป็นตัวเลขทศนิยมแทนออบเจ็กต์สถานะ คุณสามารถเข้าถึงออฟเซ็ตได้โดยตรงผ่าน currentOffset (I0a72c)
  • มีการเพิ่มฟังก์ชันที่คอมโพสิเบิลไม่ได้สำหรับการสร้าง DatePickerState และ DateRangePickerState โดยตรง ฟังก์ชันเหล่านี้สามารถใช้แทนฟังก์ชัน rememberDatePickerState และ rememberDateRangePickerState แบบคอมโพสิเบิลได้หากจำเป็น (I70326, b/291524052)
  • ตอนนี้TabRowsแบบคงที่และแบบเลื่อนได้มีตัวแปรหลักและรองแล้ว ซึ่งจับคู่กับสีและลักษณะการทำงานของตัวบ่งชี้อย่างถูกต้องตามที่ระบุไว้ใน Material3
  • ตอนนี้ PrimaryScrollableTabRow และ SecondaryScrollableTabRow จะแสดงสถานะการเลื่อน (Iec8f5, b/260572337)
  • การเพิ่มพารามิเตอร์ sheetMaxWidth ใหม่ซึ่งนักพัฒนาแอปสามารถตั้งค่าเพื่อระบุความกว้างสูงสุดของชีต คุณสามารถส่ง Dp.Unspecified สำหรับพารามิเตอร์ได้หากต้องการชีตที่ครอบคลุมความกว้างของหน้าจอทั้งหมด (Ifb7c9, b/266697696)
  • เพิ่ม PlainTooltipBox และ RichTooltipBox API กลับเข้าไปอีกครั้งเป็นเมธอดที่เลิกใช้งาน (I246fa)

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

  • แก้ไขข้อขัดข้องเมื่อเริ่มต้นDatePickerด้วย DatePickerFormatter ที่มีโครงร่างวันที่บางอย่างซึ่งจะยังคงเหมือนเดิมเมื่อแปลงเป็นรูปแบบวันที่ (เช่น YY) (I01f29)

เวอร์ชัน 1.2.0-alpha08

20 กันยายน 2023

androidx.compose.material3:material3-*:1.2.0-alpha08 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha08 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงที่ส่งผลต่อลักษณะการทำงาน

  • ตอนนี้ ColorScheme เป็น Immutable ซึ่งทำให้การอัปเดตสีแต่ละรายการมีประสิทธิภาพน้อยลง แต่ทำให้การใช้งานสีทั่วไปมีประสิทธิภาพมากขึ้น เหตุผลที่ทำให้เกิดการเปลี่ยนแปลงนี้เนื่องจากแอปส่วนใหญ่ไม่ได้ใช้การอัปเดตสีแต่ละสีเป็น Use Case หลัก การดำเนินการนี้ยังคงทำได้ แต่ระบบจะคอมโพสใหม่มากกว่าเดิม ซึ่งจะทำให้เราลดจำนวนการสมัครใช้บริการสถานะผ่านโค้ด Material ทั้งหมดได้อย่างมาก และจะมีผลต่อต้นทุนในการเริ่มต้นและรันไทม์ของ Use Case มาตรฐานมากขึ้น (Ic447d, b/297212873)
  • การปรับโทนสีจะไม่แสดงภาพเคลื่อนไหวในสถานะการโต้ตอบต่างๆ เพื่อจับคู่กับข้อมูลจำเพาะอีกต่อไป (Icdd12)

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

  • เพิ่ม BottomAppBar ใหม่ที่ใช้พารามิเตอร์ BottomAppBarScrollBehavior เพื่อซ่อนโดยอัตโนมัติเมื่อมีการเลื่อนเนื้อหา นอกจากนี้ เรายังได้เพิ่ม FabPosition.EndOverlay ซึ่งช่วยให้ FAB วางซ้อนบนแถบแอปด้านล่างในสแคฟเฟิลด์แทนที่จะยึดไว้ด้านบน (Iecb47)
  • เพิ่มคอมโพเนนต์ป้ายกำกับแบบง่ายที่สร้างขึ้นจาก BasicTooltipBox ซึ่งจะไม่ปิดเมื่อแตะนอกขอบเขตของป้ายกำกับ (I821f9)

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

  • นำการใช้ rememberSaveable สำหรับเคล็ดลับเครื่องมือออก (Icc131, b/299500338)
  • เปิดตัว Flag ชั่วคราวเพื่อควบคุมว่า Scaffold ควรวัดองค์ประกอบย่อยระหว่างการวัดผลหรือระหว่างการจัดวาง โดยค่าเริ่มต้น ระบบจะวัดเป็นหน่วยวัด หากพบปัญหาเกี่ยวกับลักษณะการทำงานใหม่ โปรดแจ้งปัญหา (I0b354)
  • แก้ไขขนาดแนวนอนจากขอบถึงขอบใน BottomSheet โดยใช้การวัดความกว้างของหน้าจออุปกรณ์ที่ถูกต้อง (I1df0c, b/299058752)
  • แก้ไขข้อบกพร่องที่ ModalBottomSheet ไม่เรียก onDismissedRequest เมื่อปิดชีตโดยการปัดลง (Idfdd8)

เวอร์ชัน 1.2.0-alpha07

6 กันยายน 2023

androidx.compose.material3:material3-*:1.2.0-alpha07 ได้รับการปล่อยแล้ว เวอร์ชัน 1.2.0-alpha07 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เราได้เพิ่มการรองรับการมิเรอร์ไอคอนอัตโนมัติใน compose material 1.6.0-alpha05 โปรดดูรายละเอียดเกี่ยวกับการมิเรอร์ไอคอนอัตโนมัติในหมายเหตุประจำรุ่น

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

  • SliderState ใช้ DraggableState (I9b116)
  • เปลี่ยนรูปร่างให้เป็นพารามิเตอร์ที่ต้องระบุ เปลี่ยนชื่อ position เป็น index ในฟังก์ชันตัวช่วยของรูปร่าง (I34941)
  • อัปเดต DatePicker formatWithSkeleton ให้รวมแผนที่ที่ใช้เป็นแคชเพื่อปรับปรุงประสิทธิภาพ (I3195f)
  • เพิ่ม BasicTooltipBox ลงใน compose.foundation และอัปเดต PlainTooltipBox และ RichTooltipBox ให้ใช้ TooltipBox กับคอมโพสิเบิล PlainTooltip และ RichTooltip ใหม่ (I79e1d)

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

  • ตอนนี้ dynamicLightColorScheme และ dynamicDarkColorScheme จะแสดงสีที่มีระดับความอิ่มตัวสูงขึ้นสำหรับบทบาทพื้นผิวและ surfaceContainer (I5e901)
  • แก้ไขปัญหาที่คอมโพเนนต์บางรายการที่ใช้องค์ประกอบย่อย (เช่น 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 มีการคอมมิตเหล่านี้

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

  • แก้ไขการคำนวณ offset ของ DropdownMenu เพื่อให้ค่าออฟเซ็ต x ขึ้นอยู่กับทิศทางเลย์เอาต์ในอุปกรณ์เท่านั้น และค่าออฟเซ็ต y จะไม่กลับกันอีกต่อไปเมื่อเมนูอยู่ใกล้กับด้านล่างของหน้าจอ (Iccc74, b/294103942)
  • แก้ไขการคำนวณ offset ของ DropdownMenu เพื่อให้ค่าออฟเซ็ต 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 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • Segmented Button API เวอร์ชันทดลอง (Ifc8fb)
  • ตอนนี้ตัวแบ่งมีพารามิเตอร์เพื่อควบคุมการวางแนวเพื่อรองรับตัวแบ่งแนวตั้งแล้ว (I4c899, b/288438593)

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

  • เราจะย้ายความหนาแน่นของพึ่งพาไปยังระดับคอมโพเนนต์ ซึ่งมีผลกับคอมโพเนนต์ต่อไปนี้ SwipeToDismiss และคอมโพเนนต์ที่อิงตามชีต โปรดใช้การโอเวอร์โหลดแบบใหม่ที่ให้ไว้ในกรณีที่ความหนาแน่นคือพารามิเตอร์ (I1846e)
  • คําอธิบายประกอบเพิ่มเติมเพื่อระบุอินพุตที่อนุญาตสําหรับคอมโพสิเบิล (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 ให้ตรงกับข้อมูลจำเพาะของ M3 PrimaryIndicator จะตรงกับความกว้างของเนื้อหาในแท็บ ส่วน SecondaryIndicator จะขยายความกว้างเต็มความกว้างที่พร้อมใช้งาน SecondaryIndicator เทียบเท่ากับ Indicator ที่เลิกใช้งานแล้วในปัจจุบันและสามารถแทนที่โดยตรงได้ (I27604)
  • เพิ่มตัวเลือกในการส่ง ScrollState เมื่อสร้าง DropdownMenu หรือ ExposedDropdownMenu เพื่อควบคุมสถานะการเลื่อนแนวตั้งของรายการเมนูที่แสดง (Ia0734, b/185304441)
  • เพิ่มการโอเวอร์โหลดสําหรับ Slider ซึ่งเป็นคอมโพเนนต์เวอร์ชันที่มีสถานะ สร้าง SliderState ที่เก็บข้อมูลทั้งหมดของแทร็กที่ใช้งานอยู่ในปัจจุบัน การวัดองค์ประกอบของ Slider และตรรกะการลากและท่าทางสัมผัส (I124a5)
  • การเปลี่ยนชื่อพร็อพเพอร์ตี้เชิงอรรถศาสตร์ 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 เวอร์ชันเสถียรแล้ว คาดว่าจะมีการเปลี่ยนแปลงเพิ่มเติมใน 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 มีคอมมิตเหล่านี้

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

  • แก้ไขการพาสตัวแก้ไขไปยังคอมโพสิเบิล 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 ทดลองเป็นเวอร์ชันเสถียรแล้ว

โปรดดูรายละเอียดเพิ่มเติมในบล็อกโพสต์นี้

เวอร์ชัน 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 เวอร์ชันเสถียรแล้ว คาดว่าจะมีการเปลี่ยนแปลงเพิ่มเติมใน API สถานะ (I3f39a)
  • ModalBottomSheet ย้ายไปยัง Android เท่านั้น ไม่แนะนำให้ใช้ ModalBottomSheet ในเดสก์ท็อป และฟังก์ชันการทำงานนี้ไม่ได้รับการบำรุงรักษาอย่างต่อเนื่อง (Ib3778)

เวอร์ชัน 1.1.0-beta02

5 เมษายน 2023

androidx.compose.material3:material3:1.1.0-beta02 และ androidx.compose.material3:material3-window-size-class:1.1.0-beta02 เผยแพร่แล้ว เวอร์ชัน 1.1.0-beta02 มีการคอมมิตเหล่านี้

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

  • ตอนนี้ SheetState มีพารามิเตอร์ skipHiddenState ที่ไม่บังคับแล้ว
  • ตอนนี้ rememberStandardBottomSheetState มีพารามิเตอร์ skipHiddenState ที่ไม่บังคับ
  • BottomSheetScaffold มีจุดยึดที่ซ่อนอยู่ซึ่งกําหนดไว้แล้ว แต่ระบบจะปิดใช้โดยค่าเริ่มต้น
  • อัปเดตเอกสารประกอบ SheetState.requireOffset รายการแล้ว
  • เปลี่ยนชื่อ BottomSheetDefaults.MinimizedShape เป็น BottomSheetDefaults.HiddenShape แล้ว (I839f4, b/273870234)

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

  • อย่าเปลี่ยนหน้าปัดจากชั่วโมงเป็นนาทีเมื่อเปิดใช้การสำรวจด้วยการแตะ (I717d0)
  • ตอนนี้เราได้ผสานความหมายของแถบลาก ModalBottomSheet และ BottomSheetScaffold เข้าด้วยกันแล้ว (I05afb)
  • ตอนนี้พารามิเตอร์ตัวแก้ไข BottomSheetScaffold, containerColor และ contentColor จะส่งผลต่อเนื้อหาเท่านั้น (I992cb)
  • ตอนนี้ BottomSheetScaffold nestedScroll สำหรับเนื้อหาชีตใช้การฟลิง (I992cb)

เวอร์ชัน 1.1.0-beta01

22 มีนาคม 2023

androidx.compose.material3:material3:1.1.0-beta01 และ androidx.compose.material3:material3-window-size-class:1.1.0-beta01 เผยแพร่แล้ว เวอร์ชัน 1.1.0-beta01 มีการคอมมิตเหล่านี้

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

  • เพิ่มพารามิเตอร์ประเภทเลย์เอาต์ลงใน TimePicker composable ซึ่งช่วยให้ใช้เลย์เอาต์ที่แตกต่างกันได้ โดยขึ้นอยู่กับการกำหนดค่าหน้าจอ (Ia0e16)
  • มีการทำเครื่องหมาย SearchBarDefaults ว่าเป็นแบบทดลอง (I65561)
  • เพิ่มระดับเงาเป็น BottomSheetScaffold (I94e0f)
  • เพิ่มการรองรับการแสดงเครื่องมือเลือกวันที่โดยไม่มีส่วนหัว API เปลี่ยนแปลงเพื่ออนุญาตให้ส่งบรรทัดแรก Null เมื่อสร้างเครื่องมือเลือกวันที่ ตอนนี้คุณสามารถส่งบรรทัดแรก ชื่อ และ showToggleMode = false เป็นค่า Null เพื่อแสดงเครื่องมือเลือกแบบ Headless ได้แล้ว (Id3f3a, b/266132421, b/267194809)

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

  • ตอนนี้แถบค้นหาจะยกเลิกโฟกัสโดยอัตโนมัติเมื่อไม่มีการใช้งาน (I22a7c, b/261444487)
  • อัปเดต DateRangePicker เพื่ออนุญาตให้เลือกช่วงที่มีวันที่เริ่มต้นและวันที่สิ้นสุดเป็นวันเดียวกัน (I16529, b/272882497)
  • ตอนนี้ช่องข้อความจะจัดวางองค์ประกอบข้อความอย่างเหมาะสมเมื่อขนาดแบบอักษรเล็กกว่าที่คาดไว้ ซึ่งอาจส่งผลให้แอปมีการเปลี่ยนแปลงขนาด 2-3 พิกเซลตามการตั้งค่าแบบอักษรและสคริปต์ (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)
  • เปลี่ยนชื่อ "ยุบ" SheetValue เป็น PartiallyExpanded เพื่อแสดงลักษณะการทำงานในสถานะนี้ได้อย่างแม่นยำและยืดหยุ่นมากขึ้น (Ia1491)
  • อัปเดตชื่อพารามิเตอร์ ListItem เป็น _content แทน _text ตอนนี้ตัวรับเริ่มต้นคือ ReadOnlyComposables ในส่วนที่เกี่ยวข้อง (I69a25)
  • เปลี่ยน Surface API แบบอินเทอร์แอกทีฟจากเวอร์ชันทดลอง (I90d59, b/261561812)

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

  • แก้ไขปัญหาที่ระบบคำนวณสถานะ HalfExpanded ของ ModalBottomSheet ไม่ถูกต้องและชีตดูเหมือนจะลอยอยู่ (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 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มคอมโพสิชันอินพุตเวลาที่ใช้กับ rememberTimePickerState() ได้ โดยเป็นไปตามข้อกำหนด M3 สำหรับอินพุตเวลา (Ia4fab)
  • เพิ่ม DateRangePicker API ของ Material 3 สำหรับการเลือกช่วงวันที่ (I7a6c3, b/267194809)
  • เพิ่มการรองรับโหมดการป้อนข้อมูล Material 3 สำหรับการเลือกช่วงวันที่ผ่าน DateRangePicker API (Ifdbc4)
  • ตอนนี้สีของช่องข้อความอนุญาตให้ปรับแต่งได้ดังนี้
    • สีข้อความของช่องป้อนข้อมูลและตัวยึดตําแหน่งตามโหมดโฟกัสและสถานะข้อผิดพลาด เปลี่ยนชื่อพารามิเตอร์ textColor เป็น unfocusedTextColor และเปลี่ยนชื่อ placeholderColor เป็น unfocusedPlaceholderColor
    • สีของคอนเทนเนอร์สำหรับช่องข้อความที่กรอกแล้วตามสถานะข้อผิดพลาดด้วยพารามิเตอร์ errorContainerColor ใหม่
  • อัปเดตสีช่องข้อความของเมนูแบบเลื่อนลงที่แสดงด้วยพารามิเตอร์เพื่อรองรับ API คำนำหน้าและคำต่อท้ายใหม่ (I9c8b4, b/254284181, b/264766350)

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

  • เปลี่ยนกลับเวอร์ชัน Slider API บางเวอร์ชันและนำ Slider ที่ซ้ำซ้อนออก ซึ่งครอบคลุมอยู่ใน Slider เวอร์ชันทดลองใหม่ที่มีแถบเลื่อนและแทร็กที่กำหนดเอง เลื่อนระดับ RangeSlider ให้เป็นเวอร์ชันเสถียร (Ie8fbd)
  • เปลี่ยนชื่อ defaultElevation เป็น elevation ในฟังก์ชันการยกระดับของชิป (I0f872)
  • API ช่องข้อความ Material 3 ต่อไปนี้ไม่ใช่เวอร์ชันทดลองอีกต่อไป TextField, OutlinedTextField, textFieldWithLabelPadding, textFieldWithoutLabelPadding, outlinedTextFieldPadding (Ieb5c0, b/261561819)
  • TimePickers is24Hour ใช้การตั้งค่าของระบบ (I18856)
  • นําคําอธิบายประกอบเวอร์ชันทดลองออกจากสแคฟเฟิลด API แล้ว (Ibb51e, b/261565765, b/261436953)

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

  • ตอนนี้รูปร่างเริ่มต้นของ ModalBottomSheet คือ SheetDefaults.ExpandedShape เสมอ (I0dfca)
  • การปรับปรุงการช่วยเหลือพิเศษสำหรับ Material 3 DatePicker และ DateRangePicker (I5087e)
  • แก้ไขข้อบกพร่องที่ระบบจะเผยแพร่ข้อจำกัดความสูงสูงสุดและอาจทำให้ระบบขัดข้อง (I30d8c)
  • นำบทบาทเชิงความหมายออกจากแพลตฟอร์มที่คลิกและเลือกได้ รวมถึงคอมโพเนนต์ที่อัปเดตแล้วซึ่งใช้บทบาทเหล่านั้นเพื่อตั้งค่าบทบาทโดยใช้ modifier.semantics (I793d9)

เวอร์ชัน 1.1.0-alpha06

8 กุมภาพันธ์ 2023

androidx.compose.material3:material3:1.1.0-alpha06 และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha06 เผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha06 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้ช่องข้อความรองรับข้อความนำหน้าและต่อท้ายแล้ว (Ia8578, b/179884561)
  • เพิ่มฟังก์ชัน TimePicker เพื่อแสดงเครื่องมือเลือกเวลาตามข้อกำหนดของ Material 3 ซึ่งใช้ร่วมกับ TimePickerState และเมธอดอำนวยความสะดวก rememberTimePickerState (I71910)
  • อินพุตวันที่เปลี่ยนเป็นโหมดการแสดงผลที่ DatePicker แล้ว เพิ่มการรองรับการสลับระหว่างโหมดตัวเลือกวันที่กับโหมดป้อนวันที่ (Ieeff7)
  • เพิ่ม API สําหรับ RichTextTooltips แล้ว (I58ef3)
  • การใช้ Modal Bottom Sheet สำหรับ Material 3 ซึ่งรวมถึง ModalBottomSheet และ ModalBottomSheetDefaults รวมถึงเปิดตัว SheetState และ rememberSheetState ซึ่งสามารถใช้กับคอมโพเนนต์ชีตในอนาคต (I0853a, b/244189383)

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

  • ปรับปรุง API showSnackbar (I195c2, b/261424370)
  • ปรับปรุง API สําหรับชิปความช่วยเหลือและชิปคำแนะนำให้เสถียร (Ibb67b, b/261424370)
  • โปรโมต ListItem, ListItemDefaults และ ListItemColors API เป็นเวอร์ชันที่ไม่ใช่เวอร์ชันทดลอง (I7e7fa, b/261438882)
  • โปรโมต SliderPositions, SliderDefaults.Thumb และ SliderDefaults.Track เป็นเวอร์ชันเสถียร และเพิ่ม API Slider และ RangeSlider ที่ไม่ใช่เวอร์ชันทดลองซึ่งมีภาพปกและแทร็กที่กำหนดเอง รวมถึงเลิกใช้งาน Slider และ RangeSlider API เวอร์ชันเก่าด้วย (Ie5ea6, b/261566890)
  • เปลี่ยนModifier.tooltipAnchor()เป็นสาธารณะเพื่อให้นักพัฒนาแอปส่งค่าไปยังจุดยึดเพื่อระบุว่าควรแสดงเคล็ดลับเครื่องมือเมื่อกดค้าง อัปเดต PlainTooltipBox API เพื่อไม่ให้ TooltipState เป็นค่า Null ได้อีกต่อไปและมีค่าเริ่มต้นแล้ว (Ie2fb7)
  • ProgressIndicatorDefaults.circularTrackColor ได้รับการทําเครื่องหมายเป็น @Composable เพื่อให้สอดคล้องกัน (Id29cc)
  • กู้คืนตัวรับพร็อพเพอร์ตี้ LocalMinimuTouchTargetEnforcement แล้วทําเครื่องหมายว่าเลิกใช้งานและเปลี่ยนเส้นทางไปยัง LocalMinimumInteractiveComponentEnforcement (I60dd5)

เวอร์ชัน 1.1.0-alpha05

26 มกราคม 2023

androidx.compose.material3:material3:1.1.0-alpha05 และ androidx.compose.material3:material3-window-size-class:1.1.0-alpha05 เผยแพร่แล้ว เวอร์ชัน 1.1.0-alpha05 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • DatePickerDialog และการสนับสนุนการช่วยเหลือพิเศษ
  • เพิ่มภาพปกและแทร็กที่กำหนดเองลงใน RangeSlider

การอัปเดตทรัพยากร 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 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • DatePicker API เริ่มต้นสําหรับการเลือกวันที่เดียวผ่าน UI ปฏิทิน API นี้ยังอยู่ระหว่างการเปลี่ยนแปลง (I722b9)
  • เพิ่มการรองรับเคล็ดลับเครื่องมือแบบธรรมดาผ่าน PlainTooltipBox (I0cdfb)
  • แถบค้นหา (Iad128)
  • SwipeToDismiss (I458a8, b/242889540)

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

  • เพิ่มในพร็อพเพอร์ตี้ IsContainer semantics ใน 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 ซึ่งช่วยให้ตั้งค่าความสูงขั้นต่ำของคอมโพสิเบิลเหล่านี้ในแง่ของจํานวนบรรทัดได้ (I24294, b/122476634)

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

  • ตัดเนื้อหาของ Material3 IconButton และ 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 และแปรง (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

คลาสขนาดหน้าต่าง

  • 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 ปัจจุบันเพื่อให้ผู้ใช้ส่ง Thumb หรือ Track เพื่อป้อนข้อมูลในแถบเลื่อนได้ (I21c00)

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

  • อัปเดตการแมปสีธีมมืดสำหรับคอนเทนเนอร์ On Error เป็นโทน 90 (Ic5612)
  • แก้ไขเพื่ออนุญาตให้ตั้งค่าพื้นหลังโปร่งใสสำหรับแถบแอปด้านบนขนาดเล็กของ Material 3 (I645e2, b/245575782)

เวอร์ชัน 1.0.0-beta02

7 กันยายน 2022

androidx.compose.material3:material3:1.0.0-beta02 และ androidx.compose.material3:material3-window-size-class:1.0.0-beta02 เผยแพร่แล้ว เวอร์ชัน 1.0.0-beta02 มีการคอมมิตเหล่านี้

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

  • ระยะห่างจากขอบของคอมโพเนนต์เริ่มต้นที่เปิดตัวในคอมโพเนนต์ m3 ในเวอร์ชัน beta01 จะไม่คำนึงถึงระยะห่างจากขอบของ IME อีกต่อไป
  • ตอนนี้คอมโพเนนต์ Scaffold ของ Material3 มีพารามิเตอร์ contentWindowInsets ซึ่งช่วยให้ระบุจำนวนการฝังที่จะจัดการสำหรับช่องเนื้อหาได้ (Icf11a, b/243713323)
  • เลิกใช้งานฟังก์ชัน SmallTopAppBar ของ Material 3 เวอร์ชันทดลองและเปิดตัวฟังก์ชัน TopAppBar ที่เทียบเท่า โปรดย้ายข้อมูลการใช้งานไปยังบัญชีใหม่ (I74404, b/226918634)
  • เพิ่มการควบคุมลักษณะการเลื่อนและการจัดตำแหน่งของแถบแอปด้านบน (I15c81)
  • นำ startIndent ออกจากตัวแบ่ง ย้ายสีไปยังพารามิเตอร์สุดท้าย (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

หากต้องการดูธีม คอมโพเนนต์ และคอมโพสิเบิลอื่นๆ ล่าสุดที่ใช้ได้ โปรดดูภาพรวมข้อมูลอ้างอิง Compose Material 3 API

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

  • อัปเดตแถบแอปด้านบนของ Material 3 ให้ยุบ/ขยายจนสุด นอกจากนี้ ยังอัปเดตฟังก์ชันลักษณะการทำงาน TopAppBarDefaults เป็น Composables และให้ค่าเริ่มต้นสำหรับสถานะแถบแอปด้านบนและข้อกำหนดภาพเคลื่อนไหว (I642b3)
  • อัปเดตลายเซ็นคอมโพเนนต์ FAB ให้ตรงกับ Surface API (I3afaa)
  • เพิ่มการรองรับแบบฝังในตัวสำหรับแถบแอปด้านบน ลิ้นชัก แถบนําทาง และแถบแนวนอน เมื่อใช้คอมโพเนนต์เหล่านี้แยกกันหรือใช้กับ Scaffold ระบบจะจัดการส่วนเกินสำหรับนักพัฒนาแอปโดยอัตโนมัติ หมายเหตุ: การเปลี่ยนแปลงนี้จะไม่เพิ่มการจัดการไอคอนแถบสถานะและความโปร่งใสของแถบสถานะและแถบนําทางโดยอัตโนมัติ โปรดดำเนินการต่อด้วยตนเองเพื่อให้ได้รับประสบการณ์การใช้งานแบบเต็มหน้าจอที่ดีที่สุด (I7e4e6, b/183161866)
  • อัปเดตค่าเริ่มต้นของคอมโพเนนต์เพื่อลดการแสดงผล API เพื่อความยืดหยุ่นและปรับปรุงประสิทธิภาพในอนาคต (I31820)
  • จัดเรียงพารามิเตอร์ชีตชิปและลิ้นชักการนำทางใหม่เพื่อให้สอดคล้องกันภายใน API (I45d0b)
  • นํา startIndent ออกจากตัวคั่นและย้ายสีไปไว้ที่พารามิเตอร์สุดท้าย (If7be2)

เวอร์ชัน 1.0.0-alpha16

10 สิงหาคม 2022

androidx.compose.material3:material3:1.0.0-alpha16 และ androidx.compose.material3:material3-window-size-class:1.0.0-alpha16 เผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha16 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • รองรับการระบุความกว้างที่กำหนดเองในลิ้นชักการนำทาง (Ia7f10)

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

  • เรียงลําดับพารามิเตอร์แท็บและแท็บไอคอนหน้าแรกใหม่เพื่อรักษาความสอดคล้องภายใน API (Ie2637)
  • ทำเครื่องหมาย BadgeDefaults ว่าเวอร์ชันทดลอง (I98ef3)
  • นำฟังก์ชันลิ้นชักการนำทางที่เลิกใช้งานแล้วออก (I4f2db)
  • จัดเรียงพารามิเตอร์แถบเลื่อนใน Material 3 ใหม่เพื่อรักษาความสอดคล้องภายใน API (I0aee7)
  • เรียงลําดับพารามิเตอร์ NavigationBar และ NavigationRail ใหม่เพื่อรักษาความสอดคล้องภายใน API (I51cda)
  • จัดลำดับพารามิเตอร์ใน Material 3 ใหม่เพื่อให้ API ต่างๆ สอดคล้องกัน (If4ae1)
  • จัดเรียงพารามิเตอร์แถบเลื่อนใน Material 3 ใหม่เพื่อรักษาความสอดคล้องภายใน API (I62673)
  • เปลี่ยนชื่อพารามิเตอร์ไอคอนเป็นการดำเนินการเพื่อให้สอดคล้องกับแถบแอปด้านบน (Id75be)
  • ติดป้ายกํากับ Badge และ BadgedBox เป็นเวอร์ชันทดลองเนื่องจากการจัดแนวของจุดยึดยังเปลี่ยนแปลงอยู่ (I1712e, b/236524516)
  • เปลี่ยนคำอธิบายประกอบ @ExperimentalMaterial3Api ในตัวแปรปุ่มไอคอนเป็น @OptIn (I070b5)
  • แยกเนื้อหาของลิ้นชักการนำทางออกเป็นคอมโพสิเบิลของตัวเองเพื่อรองรับการระบุความกว้างที่กำหนดเอง (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

  • เปลี่ยนชื่อพารามิเตอร์จาก values เป็น value ใน RangeSlider (I3b79a)
  • API เปลี่ยนแปลงการใช้งาน InputChip เพื่อรองรับสถานะที่เลือกได้ตามข้อกำหนดของ Material Design การรองรับเพิ่มเติมสำหรับสี FilterChip สำหรับสถานะปิดใช้ที่เลือก (I55244, b/235792432)
  • เพิ่ม FAB เริ่มต้น BottomAppBar (Ida4c8)
  • เพิ่ม ColorScheme.surfaceColorAtElevation แล้ว (Id41af)
  • ตอนนี้อินเทอร์เฟซในไลบรารีคอมโพสิตสร้างขึ้นโดยใช้เมธอดอินเทอร์เฟซเริ่มต้นของ 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 ไปยังเนื้อหา 3 (I18e38)
  • เพิ่มการรองรับ Material3 AssistChip และ InputChip (I0d25a)
  • เพิ่มการรองรับ FilterChip และ SuggestionChip ของ Material3 (I9fdf3)

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

  • เปลี่ยนชื่อคอมโพสิชัน TextFieldDefaults.BorderStroke ที่วาดเส้นขอบใน OutlinedTextField เป็น TextFieldDefaults.BorderBox (I5f295)
  • เปลี่ยนการเปลี่ยนแปลงที่มองเห็นได้ของ 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 และระบบย่อยของ Shape (I37426)
  • เพิ่มพารามิเตอร์แบบขยายลงใน ExtendedFloatingActionButton เพื่อควบคุมว่าจะขยายหรือยุบ FAB โดยใช้ภาพเคลื่อนไหวระหว่างแต่ละสถานะ เพิ่มการโอเวอร์โหลด FAB แบบขยายสำหรับ FAB แบบขยายที่มีข้อความต่อท้ายสำหรับ FAB แบบขยายที่ไม่มีไอคอน (Iba7f1)

เวอร์ชัน 1.0.0-alpha08

23 มีนาคม 2022

androidx.compose.material3:material3:1.0.0-alpha08 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha08 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มการรองรับช่องข้อความ Material 3 (I795cc, b/199377790)

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

  • เพิ่มตัวแบ่งเริ่มต้นสำหรับเมนู (I01374)
  • เพิ่มพารามิเตอร์สี surfaceTint ลงในคลาส ColorScheme (I2f558)

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

  • แก้ไขที่ปุ่ม Material3 เพื่ออ่านค่ารูปแบบข้อความเริ่มต้นจาก MaterialTheme (Ie62fc)

เวอร์ชัน 1.0.0-alpha07

9 มีนาคม 2022

androidx.compose.material3:material3:1.0.0-alpha07 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha07 มีการคอมมิตเหล่านี้

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

  • การอัปเดต Material 3 Surface API ที่นําฟังก์ชันที่โอเวอร์โหลดสําหรับแพลตฟอร์มที่คลิกได้กลับมา รวมถึงเพิ่มฟังก์ชันเพื่อรองรับแพลตฟอร์มที่เลือกได้และแพลตฟอร์มที่เปิด/ปิดได้ (I4bf18)
  • LazyVerticalGrid และ LazyHorizontalGrid ทำงานได้อย่างเสถียรแล้ว (I307c0)
  • LazyVerticalGrid/LazyHorizontalGrid และ API ที่เกี่ยวข้องทั้งหมดย้ายไปอยู่ในแพ็กเกจย่อย .grid แล้ว โปรดอัปเดตการนําเข้าจาก androidx.compose.foundation.lazy เป็น androidx.compose.foundation.lazy.grid (I2d446)
  • เปลี่ยนกลับการเปลี่ยนแปลงก่อนหน้านี้ที่ใช้มุมมองสําหรับ WindowInsetsControllerCompat เพียงอย่างเดียว และต้องใช้ Window อีกครั้ง ซึ่งจําเป็นสําหรับการจัดการ Flag ของ Window บางรายการ เลิกใช้งาน ViewCompat.getWindowInsetsController แล้วใช้ WindowCompat.getInsetsController แทนเพื่อให้แน่ใจว่ามีการใช้หน้าต่างที่ถูกต้อง (เช่น หากมุมมองอยู่ในกล่องโต้ตอบ) (I660ae, b/219572936)
  • เพิ่ม LazyVerticalGrid API ใหม่เพื่อกําหนดขนาดแกนตามขวาง (I17723)

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

  • การอัปเดต Card API ให้เป็นไปตามการเปลี่ยนแปลงที่ Surface API (I3c8b9)

เวอร์ชัน 1.0.0-alpha06

23 กุมภาพันธ์ 2022

androidx.compose.material3:material3:1.0.0-alpha06 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha06 มีการคอมมิตเหล่านี้

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

  • ระบบจะเพิ่ม NavigationDrawerItem ที่แสดงถึงปลายทางเดียวในลิ้นชัก (Ic396f, b/218286829)
  • เพิ่ม PermanentNavigationDrawer และ DismissibleNavigationDrawer เป็น API เวอร์ชันทดลองแล้ว ลิ้นชักเหล่านี้เหมาะกับอุปกรณ์หน้าจอขนาดใหญ่ (I5f8ab, b/218286829)
  • เพิ่มการรองรับแถบแอปด้านล่างของ Material 3 (Ic432a)
  • เปลี่ยนชื่อ NavigationDrawer เป็น ModalNavigationDrawer แล้ว (I1807d, b/218286829)
  • เพิ่มคลาสและโทเค็นแถบเลื่อนของ Material 3 (I1ccee)
  • เพิ่มการใช้งานแท็บ ดูเอกสารประกอบสําหรับตัวอย่างการใช้งาน (Ie0146)

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

  • แก้ไขปัญหาที่การไปยังส่วนต่างๆ แบบเส้นตรงของโปรแกรมอ่านหน้าจอ TalkBack เลือกชื่อแถบแอปด้านบนที่ว่างเปล่า (Id4690)
  • เพิ่ม IconSize ไปยัง FloatingActionButtonDefaults แล้ว (Ia71cf)
  • แก้ไขข้อบกพร่องสำหรับปุ่ม AlertDialog ที่ซ่อนอยู่เมื่อเพิ่มข้อความยาวด้วย LazyColumn (Ib2cc9, b/216663029)

เวอร์ชัน 1.0.0-alpha05

9 กุมภาพันธ์ 2022

androidx.compose.material3:material3:1.0.0-alpha05 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha05 มีการคอมมิตเหล่านี้

ฟีเจอร์ใหม่

เพิ่มคอมโพเนนต์ Material Design 3

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

  • ฟังก์ชัน Surface ที่เลิกใช้งานแล้วซึ่งใช้การเรียกคืน onClick ควรสร้างแพลตฟอร์มที่คลิกได้โดยใช้ InteractionSource และ Modifier.clickable() (I211c6)
  • เพิ่มการรองรับการยกระดับเมื่อกดและโฟกัสสำหรับ FAB (Ibb584)
  • เปลี่ยน Surface API ให้รับ InteractionSource ซึ่งช่วยให้ควบคุมลักษณะที่ปรากฏในสถานะต่างๆ ได้ (Iafbc8)

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

  • เพิ่มสีรองที่ขาดหายไปในชุดรูปแบบสีแบบไดนามิก (I456c4, b/214588434)

เวอร์ชัน 1.0.0-alpha04

26 มกราคม 2022

androidx.compose.material3:material3:1.0.0-alpha04 ได้รับการปล่อยแล้ว เวอร์ชัน 1.0.0-alpha04 มีการคอมมิตเหล่านี้

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

  • เพิ่ม NonRestartableComposable ลงในเมธอดที่โอเวอร์โหลดของเมธอดที่มีอยู่โดยไม่มีตรรกะที่ซับซ้อน ซึ่งจะช่วยลดการตรวจสอบการช่วยจํา (เท่ากับ) ที่คอมไพเลอร์สร้างขึ้นสําหรับพารามิเตอร์ทั้งหมดซึ่งซ้ำกันในฟังก์ชันภายในที่เรียกใช้ (I90490)
  • เพิ่มตัวแบ่งสำหรับเนื้อหา 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 ของวัสดุ 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

  • นำลิ้นชักออกจากสคาฟเฟิลด์ของ Material 3 (I04f51)
  • เพิ่มการรองรับวัสดุ 3 Checkbox (Id5542)
  • เพิ่มการรองรับวัสดุ 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

ดูข้อมูลเพิ่มเติมได้ที่ส่วน Material Design 3 และ Material You ในคู่มือการใช้ธีม Material ใน Compose