ภาพเคลื่อนไหวของ Compose
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(ดูเอกสารอ้างอิง API สำหรับแพ็กเกจ Compose ทั้งหมด)
| อัปเดตล่าสุด | รุ่นที่เสถียร | รุ่นที่อาจได้รับการเผยแพร่ | รุ่นเบต้า | รุ่นอัลฟ่า |
|---|---|---|---|---|
| 17 มิถุนายน 2026 | 1.11.3 | - | 1.12.0-beta01 | - |
โครงสร้าง
Compose คือการรวมรหัสกลุ่ม Maven 7 รายการภายใน androidx แต่ละกลุ่ม
ประกอบด้วยฟังก์ชันการทำงานย่อยที่กำหนดเป้าหมาย โดยแต่ละกลุ่มจะมีชุดหมายเหตุประจำรุ่นของตัวเอง
ตารางนี้อธิบายกลุ่มและลิงก์ไปยังชุดหมายเหตุประจำรุ่นแต่ละชุด
| กลุ่ม | คำอธิบาย |
|---|---|
| compose.animation | สร้างภาพเคลื่อนไหวในแอปพลิเคชัน Jetpack Compose เพื่อยกระดับประสบการณ์ของผู้ใช้ |
| compose.compiler | แปลงฟังก์ชัน @Composable และเปิดใช้การเพิ่มประสิทธิภาพด้วยปลั๊กอินคอมไพเลอร์ Kotlin |
| compose.foundation | เขียนแอปพลิเคชัน Jetpack Compose ด้วยองค์ประกอบพื้นฐานที่พร้อมใช้งาน และขยายพื้นฐานเพื่อสร้างชิ้นส่วนระบบการออกแบบของคุณเอง |
| compose.material | สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design ที่พร้อมใช้งาน ซึ่งเป็นจุดแรกเข้าของ Compose ในระดับที่สูงขึ้น ออกแบบมาเพื่อจัดหาคอมโพเนนต์ที่ตรงกับคอมโพเนนต์ที่อธิบายไว้ที่ www.material.io |
| compose.material3 | สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design 3 ซึ่งเป็นวิวัฒนาการขั้นถัดไปของ Material Design Material 3 มีการอัปเดตธีมและคอมโพเนนต์ รวมถึงฟีเจอร์การปรับเปลี่ยนในแบบของคุณของ Material You เช่น สีแบบเปลี่ยนอัตโนมัติ และออกแบบมาให้สอดคล้องกับสไตล์ภาพและ UI ของระบบ Android 12 ใหม่ |
| compose.runtime | บล็อกการสร้างพื้นฐานของรูปแบบการเขียนโปรแกรมและการจัดการสถานะของ Compose รวมถึงรันไทม์หลักสำหรับปลั๊กอินคอมไพเลอร์ Compose เพื่อกำหนดเป้าหมาย |
| compose.ui | คอมโพเนนต์พื้นฐานของ UI ของ Compose ที่จำเป็นต่อการโต้ตอบกับอุปกรณ์ ซึ่งรวมถึงเลย์เอาต์ การวาด และอินพุต |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ใน Compose คุณต้องเพิ่มที่เก็บ Maven ของ Google ลงในโปรเจ็กต์ อ่านข้อมูลเพิ่มเติมได้ที่ที่เก็บ Maven ของ Google
เพิ่มทรัพยากร Dependency สำหรับอาร์ติแฟกต์ที่ต้องการในไฟล์ build.gradle สำหรับ
แอปหรือโมดูล
Groovy
dependencies { implementation "androidx.compose.animation:animation:1.11.3" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.animation:animation:1.11.3") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
ดูข้อมูลเพิ่มเติมเกี่ยวกับการพึ่งพาได้ที่เพิ่มการพึ่งพาบิลด์
ความคิดเห็น
ความคิดเห็นของคุณช่วยให้ Jetpack ทำงานได้ดีขึ้น โปรดแจ้งให้เราทราบหากพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนสร้างปัญหาใหม่ คุณสามารถโหวตปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของ Issue Tracker
เวอร์ชัน 1.12
เวอร์ชัน 1.12.0-beta01
17 มิถุนายน 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.12.0-beta01 เวอร์ชัน 1.12.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- เปิดตัวพารามิเตอร์
permitTransformDuringDeferredTransitionในSharedContentConfigเพื่อควบคุมว่าองค์ประกอบที่แชร์ควร เปลี่ยนรูปแบบด้วยภาพพร้อมกับคอนเทนเนอร์ระดับบนสุดหรือไม่ ในระยะที่เลื่อนออกไปของDeferredTransition(I4b67b) - ปรับโครงสร้างการเปลี่ยนไปใช้คลาสที่ปิดผนึกและปรับปรุง
DeferredTransitionเอกสารประกอบเกี่ยวกับ API และความปลอดภัย (Iecb8f) - เพิ่ม
inactiveElementColorไปยังLookaheadAnimationVisualDebugging" ลงใน androidx-main - เพิ่ม
inactiveElementColorในLookaheadAnimationVisualDebugging(I5454b, b/501193322) - นำคำอธิบายประกอบ
ExperimentalAnimatableApiออกแล้ว (I4e670, b/500030165)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาใน
LinkComposerที่อาจทำให้ Composable ข้ามแทนที่จะทำการ Recompose เมื่อไม่ถูกต้องในระหว่างการ Composition (Ie29fe)
เวอร์ชัน 1.12.0-alpha03
19 พฤษภาคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.12.0-alpha03 เวอร์ชัน 1.12.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
DeferredTargetAnimationไม่ใช่เวอร์ชันทดลองอีกต่อไป โปรดนำการเลือกใช้ใน androidx-main ออก- เพิ่มพารามิเตอร์
mutableTransformลงในAnimatedVisibilityและAnimatedContentเพื่อรองรับการจัดการพร็อพเพอร์ตี้ด้วยตนเองโดยตรง (เช่น สำหรับท่าทางสัมผัสย้อนกลับแบบคาดการณ์) ในช่วงการเปลี่ยนผ่านที่เลื่อนออกไป (I236e8) DeferredTargetAnimationไม่ใช่ฟีเจอร์ทดลองอีกต่อไป โปรดนำการเลือกใช้ฟีเจอร์ออก (I1e4ae, b/500030165)- Enum ใหม่เพื่อรองรับทริกเกอร์ใน ui-tooling (I6e198, b/478807872)
เวอร์ชัน 1.12.0-alpha02
6 พฤษภาคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.12.0-alpha02 เวอร์ชัน 1.12.0-alpha02 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.12.0-alpha01
22 เมษายน 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.12.0-alpha01 เวอร์ชัน 1.12.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- อัปเดต Compose
compileSdkเป็น API 37 ซึ่งหมายความว่าเมื่อใช้ Compose จะต้องใช้ AGP เวอร์ชัน 9.2.0 เป็นอย่างน้อย (Id45cd, b/413674743) - สิ้นสุดภาพเคลื่อนไหว
SeekableTransitionStateก่อนการจัดองค์ประกอบ (1bf9dc, b/410055849)
เวอร์ชัน 1.11
เวอร์ชัน 1.11.3
17 มิถุนายน 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.3 เวอร์ชัน 1.11.3 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.11.2
19 พฤษภาคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.2 เวอร์ชัน 1.11.2 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.11.1
6 พฤษภาคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.1 เวอร์ชัน 1.11.1 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.11.0
22 เมษายน 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0 เวอร์ชัน 1.11.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.10.0:
- ระบบจะถอนการอ้างสิทธิ์
androidx.compose.animation:animation-*:1.11.0การเปิดตัวเวอร์ชันเสถียรนี้รวมการปรับปรุงและการแก้ไขจากวงจรการพัฒนา 1.11.0 โดยมุ่งเน้นที่ความเสถียรขององค์ประกอบที่ใช้ร่วมกัน ความน่าเชื่อถือของเธรด และเครื่องมือใหม่สำหรับนักพัฒนาซอฟต์แวร์
ฟีเจอร์ใหม่
- การแก้ไขข้อบกพร่องด้วยภาพสำหรับ Lookahead: เปิดตัวความสามารถในการแก้ไขข้อบกพร่องด้วยภาพชุดใหม่ที่ช่วยให้แสดงภาพข้อมูลที่เกี่ยวข้องกับองค์ประกอบที่แชร์และ
Modifier.animatedBoundsข้อมูลดังกล่าว ได้แก่ ขอบเขตเป้าหมาย เส้นทางการเคลื่อนไหวของขอบเขต จำนวนการจับคู่ที่พบ สถานะการเปลี่ยนภาพ เป็นต้น
การเปลี่ยนแปลง API
- เพิ่ม API ใหม่
LookaheadAnimationVisualDebugging,CustomizedLookaheadAnimationVisualDebuggingและLookaheadAnimationVisualDebugConfigเพื่อช่วยแก้ไขข้อบกพร่องของขอบเขตภาพเคลื่อนไหวและภาพเคลื่อนไหวขององค์ประกอบที่ใช้ร่วมกัน (Id5575, b/390011686, b/466169919)
การแก้ไขข้อบกพร่อง
- ความปลอดภัยของ Thread:
SeekableTransitionStateตอนนี้จะจัดการการเปลี่ยนแปลงสถานะนอก Thread ได้อย่างถูกต้องแล้ว ก่อนหน้านี้ หากมีการแก้ไขสถานะในเธรดที่ไม่ใช่ UI โดยใช้Snapshot.withMutableSnapshot()การเปลี่ยนภาพจะพยายามจัดการการอัปเดตในเธรดที่ไม่ใช่ UI อย่างไม่ถูกต้อง (0aba38) - ประสิทธิภาพ: ปรับปรุงประสิทธิภาพของ
sharedElementsการเข้าถึงแผนที่ (93f57d) - การรายงานสถานะ: แก้ไข
isTransitionActiveเพื่อให้รายงานเป็นจริงเฉพาะเมื่อมีการเคลื่อนไหวที่ใช้งานอยู่จากองค์ประกอบที่แชร์ที่ตรงกัน (d3426a, b/474385510) - ความเสถียร: ต้องวางรูทการเปลี่ยนผ่านที่แชร์ก่อนที่จะค้นหาขอบเขต (77d59c) และตรวจสอบว่าตำแหน่งสำหรับ
sharedElementsจะได้รับก็ต่อเมื่อแนบSharedTransitionLayout(I2a035) - การจัดการการหยุดชะงัก: แก้ไขการจัดการการหยุดชะงักในกรณีที่ซับซ้อนเมื่อภาพเคลื่อนไหวขาออกขององค์ประกอบย่อยสิ้นสุดลงในขณะที่การเปลี่ยนฉากขององค์ประกอบหลักยังคงทำงานอยู่ใน
AnimatedContent(ad9b4f) - การตรวจสอบ: ระยะเวลาที่ตรวจสอบแล้วใน
InfiniteRepeatableSpecเพื่อป้องกันรอบที่มีระยะเวลา 0 (151b6d) - การปรับแต่ง: เคารพ
visibilityThresholdในAnimationSpecที่กำหนดเองสำหรับanimateFloatAsState(3a1cdc)
เวอร์ชัน 1.11.0-rc01
8 เมษายน 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-rc01 เวอร์ชัน 1.11.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.11.0-beta02
25 มีนาคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-beta02 เวอร์ชัน 1.11.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- ตอนนี้
SeekableTransitionStateจัดการการเปลี่ยนแปลงสถานะนอกเธรดได้อย่างถูกต้องแล้ว ก่อนหน้านี้ หากมีการแก้ไขสถานะนอกเธรด UI โดยใช้Snapshot.withMutableSnapshot()การเปลี่ยนจะพยายามจัดการการอัปเดตนอกเธรด UI อย่างไม่ถูกต้อง(0aba38) - ตรวจสอบระยะเวลาใน
InfiniteRepeatableSpecเพื่อป้องกันรอบที่มีระยะเวลา 0 (151b6d) - Respect
visibilityThresholdในAnimationSpecที่กำหนดเองสำหรับanimateFloatAsState(3a1cdc) - แก้ไขการจัดการการหยุดชะงักในกรณีที่ซับซ้อนเมื่อภาพเคลื่อนไหวขาออกของบุตรหลานสิ้นสุดลงในขณะที่การเปลี่ยนฉากของบัญชีหลักยังคงทำงานอยู่ใน
AnimatedContent(ad9b4f)
เวอร์ชัน 1.11.0-beta01
11 มีนาคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-beta01 เวอร์ชัน 1.11.0-beta01 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไข
isTransitionActiveเพื่อให้รายงานเป็นจริงเฉพาะเมื่อมีการเคลื่อนไหวที่ใช้งานอยู่จากองค์ประกอบที่แชร์ซึ่งตรงกัน (d3426a, b/474385510)
เวอร์ชัน 1.11.0-alpha06
25 กุมภาพันธ์ 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-alpha06 เวอร์ชัน 1.11.0-alpha06 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- ปรับปรุงประสิทธิภาพของ
sharedElementsการเข้าถึงแผนที่ (93f57d)
เวอร์ชัน 1.11.0-alpha05
11 กุมภาพันธ์ 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-alpha05 เวอร์ชัน 1.11.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.11.0-alpha04
28 มกราคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-alpha04 เวอร์ชัน 1.11.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.11.0-alpha03
14 มกราคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-alpha03 เวอร์ชัน 1.11.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- เปิดตัวความสามารถในการแก้ไขข้อบกพร่องด้วยภาพชุดใหม่ที่ช่วยให้แสดงภาพข้อมูลที่เกี่ยวข้องกับองค์ประกอบที่แชร์และ
Modifier.animatedBoundsได้ ข้อมูลดังกล่าว ได้แก่ ขอบเขตเป้าหมาย เส้นทางการเคลื่อนไหวของขอบเขต จำนวนการจับคู่ที่พบ สถานะการเปลี่ยนภาพ เป็นต้น
การเปลี่ยนแปลง API
- เพิ่ม API ใหม่
LookaheadAnimationVisualDebugging,CustomizedLookaheadAnimationVisualDebuggingและLookaheadAnimationVisualDebugConfigเพื่อช่วยแก้ไขข้อบกพร่องของขอบเขตภาพเคลื่อนไหวและภาพเคลื่อนไหวขององค์ประกอบที่แชร์ (Id5575, b/390011686, b/466169919)
การแก้ไขข้อบกพร่อง
- กำหนดให้วางรูทการเปลี่ยนภาพที่แชร์ก่อนที่จะค้นหาขอบเขต (77d59c)
เวอร์ชัน 1.11.0-alpha02
17 ธันวาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-alpha02 เวอร์ชัน 1.11.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.11.0-alpha01
3 ธันวาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.11.0-alpha01 เวอร์ชัน 1.11.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- รับตำแหน่งสำหรับ
sharedElementsเฉพาะในกรณีที่แนบSharedTransitionLayoutไว้ (I2a035)
เวอร์ชัน 1.10
เวอร์ชัน 1.10.6
25 มีนาคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.6 เวอร์ชัน 1.10.6 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.10.5
11 มีนาคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.5 เวอร์ชัน 1.10.5 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.10.4
25 กุมภาพันธ์ 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.4 เวอร์ชัน 1.10.4 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.10.3
11 กุมภาพันธ์ 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.3 เวอร์ชัน 1.10.3 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องที่เกิดจากกรณีข้อยกเว้นที่โหนดเนื้อหาที่แชร์ถูกยกเลิกการเชื่อมต่อก่อนที่จะวางรูทการเปลี่ยนภาพที่แชร์ (121310)
เวอร์ชัน 1.10.2
28 มกราคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.2 เวอร์ชัน 1.10.2 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.10.1
14 มกราคม 2026
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.1 เวอร์ชัน 1.10.1 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.10.0
3 ธันวาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0 เวอร์ชัน 1.10.0 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.9.0
- API การเปลี่ยนภาพที่แชร์จะเสถียรในเวอร์ชัน 1.10
Modifier.skipToLookaheadPositionAPI ใหม่สำหรับเลย์เอาต์ในSharedTransitionScopeเพื่อข้ามไปยังตำแหน่งเป้าหมายแทนที่จะเคลื่อนไหวการเปลี่ยนแปลงตำแหน่ง (9a88f4)- รองรับการเปิด/ปิดใช้แบบไดนามิกสำหรับองค์ประกอบที่แชร์ (07680e)
- API ใหม่เพื่อรองรับความเร็วเริ่มต้นสำหรับการเริ่มการเปลี่ยนองค์ประกอบที่ใช้ร่วมกันด้วยการปัด (b0afe2)
EnterTransitionและExitTransitionใหม่สำหรับการสร้างภาพเคลื่อนไหวเลเยอร์ม่านสำหรับAnimatedVisibilityและAnimatedContent(0f6e7c)
เวอร์ชัน 1.10.0-rc01
19 พฤศจิกายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0-rc01 เวอร์ชัน 1.10.0-rc01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้ตัวเลือก
unveilInและveilOutพร้อมให้บริการสำหรับEnterExitTransitionsแล้ว ซึ่งจะช่วยให้คุณเคลื่อนไหวเลเยอร์ภาพซ้อนทับด้านหน้าเนื้อหาที่เข้าหรือออกได้ (If26fe)
การแก้ไขข้อบกพร่อง
- รองรับการติดตามขอบเขตผ่านการถอดและติด
sharedElementอีกครั้ง (be0e9e) - ทำให้แผนที่องค์ประกอบที่ใช้ร่วมกันสังเกตได้สำหรับการสังเกตการใช้งานการเปลี่ยนภาพ (1fc2ec)
เวอร์ชัน 1.10.0-beta02
5 พฤศจิกายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0-beta02 เวอร์ชัน 1.10.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.10.0-beta01
22 ตุลาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0-beta01 เวอร์ชัน 1.10.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้นำ
SharedContentConfigเมธอด Factory ที่ใช้ Lambda เพื่อระบุว่าควรเปิดใช้ Shared Element หรือไม่lookheadScopeCoordinatesAPI ได้รับการอัปเดตโดยมีLookaheadScopeเป็นขอบเขตผู้รับ และมีพิกัดต้นทางเป็นพารามิเตอร์ (Id1fc2, b/452416806) - เราได้อัปเดตอินเทอร์เฟซของ
BoundsTransformให้สอดคล้องกับSizeTransformแล้ว (Ia46f2, b/343696350) - นำ
ScaleToBoundsAPI ที่เลิกใช้งานแล้วออกแล้ว โปรดใช้scaleToBoundsแทน (I17296)
เวอร์ชัน 1.10.0-alpha05
8 ตุลาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0-alpha05 เวอร์ชัน 1.10.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้ Shared Transition API เสถียรแล้ว ดูข้อมูลเพิ่มเติมได้ที่คู่มือองค์ประกอบที่แชร์ (I7167e)
เวอร์ชัน 1.10.0-alpha04
24 กันยายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0-alpha04 เวอร์ชัน 1.10.0-alpha04 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อัปเดตการตั้งชื่อสำหรับ API ที่เกี่ยวข้องกับ
PlaceHolderSize(I037d8, b/343696350) - API การเปลี่ยนฉากขององค์ประกอบที่แชร์ใหม่เพื่อรองรับความเร็วเริ่มต้นในการรักษาความเร็วของท่าทางสัมผัสในองค์ประกอบที่แชร์ (I91be9)
เวอร์ชัน 1.10.0-alpha03
10 กันยายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0-alpha03 เวอร์ชัน 1.10.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
Modifier.skipToLookaheadSizeตอนนี้ใช้ Lambda ที่เปิดใช้โดยค่าเริ่มต้นซึ่งจะเปิดใช้การข้ามขนาดเมื่อการเปลี่ยนที่แชร์ใช้งานอยู่เท่านั้น เช่นเดียวกับModifier.skipToLookaheadPosition(Ibe0f5, b/432485585)
เวอร์ชัน 1.10.0-alpha02
27 สิงหาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0-alpha02 เวอร์ชัน 1.10.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.10.0-alpha01
13 สิงหาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.10.0-alpha01 เวอร์ชัน 1.10.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- API ใหม่ที่อนุญาตให้เปิดและปิดใช้องค์ประกอบที่แชร์แบบไดนามิก ซึ่งยังช่วยให้สามารถพิจารณาได้ว่ามีการเปลี่ยนองค์ประกอบที่แชร์อย่างต่อเนื่องอยู่แล้วหรือไม่
- API ใหม่เพื่อตั้งค่าขอบเขตเป้าหมายสำรองเมื่อมีการทิ้งองค์ประกอบที่แชร์เป้าหมายระหว่างการเปลี่ยน
- API ใหม่สำหรับรับ
LayoutCoordinatesของLookaheadScope(I18dd4, b/409819304, b/395670637) - ตัวแก้ไขใหม่
Modifier.skipToLookaheadPositionในSharedTransitionScopeสำหรับการยึดเลย์เอาต์ที่ตำแหน่งเป้าหมายระหว่างการเปลี่ยนฉากที่แชร์ (I88734)
การเปลี่ยนแปลง API
renderInSharedTransitionOverlayแบบง่ายโดยนำแลมบ์ดาclipInOverlayDuringTransitionออกเนื่องจากไม่ค่อยได้ใช้งาน เปิดตัวเมธอด Factory ใหม่สำหรับSharedContentConfig(Id01b2)- เพิ่มชุดค่าเริ่มต้นสำหรับองค์ประกอบที่แชร์ ขอบเขตที่แชร์
renderInSharedTransitionOverlayการกำหนดค่า ตอนนี้คุณเข้าถึงค่าเริ่มต้นเหล่านี้ได้ผ่าน API สาธารณะ (Id23cc) ScaleToBoundsเปลี่ยนชื่อ ResizeMode เป็นscaleToBounds(I5ac50) แล้ว
การแก้ไขข้อบกพร่อง
- ย้าย minSdk เริ่มต้นจาก API 21 ไปยัง API 23 (Ibdfca, b/380448311, b/435705964, b/435705223)
เวอร์ชัน 1.9
เวอร์ชัน 1.9.5
19 พฤศจิกายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.5 เวอร์ชัน 1.9.5 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.4
22 ตุลาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.4 เวอร์ชัน 1.9.4 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.3
8 ตุลาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.3 เวอร์ชัน 1.9.3 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.2
24 กันยายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.2 เวอร์ชัน 1.9.2 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.1
10 กันยายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.1 เวอร์ชัน 1.9.1 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขการเริ่มต้นภาพเคลื่อนไหวสำหรับ
sharedElementWithCallerManagedVisibility(fa29de)
เวอร์ชัน 1.9.0
13 สิงหาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0 เวอร์ชัน 1.9.0 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.9.0-rc01
30 กรกฎาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0-rc01 เวอร์ชัน 1.9.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.0-beta03
16 กรกฎาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0-beta03 เวอร์ชัน 1.9.0-beta03 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.0-beta02
2 กรกฎาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0-beta02 เวอร์ชัน 1.9.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.0-beta01
18 มิถุนายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0-beta01 เวอร์ชัน 1.9.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.0-alpha04
4 มิถุนายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0-alpha04 เวอร์ชัน 1.9.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.0-alpha03
20 พฤษภาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0-alpha03 เวอร์ชัน 1.9.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.9.0-alpha02
7 พฤษภาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0-alpha02 เวอร์ชัน 1.9.0-alpha02 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- ปรับปรุงการรองรับการเลื่อนหรือการลากในองค์ประกอบที่แชร์ให้ดีขึ้นมาก กล่าวอย่างเจาะจงคือ เมื่อเลื่อนองค์ประกอบที่แชร์ซึ่งกำลังเปลี่ยนภาพ เดลต้าการเลื่อนจะมีผลกับองค์ประกอบที่แชร์โดยตรง แทนที่จะทำให้องค์ประกอบที่แชร์ติดตามเป้าหมายใหม่ (cacf7b)
เวอร์ชัน 1.9.0-alpha01
23 เมษายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.9.0-alpha01 เวอร์ชัน 1.9.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงพฤติกรรม
- การตรวจสอบ Lint ที่มาพร้อมกับ Compose ต้องใช้ AGP เวอร์ชัน 8.8.2 เป็นอย่างน้อย หากอัปเกรด AGP ไม่ได้ คุณสามารถอัปเกรด Lint ด้วยตนเองได้โดยใช้
android.experimental.lint.version=8.8.2(หรือเวอร์ชันที่ใหม่กว่า) ในgradle.propertiesคุณต้องใช้ Android Studio Ladybug หรือเวอร์ชันใหม่กว่าจึงจะเรียกใช้การตรวจสอบ Lint ของ Compose ภายใน IDE ได้
ฟีเจอร์ใหม่
- ปรับปรุงประสิทธิภาพการเลื่อนสำหรับองค์ประกอบที่แชร์ (ea4f1f)
การเปลี่ยนแปลง API
- โปรเจ็กต์ที่เผยแพร่ด้วย Kotlin 2.0 ต้องใช้ KGP 2.0.0 ขึ้นไป (Idb6b5)
TabRowและScrollableTabRowเลิกใช้งานแล้วเพื่อเปลี่ยนไปใช้ตัวแปรหลักและรองของแต่ละรายการ แถวแท็บหลักและแถวแท็บรองมีประสิทธิภาพมากขึ้นและเป็นไปตามข้อกำหนดอย่างแม่นยำ (I918e2)- เพิ่ม
LocalResourcesองค์ประกอบที่อยู่ใกล้กับทรัพยากรการค้นหา การเรียกใช้LocalResources.currentจะจัดองค์ประกอบใหม่เมื่อการกำหนดค่าเปลี่ยนแปลง ดังนั้นการเรียกใช้ API เช่นstringResource()จะแสดงค่าที่อัปเดตแล้ว (I50c13, b/274786917)
การแก้ไขข้อบกพร่อง
- ตรวจสอบว่าองค์ประกอบที่แชร์จะหลุดออกจากภาพซ้อนทับเมื่อการเปลี่ยนผ่านเสร็จสิ้น (35f359)
- กำจัดการประกอบใหม่ที่ไม่จำเป็นในทรานซิชัน (988923)
- แก้ไขการจัดการการหยุดชะงักของการเปลี่ยนฉากของวิดีโอสำหรับเด็ก (8aed52)
- ตรวจสอบว่าได้รีเซ็ตการเปลี่ยนเมื่อมีการระบุ
TransitionStateใหม่ (57820a)
การมีส่วนร่วมจากภายนอก
- จาก Compose
1.8.1: End animations inSeekableTransitionStateif already past new duration โดย Steven Schoen (0c832c)
เวอร์ชัน 1.8
เวอร์ชัน 1.8.3
18 มิถุนายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.3 เวอร์ชัน 1.8.3 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.8.2
20 พฤษภาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.2 เวอร์ชัน 1.8.2 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.8.1
7 พฤษภาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.1 เวอร์ชัน 1.8.1 มีการเปลี่ยนแปลงเหล่านี้
การมีส่วนร่วมจากภายนอก
- สิ้นสุดภาพเคลื่อนไหวใน
SeekableTransitionStateหากเลยระยะเวลาใหม่ไปแล้ว ขอบคุณ Steven Schoen (fbcdf7)
เวอร์ชัน 1.8.0
23 เมษายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0 เวอร์ชัน 1.8.0 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.7.0
- การเปลี่ยนแปลงที่สำคัญในเวอร์ชัน 1.8.0 จะกล่าวถึงใน บล็อกโพสต์นี้
Modifier.animateBoundsAPI ใหม่สำหรับการเปลี่ยนภาพขนาดและตำแหน่งภายในขอบเขตการคาดการณ์ (94b939)- API สุดท้ายสำหรับคีย์เฟรมที่มีส่วนโค้งและสปไลน์ (89e119)
- รองรับการคาดคะเนใน
LazyGridและ Pager ซึ่งรวมถึงการแยกความแตกต่างระหว่างการส่งบอลล่วงหน้ากับการส่งบอลเข้าหาในขณะเลื่อน การประกอบ/การทิ้งไอเทม และการเคลื่อนไหวของไอเทม รวมถึงใช้การส่งบอลล่วงหน้าเป็นแหล่งข้อมูลที่เชื่อถือได้สำหรับการเลื่อนและเป้าหมายการเคลื่อนไหวของไอเทม - อัปเดตการตั้งชื่อพารามิเตอร์
sharedElementจากสถานะเป็นsharedContentStateเพื่อให้สอดคล้องกันใน API ขององค์ประกอบที่ใช้ร่วมกัน (9e7df5) AnimatedImageVectorชุด API พร้อมใช้งานแล้ว (69d7e0)
เวอร์ชัน 1.8.0-rc03
9 เมษายน 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-rc03 เวอร์ชัน 1.8.0-rc03 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.8.0-rc02
26 มีนาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-rc02 เวอร์ชัน 1.8.0-rc02 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.8.0-rc01
12 มีนาคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-rc01 เวอร์ชัน 1.8.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- มีการทำเครื่องหมายการเปลี่ยนผ่านขององค์ประกอบย่อยที่แก้ไขแล้วว่าถูกขัดจังหวะอย่างไม่ถูกต้อง (3fa2ce)
เวอร์ชัน 1.8.0-beta03
26 กุมภาพันธ์ 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-beta03 เวอร์ชัน 1.8.0-beta03 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.8.0-beta02
12 กุมภาพันธ์ 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-beta02 เวอร์ชัน 1.8.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.8.0-beta01
29 มกราคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-beta01 เวอร์ชัน 1.8.0-beta01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.8.0-alpha08
15 มกราคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-alpha08 เวอร์ชัน 1.8.0-alpha08 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขภาพเคลื่อนไหวการวางที่ไม่ถูกต้องจาก
animateBoundsในLazyGridเนื่องจากมีการรีเซ็ตMotionFrameOfReferencePlacement(16193b) - แก้ไขการค้นหาโดยธรรมชาติใน
SharedTransitionLayoutโดยเปลี่ยนเส้นทางการค้นหาโดยธรรมชาติไปยังการส่งผ่านการคาดคะเนจากรูทการคาดคะเนระดับบนสุด (a07d12) - เพิ่มแท็ก
@paramที่ขาดหายไปในเอกสารแล้ว (e5cf67)
เวอร์ชัน 1.8.0-alpha07
11 ธันวาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-alpha07 เวอร์ชัน 1.8.0-alpha07 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- รองรับการดูตัวอย่างใน Pager โดยแยกการส่งบอลดูตัวอย่างจากการส่งบอลเข้าทำประตูเพื่อเก็บรายการไว้และใช้การเลื่อน (b/371802474)
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องที่พบได้ยากซึ่งเกิดขึ้นเมื่อมีการสร้างองค์ประกอบที่แชร์แต่ไม่เคยมีการวัด/วาง โดยกำหนดให้องค์ประกอบที่แชร์แสดงผลในตำแหน่งอย่างน้อย 1 ครั้งก่อนที่จะแสดงผลในภาพซ้อนทับ (b/371802474)
เวอร์ชัน 1.8.0-alpha06
13 พฤศจิกายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-alpha06 เวอร์ชัน 1.8.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- อัปเดตการตั้งชื่อพารามิเตอร์
sharedElementจากstateเป็นsharedContentStateเพื่อให้สอดคล้องกันใน API ขององค์ประกอบที่ใช้ร่วมกัน (I5694c, b/375351468) - ตอนนี้ชุด API ของ
AnimatedImageVectorมีความเสถียรแล้ว (I7174b, b/261436267)
เวอร์ชัน 1.8.0-alpha05
30 ตุลาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-alpha05 เวอร์ชัน 1.8.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- ตอนนี้
LazyGridรองรับการดูตัวอย่างแล้ว ซึ่งรวมถึงการแยกความแตกต่างระหว่างการส่งบอลล่วงหน้ากับการส่งบอลเข้าหาในขณะเลื่อน การประกอบ/การทิ้งไอเทม และการเคลื่อนไหวของไอเทม รวมถึงใช้การส่งบอลล่วงหน้าเป็นแหล่งข้อมูลที่เชื่อถือได้สำหรับการเลื่อนและเป้าหมายการเคลื่อนไหวของไอเทม
การแก้ไขข้อบกพร่อง
- อัปเดตสถานะภายในสำหรับการเปลี่ยนขนาดของ
AnimatedContentเมื่อสร้างการเปลี่ยนอีกครั้ง วิธีนี้ช่วยให้มั่นใจได้ว่าข้อมูลขนาดเป้าหมายจะเป็นข้อมูลล่าสุดอยู่เสมอ (b/372512085)
เวอร์ชัน 1.8.0-alpha04
16 ตุลาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-alpha04 เวอร์ชัน 1.8.0-alpha04 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้เส้นโค้งการชะลอความเร็วบางเส้นขัดข้องที่เศษส่วนเวลาหนึ่งๆ
- แก้ไขข้อบกพร่องที่ทำให้
Modifier.animateContentSizeจัดแนวไม่ถูกต้องภายใต้ RTL (Idae6b, b/372055503)
เวอร์ชัน 1.8.0-alpha03
2 ตุลาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-alpha03 เวอร์ชัน 1.8.0-alpha03 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อัปเดต Kotlin เป็นเวอร์ชัน 1.9 (I1a14c)
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาใน
AnimatedContentภาพเคลื่อนไหวของขนาดโดยการติดตามและเริ่มภาพเคลื่อนไหวจากขนาดปัจจุบันเสมอเพื่อให้มั่นใจว่าภาพเคลื่อนไหวจะต่อเนื่อง
เวอร์ชัน 1.8.0-alpha02
18 กันยายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-alpha02 เวอร์ชัน 1.8.0-alpha02 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.8.0-alpha01
4 กันยายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.8.0-alpha01 เวอร์ชัน 1.8.0-alpha01 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
Modifier.animateBoundsAPI ใหม่สำหรับการเปลี่ยนภาพขนาดและตำแหน่งภายในขอบเขตการคาดการณ์ 94b9394
การเปลี่ยนแปลง API
- นำ Flag การทดสอบในคีย์เฟรมที่มีส่วนโค้งและสปริงไลน์ออก (89e1199)
การแก้ไขข้อบกพร่อง
- ข้ามตรรกะ
placeHolderSizeเมื่อไม่พบรายการที่ตรงกัน (77c0160) - จำกัดเวลาเล่นใน
AndroidFlingSplineเพื่อป้องกันไม่ให้เกิดข้อขัดข้องเนื่องจากเวลาเล่นเพิ่มขึ้นแบบไม่สม่ำเสมอ(9d47587) - แก้ไขปัญหาที่
SharedTransitionScopeไม่วาดรายการในบางเงื่อนไข (b41077b6)
การมีส่วนร่วมจากภายนอก
- ป้องกันการตั้งค่าการเปลี่ยนฉากที่กรอได้
playTimeเมื่อไม่มีการเปลี่ยนฉากโดย Steven Schoen (c2e6e7e6)
เวอร์ชัน 1.7
เวอร์ชัน 1.7.8
12 กุมภาพันธ์ 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.8 เวอร์ชัน 1.7.8 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.7.7
29 มกราคม 2025
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.7 ไม่มีการเปลี่ยนแปลงจาก 1.7.6
11 ธันวาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.6 เวอร์ชัน 1.7.6 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.7.5
30 ตุลาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.5 เวอร์ชัน 1.7.5 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อบกพร่องที่ทำให้
Modifier.animateContentSizeจัดแนวไม่ถูกต้องภายใต้ RTL (Idae6b, b/372055503)
เวอร์ชัน 1.7.4
16 ตุลาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.4 เวอร์ชัน 1.7.4 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.7.3
2 ตุลาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.3 เวอร์ชัน 1.7.3 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.7.2
18 กันยายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.2 เวอร์ชัน 1.7.2 มีการเปลี่ยนแปลงเหล่านี้
การมีส่วนร่วมจากภายนอก
- ป้องกันการตั้งค่าการเปลี่ยนฉากที่เลื่อนได้
playTimeเมื่อไม่มีการเปลี่ยนฉากที่ทำงานอยู่ ขอบคุณ Steven Schoen (c2e6e7e6)
เวอร์ชัน 1.7.1
10 กันยายน 2024
- ไม่มีการเปลี่ยนแปลงอาร์ติแฟกต์ Android ระบบได้นำอาร์ติแฟกต์
-desktopรายการออกแล้ว และเพิ่มอาร์ติแฟกต์-jvmStubsและ-linuxx64Stubsรายการ เป้าหมายเหล่านี้ไม่มีไว้ให้ใช้งาน แต่เป็นตัวยึดตำแหน่งเพื่อช่วยให้ Jetbrains Compose ทำงานได้
เวอร์ชัน 1.7.0
4 กันยายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.6.0
การเปลี่ยนแปลงที่สำคัญในเวอร์ชัน 1.7.0 จะกล่าวถึงในบล็อกโพสต์นี้
API การเปลี่ยนภาพองค์ประกอบที่ใช้ร่วมกันใหม่
- API การเปลี่ยนภาพองค์ประกอบแบบใช้ร่วมกันใหม่พร้อมให้คุณใช้งานและแสดงความคิดเห็นแล้ว API ทดลองใหม่เหล่านี้ช่วยให้คุณติดแท็กเลย์เอาต์เป็นเลย์เอาต์ที่แชร์ในโครงสร้างเลย์เอาต์ได้โดยใช้ตัวแก้ไขที่ให้ไว้ ซึ่งจะสร้างขอบเขตที่เปลี่ยนแปลงได้อย่างราบรื่นเมื่อเนื้อหาที่แชร์ชุดหนึ่งออกจากหน้าจอและเนื้อหาอีกชุดหนึ่งเข้าสู่หน้าจอ (Icb0b9)
scaleInSharedContentToBoundsและscaleOutSharedContentToBoundsใหม่เพื่อขยายขนาดเนื้อหาในsharedBounds(I731c1)- ตอนนี้
SharedTransitionScopeเวอร์ชันทดลองเป็นอินเทอร์เฟซแล้ว ไม่ใช่คลาส (Iaf856) resizeModesใหม่ (ScaleToBoundsและRemeasureToBounds) สำหรับsharedBoundsเพื่อเลือกระหว่างการปรับขนาดและการวัดซ้ำ ตอนนี้เราเลิกใช้งานscaleIn/OutSharedContentToBoundsAPI ก่อนหน้านี้แล้ว (I0d41a)
การปรับปรุง API ที่มีอยู่
Modifier.animateContentSizeใหม่ที่ใช้พารามิเตอร์เพิ่มเติมสำหรับการจัดแนวเนื้อหาที่กำหนดเอง (I5623a, b/269803907)DeferredTargetAnimationใหม่สำหรับการทดลองเพื่อเคลื่อนไหวขนาด ตำแหน่ง หรือเป้าหมายอื่นๆ ที่ไม่รู้จักในระหว่างการเริ่มต้น (I60745)SeekableTransitionStateแทนที่snapTo()ด้วยseekTo()และเพิ่มsnapTo()ที่เปลี่ยนสถานะเป็นสถานะปลายทางทันทีโดยไม่มีภาพเคลื่อนไหวใดๆ- ตอนนี้คุณสามารถส่งค่า
periodicBias(Float) ไปยังkeyframesWithSplineได้แล้ว ซึ่งจะทำให้ความเร็วเริ่มต้นและความเร็วสุดท้ายของสปไลน์เท่ากัน มีประโยชน์สำหรับภาพเคลื่อนไหวที่ทำซ้ำได้โดยใช้สปไลน์ อคติจะระบุว่าความเร็วแต่ละค่า (เริ่มต้นและสุดท้าย) ได้รับการแก้ไขมากน้อยเพียงใดเพื่อให้เกิดความสม่ำเสมอ (Ic1e6c, b/292114811)
API ต่อไปนี้มีสถานะเป็นแบบเสถียรหรือถูกนำออกแล้ว
- ตอนนี้
AnimatedVisibilityScope.transitionเป็น API ที่เสถียรแล้วModifier.animateEnterExit(..)ยังได้รับการปรับปรุงให้เสถียรยิ่งขึ้นด้วย (I6c1d1) ApproachLayoutModifierNodeและModifier.approachLayoutมีความเสถียรแล้ว โดยมีisMeasurementApproachInProgress()และisPlacementApproachInProgress()ใหม่มาแทนที่isMeasurementApproachComplete()และisPlacementApproachComplete()ตามลำดับ- นำตัวแก้ไข
intermediateLayoutที่เลิกใช้งานแล้วออก (I3e91c) LookaheadScopeAPI มีความเสถียรแล้ว (I21507)
เวอร์ชัน 1.7.0-rc01
21 สิงหาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-rc01 เวอร์ชัน 1.7.0-rc01 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.7.0-beta07
7 สิงหาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-beta07 เวอร์ชัน 1.7.0-beta07 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหาที่
SharedTransitionScopeไม่วาดรายการซ้อนทับระหว่างการเปลี่ยนในบางเงื่อนไข ซึ่งโดยปกติจะรวมถึงการใช้งานกับการนำทาง (Id65ab, b/347520198)
เวอร์ชัน 1.7.0-beta06
24 กรกฎาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-beta06 เวอร์ชัน 1.7.0-beta06 มีการเปลี่ยนแปลงเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขปัญหา
SeekableTransitionรั่วไหลของสถานะการเปลี่ยนโดยการล้างข้อมูลการสังเกตจากSnapshotStateObserverอย่างถูกต้องเมื่อมีการทิ้งการเปลี่ยน (b9c7182) - แก้ไขกรณีขอบที่ระบบไม่ได้ทำเครื่องหมายการเปลี่ยนฉากขององค์ประกอบย่อยว่าเสร็จสมบูรณ์อย่างถูกต้องเมื่อองค์ประกอบหลักเสร็จสมบูรณ์ (dc42216)
เวอร์ชัน 1.7.0-beta05
10 กรกฎาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-beta05 เวอร์ชัน 1.7.0-beta05 มีการคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- ตอนนี้อ่านพร็อพเพอร์ตี้การเปลี่ยน
totalDurationNanosได้อย่างถูกต้องภายในsnapshotFlowแล้ว
เวอร์ชัน 1.7.0-beta04
26 มิถุนายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-beta04 เวอร์ชัน 1.7.0-beta04 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.7.0-beta03
12 มิถุนายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-beta03 เวอร์ชัน 1.7.0-beta03 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.7.0-beta02
29 พฤษภาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-beta02 เวอร์ชัน 1.7.0-beta02 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.7.0-beta01
14 พฤษภาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-beta01 เวอร์ชัน 1.7.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
resizeModesใหม่ (ScaleToBoundsและRemeasureToBounds) สำหรับsharedBoundsเพื่อเลือกระหว่างการปรับขนาดและการวัดซ้ำ ตอนนี้เราเลิกใช้งานscaleIn/OutSharedContentToBoundsAPI ก่อนหน้านี้แล้ว (I0d41a)
การมีส่วนร่วมจากภายนอก
- ตอนนี้
SharedTransitionScopeที่เป็นเวอร์ชันทดลองได้กลายเป็นอินเทอร์เฟซแทนที่จะเป็นคลาสโดย Steven Schoen (Iaf856, b/338415048, b/338414702)
เวอร์ชัน 1.7.0-alpha08
1 พฤษภาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-alpha08 เวอร์ชัน 1.7.0-alpha08 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
LookaheadScopeAPI มีความเสถียรแล้ว (I21507)
การมีส่วนร่วมจากภายนอก
- ล้างเวลาภาพเคลื่อนไหวเริ่มต้นหลังจาก
SeekableTransitionStateเคลื่อนไหว/สแนปโดย Steven Schoen (1ca89529)
เวอร์ชัน 1.7.0-alpha07
17 เมษายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-alpha07 เวอร์ชัน 1.7.0-alpha07 มีการเปลี่ยนแปลงเหล่านี้
ฟีเจอร์ใหม่
- API การเปลี่ยนภาพองค์ประกอบแบบใช้ร่วมกันใหม่พร้อมให้คุณใช้งานและแสดงความคิดเห็นแล้ว API ทดลองใหม่เหล่านี้ช่วยให้คุณติดแท็กเลย์เอาต์เป็นเลย์เอาต์ที่แชร์ในโครงสร้างเลย์เอาต์ได้โดยใช้ตัวแก้ไขที่ให้ไว้ ซึ่งจะสร้างขอบเขตที่เปลี่ยนแปลงได้อย่างราบรื่นเมื่อเนื้อหาที่แชร์ชุดหนึ่งออกจากหน้าจอและเนื้อหาอีกชุดหนึ่งเข้าสู่หน้าจอ (Icb0b9)
scaleInSharedContentToBoundsและscaleOutSharedContentToBoundsใหม่เพื่อขยายขนาดเนื้อหาในsharedBounds(I731c1)
การเปลี่ยนแปลง API
- ตอนนี้
AnimatedVisibilityScope.transitionเป็น API ที่เสถียรแล้วModifier.animateEnterExit(..)ยังได้รับการปรับปรุงให้เสถียรยิ่งขึ้นด้วย (I6c1d1) ApproachLayoutModifierNodeและModifier.approachLayoutมีความเสถียรแล้ว โดยมีisMeasurementApproachInProgress()และisPlacementApproachInProgress()ใหม่มาแทนที่isMeasurementApproachComplete()และisPlacementApproachComplete()ตามลำดับ- นำตัวแก้ไข
intermediateLayoutที่เลิกใช้งานแล้วออก (I3e91c) - ตอนนี้คุณสามารถส่งค่า
periodicBias(Float) ไปยังkeyframesWithSplineได้แล้ว ซึ่งจะทำให้ความเร็วเริ่มต้นและความเร็วสุดท้ายของสปไลน์เท่ากัน มีประโยชน์สำหรับภาพเคลื่อนไหวที่ทำซ้ำได้โดยใช้สปไลน์ อคติจะระบุว่าความเร็วแต่ละค่า (เริ่มต้นและสุดท้าย) ได้รับการแก้ไขมากน้อยเพียงใดเพื่อให้เกิดความสม่ำเสมอ (Ic1e6c, b/292114811)
การแก้ไขข้อบกพร่อง
- แก้ไขเส้นโค้งการผ่อนแรงที่ยิงเกินและยิงไม่ถึงซึ่งก่อนหน้านี้จะถูกจำกัดไว้ที่ 0..1 (I38747)
เวอร์ชัน 1.7.0-alpha06
3 เมษายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-alpha06 เวอร์ชัน 1.7.0-alpha06 มีการคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เพิ่มการรองรับภาพเคลื่อนไหวการปรากฏและหายไปของรายการใน
LazyColumnและLazyRowก่อนหน้านี้ คุณสามารถเพิ่มตัวแก้ไขModifier.animateItemPlacement()เพื่อรองรับภาพเคลื่อนไหวของตำแหน่ง (การเรียงลำดับใหม่) เราได้เลิกใช้งานตัวแก้ไขนี้และเปิดตัวตัวแก้ไขใหม่ที่ไม่ใช่เวอร์ชันทดลองที่ชื่อModifier.animateItem()ซึ่งช่วยให้คุณรองรับภาพเคลื่อนไหวทั้ง 3 ประเภท ได้แก่ การปรากฏ (จางเข้า) การหายไป (จางออก) และการจัดลำดับใหม่ (I2d7f7, b/330152398, b/150812265)
การแก้ไขข้อบกพร่อง
- ปรับปรุงประสิทธิภาพของ
updateTransitionAPI
เวอร์ชัน 1.7.0-alpha05
20 มีนาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-alpha05 เวอร์ชัน 1.7.0-alpha05 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
SeekableTransitionStateจะแทนที่snapTo()ด้วยseekTo()และเพิ่มsnapTo()ที่เปลี่ยนสถานะเป็นสถานะปลายทางทันทีโดยไม่มีภาพเคลื่อนไหวใดๆ
เวอร์ชัน 1.7.0-alpha04
6 มีนาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-alpha04 เวอร์ชัน 1.7.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้
การเปลี่ยนแปลง API
- API ใหม่
Path.reverse()เพื่อย้อนกลับทิศทางของเส้นทาง (I36348)
เวอร์ชัน 1.7.0-alpha03
21 กุมภาพันธ์ 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-alpha03 เวอร์ชัน 1.7.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
Modifier.animateContentSizeใหม่ที่ใช้พารามิเตอร์เพิ่มเติมสำหรับการจัดแนวเนื้อหาที่กำหนดเอง (I5623a, b/269803907)DeferredTargetAnimationใหม่สำหรับการทดลองเพื่อเคลื่อนไหวขนาด ตำแหน่ง หรือเป้าหมายอื่นๆ ที่ไม่รู้จักในระหว่างการเริ่มต้น (I60745)
เวอร์ชัน 1.7.0-alpha02
7 กุมภาพันธ์ 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-alpha02 เวอร์ชัน 1.7.0-alpha02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขความเข้ากันได้สำหรับ
KeyframesSpec(I2bdf3, b/322214617) - แก้ไขปัญหาที่
Modifier.animateContentSizeไม่รีเซ็ตอย่างถูกต้องเมื่อใช้ในLazyList(I070512, b/322525716) - แก้ไข
IllegalStateExceptionในKeyframesSpecเมื่อใช้การประทับเวลาที่อยู่นอกช่วง (I341b8, b/322839811)
เวอร์ชัน 1.7.0-alpha01
24 มกราคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.7.0-alpha01 เวอร์ชัน 1.7.0-alpha01 มีคอมมิตต่อไปนี้
เวอร์ชัน 1.6
เวอร์ชัน 1.6.8
12 มิถุนายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.8 เวอร์ชัน 1.6.8 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.6.7
1 พฤษภาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.7 เวอร์ชัน 1.6.7 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.6.6
17 เมษายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.6 ไม่มีการเปลี่ยนแปลงตั้งแต่รุ่นก่อนหน้า
เวอร์ชัน 1.6.5
3 เมษายน 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.5 เวอร์ชัน 1.6.5 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.6.4
20 มีนาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.4 เวอร์ชัน 1.6.4 มีการเปลี่ยนแปลงเหล่านี้
เวอร์ชัน 1.6.3
6 มีนาคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.3 เวอร์ชัน 1.6.3 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.6.2
21 กุมภาพันธ์ 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.2 เวอร์ชัน 1.6.2 มีคอมมิตเหล่านี้
เวอร์ชัน 1.6.1
7 กุมภาพันธ์ 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.1 เวอร์ชัน 1.6.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขความเข้ากันได้สำหรับ
KeyframesSpec(I2bdf3, b/322214617)
เวอร์ชัน 1.6.0
24 มกราคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0 เวอร์ชัน 1.6.0 มีคอมมิตเหล่านี้
เวอร์ชัน 1.6.0-rc01
10 มกราคม 2024
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-rc01 เวอร์ชัน 1.6.0-rc01 มีคอมมิตต่อไปนี้
เวอร์ชัน 1.6.0-beta03
13 ธันวาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-beta03 เวอร์ชัน 1.6.0-beta03 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- นำ
scaleInToFitContainerและscaleOutToFitContainerออกจากAnimatedContentTransitionScopeชั่วคราวเนื่องจากต้องใช้การคาดการณ์ล่วงหน้า โดยจะพร้อมใช้งานเมื่อเปิดใช้การคาดคะเนโดยค่าเริ่มต้นหรือเลือกใช้ในรุ่นต่อๆ ไป
เวอร์ชัน 1.6.0-beta02
29 พฤศจิกายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-beta02 เวอร์ชัน 1.6.0-beta02 มีคอมมิตเหล่านี้
เวอร์ชัน 1.6.0-beta01
15 พฤศจิกายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-beta01 เวอร์ชัน 1.6.0-beta01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
ExitTransition.Holdได้เปลี่ยนชื่อเป็นExitTransition.KeepUntilTransitionsFinishedเพื่อให้ชัดเจนยิ่งขึ้น (I1c490)- ตอนนี้คุณใช้
keyframesWithSplineเพื่อประมาณค่า N มิติได้แล้วโดยใช้สไปลน์แบบโมโนโทนิก ซึ่งมีประโยชน์อย่างยิ่งในการประมาณค่าตำแหน่ง เช่นOffset,IntOffset,DpOffsetเพิ่มเป็น API เวอร์ชันทดลอง
การแก้ไขข้อบกพร่อง
- เพิ่มการรองรับโปรแกรมแสดงผลสำหรับ Sweep Gradient ใน
ArcLine(I4d5bb) - ใช้ equals และ hashcode สำหรับ
PageSize.Fixed(Ie3ede, b/300134276) - แก้ไขปัญหาความเข้ากันได้ของไบนารีกับการเปลี่ยนแปลง Window Inset (Iee695)
- นำเลเยอร์หลักของ Material ออกสำหรับชิป/ปุ่ม Material3 เนื่องจาก Microbenchmark แสดงให้เห็นว่าไม่มีเลเยอร์ดังกล่าวจะให้ประสิทธิภาพที่ดีกว่า (I55555)
เวอร์ชัน 1.6.0-alpha08
18 ตุลาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-alpha08 เวอร์ชัน 1.6.0-alpha08 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เลิกใช้งาน
KeyframesSpecConfig#withเพื่อใช้KeyframesSpecConfig#usingแทน ซึ่งยังคงรูปแบบ Builder ไว้ (I1d769)
เวอร์ชัน 1.6.0-alpha07
4 ตุลาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-alpha07 เวอร์ชัน 1.6.0-alpha07 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- ตอนนี้แถบแท็บแบบคงที่และแบบเลื่อนได้มีตัวแปรหลักและตัวแปรรองแล้ว ซึ่งจะแมปกับลักษณะการทำงานของสีและตัวบ่งชี้อย่างถูกต้องตามที่กำหนดไว้ใน Material3
- ตอนนี้
PrimaryScrollableTabRowและSecondaryScrollableTabRowแสดงสถานะการเลื่อนแล้ว (Iec8f5, b/260572337)
เวอร์ชัน 1.6.0-alpha06
20 กันยายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-alpha06 เวอร์ชัน 1.6.0-alpha06 มีคอมมิตเหล่านี้
เวอร์ชัน 1.6.0-alpha05
6 กันยายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-alpha05 เวอร์ชัน 1.6.0-alpha05 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เพิ่ม
PathEasingเพื่อให้ระบุเส้นทางที่กำหนดเองไปยังเส้นโค้งการค่อยๆ เปลี่ยนได้ (Idb4b9)
เวอร์ชัน 1.6.0-alpha04
23 สิงหาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-alpha04 เวอร์ชัน 1.6.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่ม
SeekableTransitionStateเพื่อให้นักพัฒนาแอปควบคุมความคืบหน้าของการเปลี่ยนผ่านได้ (I8e69d)
เวอร์ชัน 1.6.0-alpha03
9 สิงหาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-alpha03 เวอร์ชัน 1.6.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- การเปลี่ยนฉากเข้า/ออกประเภทใหม่ที่ปรับขนาดเนื้อหาตามขนาดของคอนเทนเนอร์ที่เคลื่อนไหวระหว่างภาพเคลื่อนไหวเข้าและออก
LookaheadScopeตอนนี้ฟีเจอร์สนุกๆ และอินเทอร์เฟซที่ประกอบได้ก็เสถียรแล้ว (Ifb2ce)
เวอร์ชัน 1.6.0-alpha02
26 กรกฎาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-alpha02 เวอร์ชัน 1.6.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
ExitTransition.Holdใหม่เพื่อแสดงเนื้อหาขาออกในAnimatedContentจนกว่าการเปลี่ยนทั้งขาเข้าและขาออกจะเสร็จสิ้น (I5984f)- คำอธิบายประกอบเพิ่มเติมเพื่อระบุอินพุตที่อนุญาตไปยัง Composable (I51109)
เวอร์ชัน 1.6.0-alpha01
21 มิถุนายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.6.0-alpha01 เวอร์ชัน 1.6.0-alpha01 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- เปิดใช้
Modifier.animateContentSizeและAnimatedVisibilityเพื่อให้ผสานรวมกับระบบการคาดการณ์ได้อย่างเต็มที่โดยการรายงานขนาดเป้าหมายในพาสการคาดการณ์
การเปลี่ยนแปลง API
- พร็อพเพอร์ตี้ใหม่ใน
IntrinsincMeasureScopeและการติดตั้งใช้งาน (เช่นMeasureScope) เพื่อระบุว่าการวัดปัจจุบันเป็นการวัดแบบคาดการณ์หรือไม่ (I7a812)
การแก้ไขข้อบกพร่อง
- นำการจัดสรรออกจากภาพเคลื่อนไหวสปริง (Ie9431)
- เปลี่ยนชื่อพารามิเตอร์ค่าสำหรับ Enum.valueOf (Ia9b89)
- ข้อยกเว้นที่เกิดขึ้นเพิ่มเติมจาก enum valueOf (I818fe)
รุ่น 1.5
เวอร์ชัน 1.5.4
18 ตุลาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.4 เวอร์ชัน 1.5.4 มีคอมมิตเหล่านี้
เวอร์ชัน 1.5.3
4 ตุลาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.3 เวอร์ชันนี้ไม่มีการเปลี่ยนแปลง
รุ่น 1.5.2
27 กันยายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.2 เวอร์ชัน 1.5.2 มีคอมมิตเหล่านี้
รุ่น 1.5.1
6 กันยายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.foundation:foundation-*:1.5.1 เวอร์ชัน 1.5.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขช่องข้อความที่แสดงแป้นพิมพ์และแก้ไขได้เมื่อ
readOnlyเป็นจริง นอกจากนี้ ยังแก้ไขปัญหาที่แป้นพิมพ์ไม่แสดงเมื่อเปลี่ยนreadOnlyจากจริงเป็นเท็จขณะโฟกัส (I34a19, b/246909589)
รุ่น 1.5.1
6 กันยายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.1 เวอร์ชัน 1.5.1 มีคอมมิตเหล่านี้
เวอร์ชัน 1.5.0
9 สิงหาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0 เวอร์ชัน 1.5.0 มีคอมมิตเหล่านี้
เวอร์ชัน 1.5.0-rc01
26 กรกฎาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0-rc01 เวอร์ชัน 1.5.0-rc01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
แก้ไขปัญหาที่การเรียกใช้
.valueในประเภทสถานะดั้งเดิม (เช่นMutableIntState) จะรายงานคำเตือนของ Lint พร้อมการแก้ไขที่ไม่ถูกต้อง ตอนนี้การตรวจสอบจะแนะนำให้ย้ายข้อมูลไปยังพร็อพเพอร์ตี้ที่ถูกต้อง (Iba953, b/287279257)คุณสามารถเลือกตรวจสอบเพื่อแนะนำให้ย้ายข้อมูลการเรียก
mutableStateOf()ไปยังประเภทเฉพาะทางที่เกี่ยวข้องสำหรับ Primitive ได้ รหัส Lint คือAutoboxingStateCreationก่อนหน้านี้ การตรวจสอบนี้จะเปิดใช้โดยค่าเริ่มต้นสำหรับทุกโปรเจ็กต์ หากต้องการดูคำเตือนนี้ในเอดิเตอร์ของ Android Studio และเอาต์พุต Lint ของโปรเจ็กต์ ให้เปลี่ยนระดับความรุนแรงจากข้อมูลเป็นการเตือน (หรือสูงกว่า) โดยประกาศwarning "AutoboxingStateCreation"ภายในbuild.gradleหรือการกำหนดค่าbuild.gradle.ktsของโมดูลตามที่แสดง (I34f7e)android { lint { warning "AutoboxingStateCreation" } ... }
เวอร์ชัน 1.5.0-beta03
28 มิถุนายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0-beta03 เวอร์ชัน 1.5.0-beta03 มีคอมมิตเหล่านี้
เวอร์ชัน 1.5.0-beta02
7 มิถุนายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0-beta02 เวอร์ชัน 1.5.0-beta02 มีคอมมิตเหล่านี้
เวอร์ชัน 1.5.0-beta01
24 พฤษภาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0-beta01 เวอร์ชัน 1.5.0-beta01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- นำการจัดสรรในการจัดองค์ประกอบใหม่ ภาพเคลื่อนไหวสี และ
AndroidComposeView(Ib2bfa) ออกแล้ว
การแก้ไขข้อบกพร่อง
- นำการจัดสรรออกจากภาพเคลื่อนไหวแรงสปริง (Ie9431)
เวอร์ชัน 1.5.0-alpha04
10 พฤษภาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0-alpha04 เวอร์ชัน 1.5.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
ContentKeyรองรับในAnimatedContentแล้วเพื่อให้ควบคุมได้มากขึ้นเมื่อควรเปลี่ยน (Ic069b)
เวอร์ชัน 1.5.0-alpha03
19 เมษายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0-alpha03 เวอร์ชัน 1.5.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- ลักษณะการทำงานเริ่มต้นใหม่สำหรับ
SubcomposeLayoutในLookaheadScopeซึ่งจะช่วยให้SubcomposeLayoutsที่ไม่มีช่องแบบมีเงื่อนไข (เช่นTabRow,Scaffold,BoxWithConstraintsฯลฯ) ทำงานร่วมกับภาพเคลื่อนไหวแบบดูตัวอย่างได้อย่างราบรื่น
การเปลี่ยนแปลง API
intermediateMeasurePolicyใหม่เริ่มต้นที่ใช้ซ้ำนโยบายการวัดผลจาก Lookahead Pass ช่วยให้ประเภทSubcomposeLayoutย่อยที่ไม่มีช่องแบบมีเงื่อนไข เช่นScaffold,TabRowและBoxWithConstraintsทำงานร่วมกับ Lookahead ได้โดยค่าเริ่มต้น (Id84c8)- เปลี่ยนชื่อฟังก์ชัน Infix ที่มีคำว่า "with" เป็น
togetherWithเพื่อรวมการเปลี่ยนฉากเข้าและออกAnimatedContentScopeใหม่ในฐานะตัวรับสำหรับ Lambda ของเนื้อหา (Ic39ae)
เวอร์ชัน 1.5.0-alpha02
5 เมษายน 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0-alpha02 เวอร์ชัน 1.5.0-alpha02 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- API เวอร์ชันทดลองใหม่เพื่อรองรับการคาดคะเนใน
SubcomposeLayoutซึ่งจะช่วยให้SubcomposeLayoutทำงานได้อย่างถูกต้องในLookaheadScopeเราจะเพิ่มการรองรับSubcomposeLayoutประเภทเฉพาะย่อยๆ อื่นๆ ในเร็วๆ นี้
การเปลี่ยนแปลง API
SubcomposeLayoutAPI ใหม่ที่ใช้นโยบายการวัดระดับกลางเพิ่มเติมสำหรับการจัดการตรรกะการวัด/เลย์เอาต์ระหว่าง ภาพเคลื่อนไหวที่อิงตามการคาดการณ์ (I017d3)
เวอร์ชัน 1.5.0-alpha01
22 มีนาคม 2023
ระบบจะถอนการอ้างสิทธิ์androidx.compose.animation:animation-*:1.5.0-alpha01 เวอร์ชัน 1.5.0-alpha01 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
AnimatedContentตอนนี้ API เสถียรแล้วAnimatedContentScopeได้เปลี่ยนชื่อเป็นAnimatedContentTransitionScopeตอนนี้scaleInและscaleOutเป็น API ที่เสถียรแล้ว (Iaf54e)
เวอร์ชัน 1.4
เวอร์ชัน 1.4.3
3 พฤษภาคม 2023
androidx.compose.animation:animation:1.4.3, androidx.compose.animation:animation-core:1.4.3 และ androidx.compose.animation:animation-graphics:1.4.3 จะได้รับการเผยแพร่โดยไม่มีการเปลี่ยนแปลง (มีการอัปเดตเวอร์ชันเท่านั้น)
เวอร์ชัน 1.4.2
19 เมษายน 2023
androidx.compose.animation:animation:1.4.2, androidx.compose.animation:animation-core:1.4.2 และ androidx.compose.animation:animation-graphics:1.4.2 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.2 มีคอมมิตเหล่านี้
เวอร์ชัน 1.4.1
5 เมษายน 2023
androidx.compose.animation:animation:1.4.1, androidx.compose.animation:animation-core:1.4.1 และ androidx.compose.animation:animation-graphics:1.4.1 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.1 มีคอมมิตเหล่านี้
เวอร์ชัน 1.4.0
22 มีนาคม 2023
androidx.compose.animation:animation:1.4.0, androidx.compose.animation:animation-core:1.4.0 และ androidx.compose.animation:animation-graphics:1.4.0 เปิดตัวแล้ว เวอร์ชัน 1.4.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงสำคัญตั้งแต่เวอร์ชัน 1.3.0
- รองรับป้ายกำกับเครื่องมือใน r
ememberInfiniteTransitionและฟังก์ชันส่วนขยายทั้งหมดในInfiniteTransitionและ Transition (เช่นInfiniteTransition#animateColor) (I56ef7)
เวอร์ชัน 1.4.0-rc01
8 มีนาคม 2023
androidx.compose.animation:animation:1.4.0-rc01, androidx.compose.animation:animation-core:1.4.0-rc01 และ androidx.compose.animation:animation-graphics:1.4.0-rc01 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.0-rc01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.4.0-beta02
22 กุมภาพันธ์ 2023
androidx.compose.animation:animation:1.4.0-beta02, androidx.compose.animation:animation-core:1.4.0-beta02 และ androidx.compose.animation:animation-graphics:1.4.0-beta02 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.0-beta02 มีคอมมิตเหล่านี้
เวอร์ชัน 1.4.0-beta01
8 กุมภาพันธ์ 2023
androidx.compose.animation:animation:1.4.0-beta01, androidx.compose.animation:animation-core:1.4.0-beta01 และ androidx.compose.animation:animation-graphics:1.4.0-beta01 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.0-beta01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.4.0-alpha05
25 มกราคม 2023
androidx.compose.animation:animation:1.4.0-alpha05, androidx.compose.animation:animation-core:1.4.0-alpha05 และ androidx.compose.animation:animation-graphics:1.4.0-alpha05 เปิดตัวแล้ว เวอร์ชัน 1.4.0-alpha05 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง
- ไม่มีการเปลี่ยนแปลงในไลบรารีภาพเคลื่อนไหวตั้งแต่เวอร์ชันอัลฟ่าล่าสุด มีเพียงการเพิ่มเวอร์ชันเท่านั้น
เวอร์ชัน 1.4.0-alpha04
11 มกราคม 2023
androidx.compose.animation:animation:1.4.0-alpha04, androidx.compose.animation:animation-core:1.4.0-alpha04 และ androidx.compose.animation:animation-graphics:1.4.0-alpha04 เปิดตัวแล้ว เวอร์ชัน 1.4.0-alpha04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- รองรับป้ายกำกับเครื่องมือใน
rememberInfiniteTransitionและฟังก์ชันส่วนขยายทั้งหมดในInfiniteTransitionและTransition(เช่นInfiniteTransition#animateColor) (I56ef7)
การเปลี่ยนแปลง API
- ตอนนี้ API ของ
InfiniteTransition#TransitionAnimationStateและInfiniteTransition#animationsพร้อมใช้งานแบบสาธารณะแล้ว (I36682)
เวอร์ชัน 1.4.0-alpha03
7 ธันวาคม 2022
androidx.compose.animation:animation:1.4.0-alpha03, androidx.compose.animation:animation-core:1.4.0-alpha03 และ androidx.compose.animation:animation-graphics:1.4.0-alpha03 เปิดตัวแล้ว เวอร์ชัน 1.4.0-alpha03 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- ในการทดสอบ UI โดยใช้กฎ Compose ระบบจะไม่ส่งต่อการดำเนินการต่อที่กลับมาทำงานต่อในระหว่างการเรียกกลับ
withFrameNanosจนกว่าการเรียกกลับของเฟรมทั้งหมดจะทำงานเสร็จ ซึ่งจะตรงกับลักษณะการทำงานของ Compose เมื่อทำงานตามปกติ อย่างไรก็ตาม การทดสอบที่อิงตามลักษณะการทำงานแบบเดิมอาจล้มเหลว การเปลี่ยนแปลงนี้ควรส่งผลต่อโค้ดที่เรียกใช้withFrameNanosหรือwithFrameMillisโดยตรงเท่านั้น และมีตรรกะภายนอกการเรียกกลับที่ส่งไปยังฟังก์ชันเหล่านั้น ซึ่งอาจต้องย้ายไปอยู่ภายในฟังก์ชันเรียกกลับ ดูการเปลี่ยนแปลงการทดสอบภาพเคลื่อนไหวใน CL นี้เพื่อดูตัวอย่าง - เพิ่มพารามิเตอร์
onPerformTraversals: (Long) -> Unitที่ไม่บังคับลงในตัวสร้างTestMonotonicFrameClockและฟังก์ชัน Factory เพื่อเรียกใช้โค้ดหลังจาก Callback ของwithFrameNanosแต่ก่อนที่จะกลับมาใช้ Coroutine ของผู้โทร (Idb413, b/254115946, b/222093277, b/255802670) - พารามิเตอร์ใหม่ใน
AnimatedContentสำหรับป้ายกำกับเครื่องมือ (Iebe2d)
เวอร์ชัน 1.4.0-alpha02
9 พฤศจิกายน 2022
androidx.compose.animation:animation:1.4.0-alpha02, androidx.compose.animation:animation-core:1.4.0-alpha02 และ androidx.compose.animation:animation-graphics:1.4.0-alpha02 เปิดตัวแล้ว เวอร์ชัน 1.4.0-alpha02 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เพิ่ม
ToolingStateเพื่ออนุญาตให้เครื่องมือเปลี่ยนสถานะภายในของ Composable (Ie6614)
เวอร์ชัน 1.4.0-alpha01
24 ตุลาคม 2022
androidx.compose.animation:animation:1.4.0-alpha01, androidx.compose.animation:animation-core:1.4.0-alpha01 และ androidx.compose.animation:animation-graphics:1.4.0-alpha01 เปิดตัวแล้ว เวอร์ชัน 1.4.0-alpha01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขภาพเคลื่อนไหวการขัดจังหวะที่ไม่ถูกต้องใน AnimatedContent (b/238662479)
เวอร์ชัน 1.3
เวอร์ชัน 1.3.3
11 มกราคม 2023
androidx.compose.animation:animation:1.3.3, androidx.compose.animation:animation-core:1.3.3 และ androidx.compose.animation:animation-graphics:1.3.3 เปิดตัวแล้ว เวอร์ชัน 1.3.3 มีคอมมิตเหล่านี้
- ไม่มีการเปลี่ยนแปลงตั้งแต่เวอร์ชัน 1.3.2
เวอร์ชัน 1.3.2
7 ธันวาคม 2022
androidx.compose.animation:animation:1.3.2, androidx.compose.animation:animation-core:1.3.2 และ androidx.compose.animation:animation-graphics:1.3.2 เปิดตัวแล้ว เวอร์ชัน 1.3.2 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- อัปเดตเพื่อรองรับ androidx.compose.ui 1.3.2
เวอร์ชัน 1.3.1
9 พฤศจิกายน 2022
androidx.compose.animation:animation:1.3.1, androidx.compose.animation:animation-core:1.3.1 และ androidx.compose.animation:animation-graphics:1.3.1 เปิดตัวแล้ว เวอร์ชัน 1.3.1 มีคอมมิตเหล่านี้
เวอร์ชัน 1.3.0
24 ตุลาคม 2022
androidx.compose.animation:animation:1.3.0, androidx.compose.animation:animation-core:1.3.0 และ androidx.compose.animation:animation-graphics:1.3.0 เปิดตัวแล้ว เวอร์ชัน 1.3.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.2.0
- ทำให้ฟังก์ชันการเปลี่ยนภาพชุดใหม่เสถียร
เวอร์ชัน 1.3.0-rc01
5 ตุลาคม 2022
androidx.compose.animation:animation:1.3.0-rc01, androidx.compose.animation:animation-core:1.3.0-rc01 และ androidx.compose.animation:animation-graphics:1.3.0-rc01 เปิดตัวแล้ว เวอร์ชัน 1.3.0-rc01 มีคอมมิตเหล่านี้
เวอร์ชัน 1.3.0-beta03
21 กันยายน 2022
androidx.compose.animation:animation:1.3.0-beta03, androidx.compose.animation:animation-core:1.3.0-beta03 และ androidx.compose.animation:animation-graphics:1.3.0-beta03 เปิดตัวแล้ว เวอร์ชัน 1.3.0-beta03 มีคอมมิตเหล่านี้
- ไม่มีการเปลี่ยนแปลงตั้งแต่ 1.3.0-beta02
เวอร์ชัน 1.3.0-beta02
7 กันยายน 2022
androidx.compose.animation:animation:1.3.0-beta02, androidx.compose.animation:animation-core:1.3.0-beta02 และ androidx.compose.animation:animation-graphics:1.3.0-beta02 เปิดตัวแล้ว เวอร์ชัน 1.3.0-beta02 มีคอมมิตต่อไปนี้
- นำ Kotlin.experimental ออกจากตัวเลือกคอมไพเลอร์เนื่องจากเลิกใช้งานแล้ว
เวอร์ชัน 1.3.0-beta01
24 สิงหาคม 2022
androidx.compose.animation:animation:1.3.0-beta01, androidx.compose.animation:animation-core:1.3.0-beta01 และ androidx.compose.animation:animation-graphics:1.3.0-beta01 เปิดตัวแล้ว เวอร์ชัน 1.3.0-beta01 มีการคอมมิตเหล่านี้
เวอร์ชัน 1.3.0-alpha03
10 สิงหาคม 2022
androidx.compose.animation:animation:1.3.0-alpha03, androidx.compose.animation:animation-core:1.3.0-alpha03 และ androidx.compose.animation:animation-graphics:1.3.0-alpha03 เปิดตัวแล้ว เวอร์ชัน 1.3.0-alpha03 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- พารามิเตอร์ใหม่ใน
Crossfade,animateAsStateและAnimatableสำหรับป้ายกำกับเครื่องมือ (Iac08a) - เพิ่มฟังก์ชัน
atFractionสำหรับกำหนดคีย์เฟรมเป็นเศษส่วนแทนที่จะเป็นระยะเวลาที่เฉพาะเจาะจง (I20c76, b/232059455)
เวอร์ชัน 1.3.0-alpha02
27 กรกฎาคม 2022
androidx.compose.animation:animation:1.3.0-alpha02, androidx.compose.animation:animation-core:1.3.0-alpha02 และ androidx.compose.animation:animation-graphics:1.3.0-alpha02 เปิดตัวแล้ว เวอร์ชัน 1.3.0-alpha02 มีคอมมิตเหล่านี้
เวอร์ชัน 1.3.0-alpha01
29 มิถุนายน 2022
androidx.compose.animation:animation:1.3.0-alpha01, androidx.compose.animation:animation-core:1.3.0-alpha01 และ androidx.compose.animation:animation-graphics:1.3.0-alpha01 เปิดตัวแล้ว เวอร์ชัน 1.3.0-alpha01 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
LookaheadLayoutใหม่ที่รองรับการส่งผ่านล่วงหน้าก่อนการวัด/เลย์เอาต์จริง ซึ่งจะช่วยให้คำนวณเลย์เอาต์ล่วงหน้าได้เมื่อมีการเปลี่ยนแปลง ขณะเดียวกันก็อนุญาตให้การวัด/เลย์เอาต์หลังการมองไปข้างหน้าใช้ขนาด/ตำแหน่งที่คำนวณไว้ล่วงหน้าเพื่อเคลื่อนไหวขนาดและตำแหน่งไปยังเป้าหมายSubcomposeLayoutsยังไม่รองรับ แต่จะรองรับในรุ่นที่จะเปิดตัวเร็วๆ นี้ (I477f5)
เวอร์ชัน 1.2
เวอร์ชัน 1.2.1
10 สิงหาคม 2022
androidx.compose.animation:animation:1.2.1, androidx.compose.animation:animation-core:1.2.1 และ androidx.compose.animation:animation-graphics:1.2.1 เปิดตัวแล้ว เวอร์ชัน 1.2.1 มีคอมมิตเหล่านี้
เวอร์ชัน 1.2.0
27 กรกฎาคม 2022
androidx.compose.animation:animation:1.2.0, androidx.compose.animation:animation-core:1.2.0 และ androidx.compose.animation:animation-graphics:1.2.0 เปิดตัวแล้ว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0
- ฟีเจอร์สร้างภาพเคลื่อนไหวรองรับการตั้งค่า "สเกลระยะเวลาของภาพเคลื่อนไหว" จากตัวเลือกสำหรับนักพัฒนาแอปแล้ว
- มีเส้นโค้งการผ่อนคลายแบบทดลองใหม่ๆ ให้เลือกมากมาย
AnimatedImageVectorรองรับrepeatCountและrepeatModeแล้ว
เวอร์ชัน 1.2.0-rc03
29 มิถุนายน 2022
androidx.compose.animation:animation:1.2.0-rc03, androidx.compose.animation:animation-core:1.2.0-rc03 และ androidx.compose.animation:animation-graphics:1.2.0-rc03 เปิดตัวแล้ว เวอร์ชัน 1.2.0-rc03 มีคอมมิตเหล่านี้
- ไม่มีการเปลี่ยนแปลงตั้งแต่เวอร์ชัน 1.2.0-rc02
เวอร์ชัน 1.2.0-rc02
22 มิถุนายน 2022
androidx.compose.animation:animation:1.2.0-rc02, androidx.compose.animation:animation-core:1.2.0-rc02 และ androidx.compose.animation:animation-graphics:1.2.0-rc02 เปิดตัวแล้ว เวอร์ชัน 1.2.0-rc02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- นำคำอธิบายประกอบ
ExperimentalEasingApiออกจากฟังก์ชันการค่อยๆ เปลี่ยน (Ied441)
เวอร์ชัน 1.2.0-rc01
15 มิถุนายน 2022
androidx.compose.animation:animation:1.2.0-rc01, androidx.compose.animation:animation-core:1.2.0-rc01 และ androidx.compose.animation:animation-graphics:1.2.0-rc01 เปิดตัวแล้ว เวอร์ชัน 1.2.0-rc01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้อินเทอร์เฟซในไลบรารี Compose สร้างขึ้นโดยใช้เมธอดอินเทอร์เฟซเริ่มต้นของ jdk8 (I5bcf1)
เวอร์ชัน 1.2.0-beta03
1 มิถุนายน 2022
androidx.compose.animation:animation:1.2.0-beta03, androidx.compose.animation:animation-core:1.2.0-beta03 และ androidx.compose.animation:animation-graphics:1.2.0-beta03 เปิดตัวแล้ว เวอร์ชัน 1.2.0-beta03 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มเส้นโค้งการค่อยๆ เปลี่ยนเวอร์ชันทดลองสำหรับภาพเคลื่อนไหว (I64a38)
เวอร์ชัน 1.2.0-beta02
18 พฤษภาคม 2022
androidx.compose.animation:animation:1.2.0-beta02, androidx.compose.animation:animation-core:1.2.0-beta02 และ androidx.compose.animation:animation-graphics:1.2.0-beta02 เปิดตัวแล้ว เวอร์ชัน 1.2.0-beta02 มีคอมมิตเหล่านี้
เวอร์ชัน 1.2.0-beta01
11 พฤษภาคม 2022
androidx.compose.animation:animation:1.2.0-beta01, androidx.compose.animation:animation-core:1.2.0-beta01 และ androidx.compose.animation:animation-graphics:1.2.0-beta01 เปิดตัวแล้ว เวอร์ชัน 1.2.0-beta01 มีคอมมิตเหล่านี้
- นี่คือรุ่นเบต้า 1.2 รุ่นแรก ไม่มีการเปลี่ยนแปลงใดๆ ตั้งแต่เวอร์ชันอัลฟ่าล่าสุด
เวอร์ชัน 1.2.0-alpha08
20 เมษายน 2022
androidx.compose.animation:animation:1.2.0-alpha08, androidx.compose.animation:animation-core:1.2.0-alpha08 และ androidx.compose.animation:animation-graphics:1.2.0-alpha08 เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha08 มีคอมมิตต่อไปนี้
เวอร์ชัน 1.2.0-alpha07
6 เมษายน 2022
androidx.compose.animation:animation:1.2.0-alpha07, androidx.compose.animation:animation-core:1.2.0-alpha07 และ androidx.compose.animation:animation-graphics:1.2.0-alpha07 เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha07 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
AnimatedImageVectorรองรับrepeatCountและrepeatModeแล้ว (Ia3e75, b/199304067)
เวอร์ชัน 1.2.0-alpha06
23 มีนาคม 2022
androidx.compose.animation:animation:1.2.0-alpha06, androidx.compose.animation:animation-core:1.2.0-alpha06 และ androidx.compose.animation:animation-graphics:1.2.0-alpha06 เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha06 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อัปเดตการแยกวิเคราะห์ Vector Drawable เพื่อรองรับการมิเรอร์อัตโนมัติเพื่อพลิกเนื้อหาของ
VectorPainterหากทิศทางเลย์เอาต์ปัจจุบันเป็น RTL (I79cd9, b/185760237)
การแก้ไขข้อบกพร่อง
- อัปเดต Vector Graphics API ให้ใช้คำอธิบายประกอบที่ประกอบได้ที่เหมาะสม
@VectorComposableแทน@UiComposable(I942bc)
เวอร์ชัน 1.2.0-alpha05
9 มีนาคม 2022
androidx.compose.animation:animation:1.2.0-alpha05, androidx.compose.animation:animation-core:1.2.0-alpha05 และ androidx.compose.animation:animation-graphics:1.2.0-alpha05 เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha05 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ไชโย! ตอนนี้ Compose Animation รองรับการตั้งค่า "สเกลระยะเวลาของ Animator" จากตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์แล้ว (I5a4fc, b/161675988)
เวอร์ชัน 1.2.0-alpha04
23 กุมภาพันธ์ 2022
androidx.compose.animation:animation:1.2.0-alpha04, androidx.compose.animation:animation-core:1.2.0-alpha04 และ androidx.compose.animation:animation-graphics:1.2.0-alpha04 เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha04 มีคอมมิตเหล่านี้
เวอร์ชัน 1.2.0-alpha03
9 กุมภาพันธ์ 2022
androidx.compose.animation:animation:1.2.0-alpha03, androidx.compose.animation:animation-core:1.2.0-alpha03 และ androidx.compose.animation:animation-graphics:1.2.0-alpha03 เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตต่อไปนี้
เวอร์ชัน 1.2.0-alpha02
26 มกราคม 2022
androidx.compose.animation:animation:1.2.0-alpha02, androidx.compose.animation:animation-core:1.2.0-alpha02 และ androidx.compose.animation:animation-graphics:1.2.0-alpha02 เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตเหล่านี้
เวอร์ชัน 1.2.0-alpha01
12 มกราคม 2022
androidx.compose.animation:animation:1.2.0-alpha01, androidx.compose.animation:animation-core:1.2.0-alpha01 และ androidx.compose.animation:animation-graphics:1.2.0-alpha01 เปิดตัวแล้ว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- ใช้
AnimatedImageVector.animatedVectorResourceแทนanimatedVectorResourceเพื่อโหลดไฟล์ทรัพยากร<animated-vector>- ใช้
rememberAnimatedVectorResourceแทนAnimatedImageVector#painterForเพื่อแสดงผลAnimatedImageVector(I9c300)
- ใช้
การแก้ไขข้อบกพร่อง
- เพิ่มเมธอด toString ลงใน Animatable และ AnimationResult (Icd3a6)
การอัปเดตทรัพยากร Dependency
- ตอนนี้ต้องใช้ Kotlin
1.6.10
เวอร์ชัน 1.1
เวอร์ชัน 1.1.1
23 กุมภาพันธ์ 2022
androidx.compose.animation:animation:1.1.1, androidx.compose.animation:animation-core:1.1.1 และ androidx.compose.animation:animation-graphics:1.1.1 เปิดตัวแล้ว เวอร์ชัน 1.1.1 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไข
NullPointerExceptionที่androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList(aosp/1947059, b/206677462) - แก้ไขข้อขัดข้องที่เกิดจากเนื้อหาในคลิปบอร์ดขณะอ่านจากคลิปบอร์ดใน Android (I06020, b/197769306)
- แก้ไข RTL ใน
LazyVerticalGrid(aosp/1931080, b/207510535)
เวอร์ชัน 1.1.0
9 กุมภาพันธ์ 2022
androidx.compose.animation:animation:1.1.0, androidx.compose.animation:animation-core:1.1.0 และ androidx.compose.animation:animation-graphics:1.1.0 เปิดตัวแล้ว เวอร์ชัน 1.1.0 มีคอมมิตเหล่านี้
การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0
- การรองรับเอฟเฟกต์การเลื่อนเกินของ Android 12 อย่างเสถียร
- การปรับปรุงขนาดเป้าหมายการสัมผัส
- โปรดทราบว่าใน Compose 1.0 คอมโพเนนต์ Material จะขยายพื้นที่เลย์เอาต์เพื่อให้เป็นไปตามหลักเกณฑ์การช่วยเหลือพิเศษของ Material สำหรับขนาดเป้าหมายการสัมผัส ตัวอย่างเช่น เป้าหมายการสัมผัสของปุ่มจะขยายเป็นขนาดขั้นต่ำ 48x48dp แม้ว่าคุณจะตั้งค่าขนาดของปุ่มให้เล็กกว่านี้ก็ตาม ซึ่งจะช่วยให้ Compose Material มีลักษณะการทำงานเหมือนกับคอมโพเนนต์ Material Design และมีลักษณะการทำงานที่สอดคล้องกันหากคุณใช้ทั้ง View และ Compose การเปลี่ยนแปลงนี้ยังช่วยให้มั่นใจได้ว่าเมื่อคุณสร้าง UI โดยใช้คอมโพเนนต์ Material ของ Compose ระบบจะปฏิบัติตามข้อกำหนดขั้นต่ำสำหรับการช่วยเหลือพิเศษของเป้าหมายการสัมผัส
- การรองรับ Navigation Rail อย่างเสถียร
- เปลี่ยน API แบบทดลองก่อนหน้านี้หลายรายการให้เป็น API ที่เสถียร
- การรองรับ Kotlin เวอร์ชันใหม่กว่า
เวอร์ชัน 1.1.0-rc03
26 มกราคม 2022
androidx.compose.animation:animation:1.1.0-rc03, androidx.compose.animation:animation-core:1.1.0-rc03 และ androidx.compose.animation:animation-graphics:1.1.0-rc03 เปิดตัวแล้ว เวอร์ชัน 1.1.0-rc03 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- อัปเดตเพื่อรองรับ Compose Material 1.1.0-rc03
เวอร์ชัน 1.1.0-rc01
15 ธันวาคม 2021
androidx.compose.animation:animation:1.1.0-rc01 และ androidx.compose.animation:animation-core:1.1.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ใช้
AnimatedImageVector.animatedVectorResourceแทนanimatedVectorResourceเพื่อโหลดไฟล์ทรัพยากร<animated-vector>- ใช้
rememberAnimatedVectorResourceแทนAnimatedImageVector#painterForเพื่อแสดงผลAnimatedImageVector(I9c300)
- ใช้
เวอร์ชัน 1.1.0-beta04
1 ธันวาคม 2021
androidx.compose.animation:animation:1.1.0-beta04, androidx.compose.animation:animation-core:1.1.0-beta04 และ androidx.compose.animation:animation-graphics:1.1.0-beta04 เปิดตัวแล้ว เวอร์ชัน 1.1.0-beta04 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- อัปเดตให้เข้ากันได้กับ Kotlin
1.6.0
เวอร์ชัน 1.1.0-beta03
17 พฤศจิกายน 2021
androidx.compose.animation:animation:1.1.0-beta03, androidx.compose.animation:animation-core:1.1.0-beta03 และ androidx.compose.animation:animation-graphics:1.1.0-beta03 เปิดตัวแล้ว เวอร์ชัน 1.1.0-beta03 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เพิ่มตัวแก้ไข Modifier.onPlaced ใหม่เพื่อให้สังเกตการเปลี่ยนแปลงการวางได้ ดังนั้นจึงสามารถทำการเปลี่ยนแปลงเพิ่มเติมในออฟเซ็ตของตัวปรับแต่งย่อยได้ตาม การเปลี่ยนแปลงตำแหน่งที่สังเกตได้ (I558fd)
รองรับ contentKey ในการเฟดข้ามเพลงใหม่ ระบบภาพเคลื่อนไหวจะใช้ ContentKey เพื่อตรวจสอบความเท่าเทียมกัน ดังนั้น คุณจึงทำการเปรียบเทียบความแตกต่างของสถานะที่กำหนดเองได้โดยการระบุ contentKey ที่เหมาะสมสำหรับสถานะต่างๆ
นอกจากนี้ ระบบจะใช้ ContentKey เป็นคีย์สำหรับบันทึกและกู้คืนเนื้อหาด้วย (I2e055, b/197907070)
เวอร์ชัน 1.1.0-beta02
3 พฤศจิกายน 2021
androidx.compose.animation:animation:1.1.0-beta02, androidx.compose.animation:animation-core:1.1.0-beta02 และ androidx.compose.animation:animation-graphics:1.1.0-beta02 เปิดตัวแล้ว เวอร์ชัน 1.1.0-beta02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- API ภาพเคลื่อนไหวใหม่สำหรับการสนับสนุนเครื่องมือ กล่าวคือ ช่วยให้เครื่องมือตรวจสอบภาพเคลื่อนไหวและการกำหนดค่าใน ทรานซิชันได้ (I4116e)
เวอร์ชัน 1.1.0-beta01
27 ตุลาคม 2021
androidx.compose.animation:animation:1.1.0-beta01, androidx.compose.animation:animation-core:1.1.0-beta01 และ androidx.compose.animation:animation-graphics:1.1.0-beta01 เปิดตัวแล้ว เวอร์ชัน 1.1.0-beta01 มีการคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- API ภาพเคลื่อนไหวใหม่สำหรับการสนับสนุนเครื่องมือ กล่าวคือ ช่วยให้เครื่องมือตรวจสอบภาพเคลื่อนไหวและการกำหนดค่าใน ทรานซิชันได้ (I4116e)
เวอร์ชัน 1.1.0-alpha06
13 ตุลาคม 2021
androidx.compose.animation:animation:1.1.0-alpha06, androidx.compose.animation:animation-core:1.1.0-alpha06 และ androidx.compose.animation:animation-graphics:1.1.0-alpha06 เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha06 มีคอมมิตเหล่านี้
เวอร์ชัน 1.1.0-alpha05
29 กันยายน 2021
androidx.compose.animation:animation:1.1.0-alpha05, androidx.compose.animation:animation-core:1.1.0-alpha05 และ androidx.compose.animation:animation-graphics:1.1.0-alpha05 เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha05 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
EnterTransition,ExitTransitionและ API บางส่วนของAnimatedVisibilityได้รับการอัปเดตให้เสถียรแล้วMutableTransitionState.isIdleไม่ใช่ฟีเจอร์ทดลองอีกต่อไป (I5072d)การเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้อง: ระบบได้ย้าย Lambda ในโรงงาน Enter/ExitTransition ไปยังตำแหน่งสุดท้ายในรายการพารามิเตอร์แล้ว (I5072d)
เวอร์ชัน 1.1.0-alpha04
15 กันยายน 2021
androidx.compose.animation:animation:1.1.0-alpha04, androidx.compose.animation:animation-core:1.1.0-alpha04 และ androidx.compose.animation:animation-graphics:1.1.0-alpha04 เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha04 มีคอมมิตเหล่านี้
เวอร์ชัน 1.1.0-alpha03
1 กันยายน 2021
androidx.compose.animation:animation:1.1.0-alpha03, androidx.compose.animation:animation-core:1.1.0-alpha03 และ androidx.compose.animation:animation-graphics:1.1.0-alpha03 เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha03 มีคอมมิตต่อไปนี้
ฟีเจอร์ใหม่
- อัปเดต Compose
1.1.0-alpha03ให้ขึ้นอยู่กับ Kotlin1.5.30(I74545)
เวอร์ชัน 1.1.0-alpha02
18 สิงหาคม 2021
androidx.compose.animation:animation:1.1.0-alpha02, androidx.compose.animation:animation-core:1.1.0-alpha02 และ androidx.compose.animation:animation-graphics:1.1.0-alpha02 เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha02 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้ StartOffset รองรับใน repeatable และ infiniteRepeatable แล้ว ซึ่งเป็นวิธีหน่วงเวลาเริ่มต้นหรือ กรอภาพเคลื่อนไหวไปข้างหน้าก่อนที่ภาพเคลื่อนไหวจะเริ่ม ออฟเซ็ตเริ่มต้นนี้จะไม่ซ้ำกัน (Ic679f, b/195079908)
- การเปลี่ยนฉากเข้า/ออกใหม่สำหรับสเกล ใช้ร่วมกับ การเปลี่ยนฉากเข้า/ออกประเภทอื่นๆ ได้ (I372da, b/191325593)
เวอร์ชัน 1.1.0-alpha01
4 สิงหาคม 2021
androidx.compose.animation:animation:1.1.0-alpha01, androidx.compose.animation:animation-core:1.1.0-alpha01 และ androidx.compose.animation:animation-graphics:1.1.0-alpha01 เปิดตัวแล้ว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
AnimatedImageVectorและ API ที่เกี่ยวข้องจะอยู่ในโมดูลใหม่androidx.compose.animation:animation-graphics(I60873)
การแก้ไขข้อบกพร่อง
- ย้าย
InfiniteAnimationPolicyไปยัง :compose:ui (I5eb09, b/160602714)
รุ่น 1.0
เวอร์ชัน 1.0.5
3 พฤศจิกายน 2021
androidx.compose.animation:animation:1.0.5 และ androidx.compose.animation:animation-core:1.0.5 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.5 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- แก้ไขข้อขัดข้องในการติดตามอินสแตนซ์ derivedStateOf (aosp/1792247)
เวอร์ชัน 1.0.4
13 ตุลาคม 2021
androidx.compose.animation:animation:1.0.4 และ androidx.compose.animation:animation-core:1.0.4 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.4 มีคอมมิตเหล่านี้
การอัปเดตทรัพยากร Dependency
- อัปเดตให้ขึ้นอยู่กับ Kotlin
1.5.31
เวอร์ชัน 1.0.3
29 กันยายน 2021
androidx.compose.animation:animation:1.0.3 และ androidx.compose.animation:animation-core:1.0.3 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.3 มีคอมมิตเหล่านี้
การอัปเดตทรัพยากร Dependency
- อัปเดตให้ขึ้นอยู่กับ Kotlin
1.5.30
เวอร์ชัน 1.0.2
1 กันยายน 2021
androidx.compose.animation:animation:1.0.2 และ androidx.compose.animation:animation-core:1.0.2 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.2 มีคอมมิตเหล่านี้
อัปเดตเพื่อรองรับการเปิดตัว Compose 1.0.2 Compose 1.0.2 ยังคงใช้ได้กับ Kotlin 1.5.21
เวอร์ชัน 1.0.1
4 สิงหาคม 2021
androidx.compose.animation:animation:1.0.1 และ androidx.compose.animation:animation-core:1.0.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.1 มีคอมมิตเหล่านี้
การอัปเดตทรัพยากร Dependency
- อัปเดตให้ขึ้นอยู่กับ Kotlin
1.5.21
เวอร์ชัน 1.0.0
28 กรกฎาคม 2021
androidx.compose.animation:animation:1.0.0 และ androidx.compose.animation:animation-core:1.0.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้
ฟีเจอร์หลักของเวอร์ชัน 1.0.0
นี่คือ Compose เวอร์ชันเสถียรเวอร์ชันแรก โปรดดูรายละเอียดเพิ่มเติมในบล็อกการเปิดตัว Compose อย่างเป็นทางการ
ปัญหาที่ทราบ
หากคุณใช้ Android Studio Bumblebee Canary 4 หรือ AGP
7.1.0-alpha04/7.1.0-alpha05คุณอาจพบข้อขัดข้องต่อไปนี้java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"หากต้องการแก้ไข ให้เพิ่ม minSdkVersion เป็น 24 ขึ้นไปชั่วคราวในไฟล์
build.gradleปัญหานี้จะได้รับการแก้ไขใน Android Studio Bumblebee และ AGP7.1เวอร์ชันถัดไป (b/194289155)
เวอร์ชัน 1.0.0-rc02
14 กรกฎาคม 2021
androidx.compose.animation:animation:1.0.0-rc02 และ androidx.compose.animation:animation-core:1.0.0-rc02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-rc02 มีคอมมิตเหล่านี้
เวอร์ชัน 1.0.0-rc01
1 กรกฎาคม 2021
androidx.compose.animation:animation:1.0.0-rc01 และ androidx.compose.animation:animation-core:1.0.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-rc01 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- ย้าย
InfiniteAnimationPolicyไปยังandroidx.compose.ui:ui(I5eb09, b/160602714) แล้ว
เวอร์ชัน 1.0.0-beta09
16 มิถุนายน 2021
androidx.compose.animation:animation:1.0.0-beta09 และ androidx.compose.animation:animation-core:1.0.0-beta09 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta09 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
AnimatedContentComposable ใหม่ โดยจะจัดการการเปลี่ยนแปลงเนื้อหาโดยใช้ContentTransformที่ปรับแต่งได้เมื่อเนื้อหาเป้าหมายใหม่เข้ามาและเนื้อหาเริ่มต้นออกไป คุณสามารถใช้การเปลี่ยนเข้า และการเปลี่ยนออกแบบต่างๆ เพื่อสร้างรูปลักษณ์และความรู้สึกที่กำหนดเองได้ ในส่วนของการเปลี่ยนเนื้อหาAnimatedContentจะเคลื่อนไหวขนาดโดยอัตโนมัติให้ตรงกับเนื้อหาที่เข้ามา (I2c3df)- นำ
ManualFrameClockออกแล้ว หากต้องการควบคุมภาพเคลื่อนไหว ให้ใช้composeTestRule.mainClockแทน (I3c3e8, b/189951065)
เพิ่มกฎโปรไฟล์
รุ่นนี้เพิ่มกฎของโปรไฟล์ลงในโมดูลการเขียนต่อไปนี้ (I14ed6)
- androidx.compose.animation
- androidx.compose.animation-core
- androidx.compose.foundation
- androidx.compose.foundation-layout
- androidx.compose.material
- androidx.compose.material-ripple
- androidx.compose.runtime
- androidx.compose.ui
- androidx.compose.ui.geometry
- androidx.compose.ui.graphics
- androidx.compose.ui.text
- androidx.compose.ui.text
- androidx.compose.ui.unit
- androidx.compose.ui.util
กฎของโปรไฟล์คืออะไร
กฎโปรไฟล์สำหรับไลบรารีจะระบุไว้ในไฟล์ข้อความ
baseline-prof.txtซึ่งอยู่ในไดเรกทอรีsrc/mainหรือไดเรกทอรีที่เทียบเท่า ไฟล์จะระบุกฎต่อบรรทัด โดยในกรณีนี้กฎคือรูปแบบสำหรับการจับคู่กับเมธอดหรือคลาสในไลบรารี ไวยากรณ์ของกฎเหล่านี้เป็นซูเปอร์เซ็ตของรูปแบบโปรไฟล์ ART ที่มนุษย์อ่านได้ ซึ่งใช้เมื่อใช้adb shell profman --dump-classes-and-methods ...กฎเหล่านี้มี 2 รูปแบบเพื่อกำหนดเป้าหมายไปยังเมธอดหรือคลาสกฎของเมธอดจะมีรูปแบบต่อไปนี้
<FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>และกฎของชั้นเรียนจะมีรูปแบบดังนี้
<CLASS_DESCRIPTOR>โดย
<FLAGS>คืออักขระH,SและPอย่างน้อย 1 ตัวเพื่อระบุว่าควรติดป้ายกำกับเมธอดนี้เป็น "มาแรง" "สตาร์ทอัป" หรือ "หลังสตาร์ทอัป" หรือไม่<CLASS_DESCRIPTOR>คือตัวอธิบายสำหรับคลาสที่เมธอดเป้าหมายเป็นของ เช่น คลาสandroidx.compose.runtime.SlotTableจะมีตัวอธิบายเป็นLandroidx/compose/runtime/SlotTable;<METHOD_SIGNATURE>คือลายเซ็นของเมธอด ซึ่งรวมถึงชื่อ ประเภทพารามิเตอร์ และประเภทการคืนค่าของเมธอด เช่น เมธอดfun isPlaced(): BooleanในLayoutNodeมีลายเซ็นisPlaced()Zรูปแบบเหล่านี้มีไวลด์การ์ด (
**,*และ?) ได้เพื่อให้กฎเดียวครอบคลุมหลายวิธีหรือหลายคลาส
กฎมีหน้าที่อะไร
เมธอดที่มีแฟล็ก
Hแสดงว่าเมธอดนี้เป็นเมธอด "ยอดนิยม" และควรคอมไพล์ล่วงหน้าเมธอดที่มีแฟล็ก
Sแสดงว่าเป็นเมธอดที่เรียกใช้เมื่อเริ่มต้น และควรคอมไพล์ล่วงหน้าเพื่อหลีกเลี่ยงค่าใช้จ่ายในการคอมไพล์และตีความเมธอดเมื่อเริ่มต้นเมธอดที่มีแฟล็ก
Pแสดงว่าเป็นเมธอดที่เรียกใช้หลังจากเริ่มต้นคลาสที่มีอยู่ในไฟล์นี้บ่งบอกว่ามีการใช้คลาสดังกล่าวในระหว่างการเริ่มต้นระบบ และควรจัดสรรล่วงหน้าในฮีปเพื่อหลีกเลี่ยงค่าใช้จ่ายในการโหลดคลาส
ระบบนี้ทำงานอย่างไร
- ไลบรารีสามารถกำหนดกฎเหล่านี้ซึ่งจะรวมอยู่ในอาร์ติแฟกต์ AAR เมื่อสร้างแอปที่มีอาร์ติแฟกต์เหล่านี้ ระบบจะผสานกฎเหล่านี้เข้าด้วยกันและใช้กฎที่ผสานแล้วเพื่อสร้างโปรไฟล์ ART แบบไบนารีขนาดกะทัดรัดที่เฉพาะเจาะจงสำหรับแอปนั้นๆ จากนั้น ART จะใช้ประโยชน์จากโปรไฟล์นี้เมื่อติดตั้งแอปในอุปกรณ์เพื่อคอมไพล์ล่วงหน้าซึ่งเป็นชุดย่อยที่เฉพาะเจาะจงของแอปพลิเคชันเพื่อปรับปรุงประสิทธิภาพของแอปพลิเคชัน โดยเฉพาะการเรียกใช้ครั้งแรก โปรดทราบว่าการดำเนินการนี้จะไม่มีผลกับแอปพลิเคชันที่แก้ไขข้อบกพร่องได้
เวอร์ชัน 1.0.0-beta08
2 มิถุนายน 2021
androidx.compose.animation:animation:1.0.0-beta08 และ androidx.compose.animation:animation-core:1.0.0-beta08 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta08 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- ตอนนี้
detectDragGesures,detectVerticalGesturesและdetectHorizontalGesturesจะใช้การเปลี่ยนแปลงตำแหน่งโดยอัตโนมัติ คุณจึงไม่จำเป็นต้องเรียกใช้ change.consumePositionChange ในการเรียกกลับ onDrag (I42fc4, b/185096350, b/187320697) Modifier.onGloballyPositioned()เปลี่ยนเป็นรายงานพิกัดของตัวแก้ไขนี้ในเชนตัวแก้ไข ไม่ใช่พิกัดเลย์เอาต์หลังจากใช้ตัวแก้ไขทั้งหมด ซึ่งหมายความว่าตอนนี้ลำดับของตัวแก้ไขจะส่งผลต่อพิกัดที่จะรายงาน (Ieb67d, b/177926591)
เวอร์ชัน 1.0.0-beta07
18 พฤษภาคม 2021
androidx.compose.animation:animation:1.0.0-beta07 และ androidx.compose.animation:animation-core:1.0.0-beta07 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta07 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
AnimatedVisibilityAPI ใหม่ที่รองรับการระบุระดับการมองเห็นในMutableTransitionStateนอกจากนี้ยังช่วยให้สังเกตสถานะภาพเคลื่อนไหวภายนอกAnimatedVisibilityผ่านcurrentStateและisIdleได้ด้วย- การสนับสนุนการเปลี่ยนเพศสำหรับเด็กรายใหม่ใน Transition
- รองรับภาพเคลื่อนไหวการเปลี่ยนเข้า/ออกที่กำหนดเองใน AnimatedVisibility โดยใช้ AnimationScope.transition
- ตัวแก้ไข animateEnterExit ใหม่ที่เข้าถึงได้สำหรับองค์ประกอบย่อยทั้งหมดของ AnimatedVisibility
- เลิกใช้งาน AnimatedVisibility API ที่ใช้
initiallyVisibleพารามิเตอร์ (I702f3)
เวอร์ชัน 1.0.0-beta06
5 พฤษภาคม 2021
androidx.compose.animation:animation:1.0.0-beta06 และ androidx.compose.animation:animation-core:1.0.0-beta06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta06 มีคอมมิตต่อไปนี้
เวอร์ชัน 1.0.0-beta05
21 เมษายน 2021
androidx.compose.animation:animation:1.0.0-beta05 และ androidx.compose.animation:animation-core:1.0.0-beta05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta05 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- ตอนนี้ไฟล์ AndroidManifest จาก ui-test-manifest และ ui-tooling-data สามารถใช้งานร่วมกับ Android 12 ได้แล้ว (I6f9de, b/184718994)
เวอร์ชัน 1.0.0-beta04
7 เมษายน 2021
androidx.compose.animation:animation:1.0.0-beta04 และ androidx.compose.animation:animation-core:1.0.0-beta04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เราได้นำอินสแตนซ์สาธารณะของ
RowScope,ColumnScope,BoxScope,BoxWithConstraintsScopeออกแล้ว (I4e83e, b/181869067)
เวอร์ชัน 1.0.0-beta03
24 มีนาคม 2021
androidx.compose.animation:animation:1.0.0-beta03 และ androidx.compose.animation:animation-core:1.0.0-beta03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta03 มีคอมมิตเหล่านี้
เวอร์ชัน 1.0.0-beta02
10 มีนาคม 2021
androidx.compose.animation:animation:1.0.0-beta02 และ androidx.compose.animation:animation-core:1.0.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta02 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- บังคับใช้ข้อจำกัดในการใช้งาน API เวอร์ชันทดลองแบบสาธารณะ (I6aa29, b/174531520)
เวอร์ชัน 1.0.0-beta01
24 กุมภาพันธ์ 2021
androidx.compose.animation:animation:1.0.0-beta01 และ androidx.compose.animation:animation-core:1.0.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-beta01 มีคอมมิตเหล่านี้
นี่คือรุ่นแรกของ Compose 1.0.0 Beta
การเปลี่ยนแปลง API
InteractionStateถูกแทนที่ด้วย[Mutable]InteractionSourceแล้ว- อินเทอร์เฟซมีหน้าที่รับผิดชอบในการปล่อย / รวบรวมเหตุการณ์การโต้ตอบ
- ใช้
interactionSource = remember { MutableInteractionSource() }แทนการส่งinteractionState = remember { InteractionState() }ไปยังคอมโพเนนต์ เช่นButtonและModifier.clickable() - แทนที่จะใช้
Interaction.Pressed in interactionStateคุณควรใช้ฟังก์ชันส่วนขยายใน InteractionSource แทน เช่น InteractionSource.collectIsPressedAsState() - สำหรับกรณีการใช้งานที่ซับซ้อน คุณสามารถใช้ InteractionSource.interactions เพื่อสังเกตสตรีมของการโต้ตอบได้ ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบและตัวอย่างของ InteractionSource
- (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
- เปลี่ยนแพ็กเกจของเมธอด smoothScrollBy และ scrollBy เป็น
androidx.compose.foundation.gestures.*(I3f7c1, b/175294473) - มีการเปลี่ยนชื่อตัวแก้ไขขนาด เปลี่ยนชื่อ Modifier.width/height/size เป็น requiredWidth/requiredHeight/requiredSize เราเปลี่ยนชื่อ Modifier.preferredWidth/preferredHeight/preferredSize เป็น width/height/size (I5b414)
- เราได้ย้ายการปฐมนิเทศไปไว้ในแพ็กเกจพื้นฐานแล้ว VelocityTracker ย้ายจาก ui.gesture ไปยัง ui.input.pointer (Iff4a8, b/175294473)
- เราได้นำ AnimationClockObservable และคลาสย่อยออกแล้ว นำ AnimatedFloat ออกแล้ว (Icde52, b/177457083)
- ตอนนี้ Modifier.draggable ยอมรับ DraggableState แทนที่จะเป็น Lambda แบบง่ายๆ แล้ว คุณสามารถสร้างสถานะผ่าน
rememberDraggableState { delta -> }เพื่อให้ได้ลักษณะการทำงานแบบเดิม (Ica70f, b/175294473) - animate, animatedValue, AnimatedValue APIs have been removed (If27bc, b/177457083)
- นำ AnimationEndReason.Interrupted ออกแล้ว CancellationException จะเกิดขึ้นหากภาพเคลื่อนไหวถูกขัดจังหวะ (I2cbbc, b/179695417)
- เราได้นำ TargetAnimation API ออกแล้ว (If47d1, b/177457083)
เวอร์ชัน 1.0.0-alpha12
10 กุมภาพันธ์ 2021
androidx.compose.animation:animation:1.0.0-alpha12 และ androidx.compose.animation:animation-core:1.0.0-alpha12 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha12 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
Modifier.pointerInputตอนนี้ต้องใช้คีย์ remember เพื่อระบุ เมื่อควรเริ่มโครูทีนการตรวจหาอินพุตของเคอร์เซอร์ใหม่สำหรับ การอ้างอิงใหม่ (I849cd)- เปลี่ยนชื่อ Bounds เป็น DpRect (I4b32a)
- รวมชื่อพารามิเตอร์สำหรับ AnimationSpec เป็น animationSpec ในระบบภาพเคลื่อนไหว นอกจากนี้ ให้จำกัด Enter/ExitTransition ให้ยอมรับ FiniteAnimationSpec ด้วย (Ie47c5, b/177457083)
- ตอนนี้ Animatable.snapTo และ Animatable.stop เป็นฟังก์ชันที่ระงับแล้ว (If4288)
- เช่นเดียวกับที่เราเคยนำ
state { 0 }composable ออกและตอนนี้ส่งเสริมการใช้งานอย่างremember { mutableStateOf(0) }เราจะนำsavedInstanceState { 0 }composable ออก คุณควรใช้rememberSaveable { mutableStateOf(0) }แทน และระบบจะบันทึกและกู้คืนโดยอัตโนมัติหากจัดเก็บประเภทที่ใช้ภายใน MutableState ไว้ใน Bundle ได้ หากก่อนหน้านี้คุณส่งออบเจ็กต์โปรแกรมประหยัดที่กำหนดเอง ตอนนี้คุณต้องใช้การโอเวอร์โหลดใหม่ของ rememberSaveable ซึ่งมีพารามิเตอร์stateSaverการใช้งานจะมีลักษณะดังนี้val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) }(Ib4c26, b/177338004) - อัปเดตลายเซ็นของเมธอด Crossfade ให้สอดคล้องกับระบบภาพเคลื่อนไหวอื่นๆ มากขึ้น (Ib05ed, b/177457083)
- เปลี่ยนชื่อ rememberSavedInstanceState() เป็น rememberSaveable() และย้ายไปยังแพ็กเกจ androidx.compose.runtime.saveable (I1366e, b/177338004)
- เปลี่ยนชื่อ RestorableStateHolder เป็น SaveableStateHolder และย้ายไปยังแพ็กเกจ androidx.compose.runtime.saveable เปลี่ยนชื่อเมธอดภายใน RestorableStateProvider เป็น SaveableStateProvider ระบบนำประเภททั่วไปออกเพื่อให้คุณส่ง Any เป็นคีย์ได้ ไม่จำเป็นต้องใช้คำอธิบายประกอบเวอร์ชันทดลองอีกต่อไป (I0902e, b/174598702)
- อัปเดต Modifier.animateContentSize API ให้สอดคล้องกับ ระบบภาพเคลื่อนไหวอื่นๆ (I0bf75, b/177457083)
- ตอนนี้เราเลิกใช้งาน AnimatedValue/Float แล้ว โปรดใช้ Animatable แทน (I71345, b/177457083)
- เลิกใช้งาน tapGestureFilter, doubleTapGestureFilter, longPressGestureFilter และ pressIndicaitonGestureFilter แล้ว โปรดใช้ Modifier.clickable หรือ Modifier.pointerInput กับฟังก์ชัน detectTapGestures แทน (I6baf9, b/175294473)
- เปิดตัวองค์ประกอบบริบทโครูทีน
InfiniteAnimationPolicyที่จะใช้ในภาพเคลื่อนไหวแบบไม่มีที่สิ้นสุด โดยค่าเริ่มต้น ระบบจะไม่ติดตั้งนโยบายใดๆ ยกเว้นเมื่อเรียกใช้การทดสอบด้วยComposeTestRule(I50ec4, b/151940543) - เราได้นำเมธอด Destructuring และ copy() ออกจาก คลาสหลายคลาสซึ่งไม่ค่อยมีการใช้งาน (I26702, b/178659281)
- ตอนนี้เวลาเล่นในภาพเคลื่อนไหวจะรวมเป็นหน่วยนาโนวินาที (If776a)
- ตอนนี้เราเลิกใช้งานอาร์ติแฟกต์ compose:runtime-dispatch แล้ว ตอนนี้ MonotonicFrameClock อยู่ใน compose:runtime และ AndroidUiDispatcher อยู่ใน compose:ui (Ib5c36)
- เพิ่ม
Animation.isInfiniteและVectorizedAnimationSpec.isInfiniteที่ส่งสัญญาณว่าภาพเคลื่อนไหว เป็นแบบวนซ้ำหรือไม่ ซึ่งสามารถใช้ในการติดตั้งใช้งานภาพเคลื่อนไหวเพื่อ จัดการภาพเคลื่อนไหวดังกล่าวเป็นพิเศษ เช่น อาจแสดงข้อความพิเศษ "เวลา ที่เหลือ" หรือในระหว่างการทดสอบ อาจยกเลิกภาพเคลื่อนไหว เพื่อป้องกันไม่ให้รอการไม่มีการใช้งานโดยไม่มีกำหนด (Iebb05, b/151940543) - ใช้ Long แทน Uptime เป็นประเภทเวลาของภาพเคลื่อนไหว (Ie3aa7, b/177420019)
เวอร์ชัน 1.0.0-alpha11
28 มกราคม 2021
androidx.compose.animation:animation:1.0.0-alpha11 และ androidx.compose.animation:animation-core:1.0.0-alpha11 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha11 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เลิกใช้งานการเปลี่ยนตาม TransitionDefinition แล้ว (I0ac57)
- เพิ่มฟิลด์ป้ายกำกับสำหรับทรานซิชัน และภาพเคลื่อนไหวขององค์ประกอบย่อยเพื่อแสดงในเครื่องมือ (I619fb)
- ตอนนี้ animateAsState คือ animateFooAsState โดยที่ Foo คือ ประเภทของตัวแปรที่กำลังเคลื่อนไหว เช่น Float, Dp, Offset ฯลฯ (Ie7e25)
- InfiniteTransition ใหม่ที่เรียกใช้ภาพเคลื่อนไหวของ องค์ประกอบย่อยได้ไม่จำกัดจำนวน (I1da81)
- เปลี่ยนอินเทอร์เฟซพารามิเตอร์แบบมีสถานะของ Material ให้มีฟังก์ชัน @Composable ที่แสดงผล
State<T>เพิ่ม Animatable.asState() เพื่อให้แปลง Animatable เป็น State ได้ง่ายขึ้น นอกจากนี้ ยังเปลี่ยน animateElevation ให้เป็นส่วนขยายระงับใน Animatable ด้วย (If613c)
การแก้ไขข้อบกพร่อง
- onCommit, onDispose และ onActive ถูกเลิกใช้งานแล้วเพื่อรองรับ SideEffect และ DisposableEffect API (If760e)
- ตอนนี้รองรับสถานะเริ่มต้นใน updateTransition แล้ว (Ifd51d)
- เพิ่มพารามิเตอร์คำอธิบายเนื้อหาลงในรูปภาพและไอคอนแล้ว ใช้เพื่ออธิบายบริการการช่วยเหลือพิเศษ (I2ac4c)
- ตอนนี้เราเลิกใช้งาน invalidate และ compositionReference() แล้ว และแนะนำให้ใช้ currentRecomposeScope และ rememberCompositionReference แทนตามลำดับ (I583a8)
- เราจะแทนที่ระยะเวลาและระยะเวลาทำงานด้วยมิลลิวินาทีแบบยาว และขั้นตอนนี้จะนำทรัพยากร Dependency ของอินพุต Pointer ในคลาสเหล่านั้นออก (Ia33b2, b/175142755, b/177420019)
- ตอนนี้คุณสร้างองค์ประกอบที่คลิกได้ สลับได้ และเลือกได้ภายนอก Composition ได้แล้ว (I0a130, b/172938345, b/175294473)
- เปลี่ยนการค่อยๆ เปลี่ยนเป็นการลดความเร็วแบบฟังก์ชัน (Ib14e5)
items(count: Int)เมธอด Factory ใหม่สำหรับขอบเขตของ LazyColumn/LazyRow/LazyVerticalGrid ตอนนี้items(items: List)และitemsIndexed(items: List)เป็นฟังก์ชันส่วนขยายแล้ว คุณจึงต้องนําเข้าด้วยตนเองเมื่อใช้งาน การโอเวอร์โหลดส่วนขยายใหม่สำหรับอาร์เรย์: items(items: Array) และ itemsIndexed(Array) (I803fc, b/175562574)- ใช้ประโยชน์จาก TestCoroutineDispatcher ในการทดสอบ (I532b6)
- นำ PointerInputData ออกและแก้ไข PointerInputChange เพื่อให้มีฟิลด์ทั้งหมดของ PointerInputData ทำให้ PointerInputEvent และ PointerInputEventData เป็นแบบภายในเนื่องจากไม่ได้ใช้ใน API สาธารณะใดๆ (Ifff97, b/175142755)
เวอร์ชัน 1.0.0-alpha10
13 มกราคม 2021
androidx.compose.animation:animation:1.0.0-alpha10 และ androidx.compose.animation:animation-core:1.0.0-alpha10 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha10 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- แก้ไขความเร็วให้มีส่วนประกอบและการดำเนินการทางคณิตศาสตร์ (Ib0447)
- เปลี่ยนชื่อ
@ExperimentalTestingเป็น@ExperimentalTestApiเพื่อให้สอดคล้องกับคำอธิบายประกอบ API ทดลองที่คล้ายกัน (Ia4502, b/171464963) - เปลี่ยนชื่อตำแหน่งเป็น DpOffset และนำ getDistance() ออก (Ib2dfd)
- นำ Any.identityHashCode() API สาธารณะออก (I025d7)
การแก้ไขข้อบกพร่อง
- API ใหม่ที่ใช้โครูทีน
Animatableซึ่งรับประกันการแยกกันโดยเด็ดขาด ระหว่างภาพเคลื่อนไหว DecayAnimationSpec ใหม่เพื่อรองรับภาพเคลื่อนไหวแบบลดทอนหลายมิติ (I820f2, b/168014930) - ตอนนี้
animate()ถูกแทนที่ด้วยanimateAsState()ซึ่งจะแสดงผลเป็นState<T>แทนTซึ่งจะช่วยให้ประสิทธิภาพดีขึ้น เนื่องจากสามารถจำกัดขอบเขตการลบล้างให้แคบลง ในตำแหน่งที่อ่านค่าสถานะ (Ib179e)
เวอร์ชัน 1.0.0-alpha09
16 ธันวาคม 2020
androidx.compose.animation:animation:1.0.0-alpha09 และ androidx.compose.animation:animation-core:1.0.0-alpha09 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha09 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- ย้าย Dp.VectorConverter, Position.VectorConverter ฯลฯ ไปยัง animation-core และเลิกใช้งาน VectorConveters เก่า (If0c4b)
- เปิดตัวชุด API การเปลี่ยนฉากใหม่ทั้งหมดพร้อมด้วย ความสะดวกในการใช้งานที่ดียิ่งขึ้น รวมถึงรองรับภาพเคลื่อนไหวที่เพิ่มแบบไดนามิกและเป้าหมายภาพเคลื่อนไหวที่คำนวณแบบไดนามิก เราทำเครื่องหมาย API นี้ว่าอยู่ในขั้นทดลองเพื่อให้แยกความแตกต่างจาก API ที่อิงตาม TransitionDefinition ได้ง่าย (Ia7fe3)
การแก้ไขข้อบกพร่อง
- ตอนนี้ Lambda ในตัวปรับออฟเซ็ตจะแสดงผล IntOffset แทน Float (Ic9ee5, b/174137212, b/174146755)
- เลิกใช้งาน LazyColumnFor, LazyRowFor, LazyColumnForIndexed และ LazyRowForIndexed ใช้ LazyColumn และ LazyRow แทน (I5b48c)
- สำหรับ API การป้อนข้อมูลด้วย Pointer ที่ระงับการทำงาน ให้เปลี่ยนชื่อ HandlePointerInputScope เป็น AwaitPointerEventScope และ handlePointerInput() เป็น awaitPointerEventScope() (Idf0a1, b/175142755)
- ฟังก์ชัน infiniteRepeatable ใหม่สำหรับสร้าง InfiniteRepeatableSpec (I668e5)
- นำคำอธิบายประกอบ ExperimentalPointerInput ออกแล้ว (Ia7a24)
เวอร์ชัน 1.0.0-alpha08
2 ธันวาคม 2020
androidx.compose.animation:animation:1.0.0-alpha08 และ androidx.compose.animation:animation-core:1.0.0-alpha08 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha08 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เพิ่มการตรวจสอบ Lint สำหรับการตั้งชื่อและตำแหน่งของพารามิเตอร์ Lambda ที่ใช้ร่วมกันได้ เพื่อตรวจสอบความสอดคล้องกับหลักเกณฑ์ของ Compose
นอกจากนี้ ยังย้ายข้อมูล API บางรายการโดยใช้
childrenเป็นชื่อสำหรับ Lambda ต่อท้ายเป็นcontentตามการตรวจสอบ Lint และคำแนะนำ (Iec48e) - ระบบได้นำ API ที่เลิกใช้งานไปก่อนหน้านี้ออกแล้ว ดังนี้
Modifier.onPositionedถูกนำออกแล้ว โปรดใช้Modifier.onGloballyPositionedModifier.onDrawถูกนำออกแล้ว โปรดใช้Modifier.onDrawBehindModifier.plusถูกนำออกแล้ว โปรดใช้Modifier.thenColor.Unsetถูกนำออกแล้ว โปรดใช้Color.Unspecified- ระบบนำคลาส
PxBoundsออกแล้ว โปรดใช้Rectแทน - (Ie9d02, b/172562222)
- เพิ่มตัวเลือกชั่วคราวเพื่อให้ MonotonicFrameClock ขับเคลื่อน TestAnimationClock ได้ (I1403b, b/173402197)
การแก้ไขข้อบกพร่อง
- เปลี่ยนชื่อ Modifier.drawLayer เป็น Modifier.graphicsLayer นอกจากนี้ยังอัปเดตคลาสที่เกี่ยวข้องเป็น GraphicsLayer ตาม ความคิดเห็นจากสภา API (I0bd29, b/173834241)
- เพิ่ม Modifier.scale/rotate
APIs เพื่ออำนวยความสะดวกสำหรับ drawLayer
- เปลี่ยนชื่อ Modifier.drawOpacity เป็น Modifier.alpha
- เปลี่ยนชื่อ Modifier.drawShadow เป็น Modifier.shadow (I264ca, b/173208140)
- ทำให้ฟิลด์เวลาทำงานและตำแหน่งของ PointerInputData ต้องระบุค่า (Id468a)
- เปลี่ยนชื่อตัวแก้ไข offsetPx เป็น offset ตอนนี้ฟังก์ชันเหล่านี้รับพารามิเตอร์ Lambda แทน State แล้ว (Ic3021, b/173594846)
- API ใหม่สำหรับการเรียกใช้ภาพเคลื่อนไหวในโครูทีน (Ied662)
- เลิกใช้งานแอมเบียนต์ที่เลิกใช้งานแล้วซึ่งมี
Ambientเป็นคำต่อท้าย และแทนที่ด้วยพร็อพเพอร์ตี้ใหม่ที่ขึ้นต้นด้วย Ambient ตามหลักเกณฑ์อื่นๆ ของ Ambient และ Compose API (I33440) - การควบคุมเวลาในการทดสอบ (TestAnimationClock และการใช้งาน) อยู่ในระยะทดลองแล้ว (I6ef86, b/171378521)
- นำโมดูล ui-test เก่าและ Stub ออก (I3a7cb)
- ฟังก์ชัน
RestorableStateHolder.withRestorableStateเปลี่ยนชื่อเป็นRestorableStateProvider(I66640) - เราได้อัปเดตอินเทอร์เฟซการจัดแนวและทำให้ใช้งานได้ (I46a07, b/172311734)
เวอร์ชัน 1.0.0-alpha07
11 พฤศจิกายน 2020
androidx.compose.animation:animation:1.0.0-alpha07 และ androidx.compose.animation:animation-core:1.0.0-alpha07 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตเหล่านี้
การแก้ไขข้อบกพร่อง
- เลิกใช้งาน AmbientTextStyle, ProvideTextStyle และ AmbientContentColor แล้ว ให้ใช้เวอร์ชันใหม่ที่มีอยู่ในไลบรารี Material แทน สำหรับแอปพลิเคชันที่ไม่ใช่ Material คุณควรสร้างระบบการออกแบบของคุณเองแทน โดยเฉพาะอย่างยิ่งการกำหนดธีมที่เฉพาะเจาะจงซึ่งสามารถใช้ในคอมโพเนนต์ของคุณเองได้ (I74acc, b/172067770)
- เลิกใช้งาน foundation.Text แล้วและแทนที่ด้วย material.Text ดู API ข้อความพื้นฐานที่ไม่แสดงความคิดเห็นซึ่งไม่ได้ใช้ค่าจากธีมได้ที่ androidx.compose.foundation.BasicText (If64cb)
- ย้าย MeasureResult ออกจาก MeasureScope (Ibf96d, b/171184002)
- มีการย้ายสัญลักษณ์ที่เกี่ยวข้องกับเลย์เอาต์หลายรายการจาก androidx.compose.ui ไปยัง androidx.compose.layout.ui (I0fa98, b/170475424)
เวอร์ชัน 1.0.0-alpha06
28 ตุลาคม 2020
androidx.compose.animation:animation:1.0.0-alpha06 และ androidx.compose.animation:animation-core:1.0.0-alpha06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
- เปิดใช้การเปลี่ยนฉากใน ComposeTestRule นำตัวเลือกในการ เปิดใช้เคอร์เซอร์กะพริบออกจาก ComposeTestRule (If0de3)
เวอร์ชัน 1.0.0-alpha05
14 ตุลาคม 2020
androidx.compose.animation:animation:1.0.0-alpha05 และ androidx.compose.animation:animation-core:1.0.0-alpha05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- อินเทอร์เฟซและคลาสย่อยของภาพเคลื่อนไหวใหม่: คลาสเหล่านี้ จัดเก็บเงื่อนไขเริ่มต้นและสิ้นสุดของภาพเคลื่อนไหว และด้วยเหตุนี้ จึงอนุญาตให้ค้นหามูลค่าและความเร็วผ่านเวลาเล่นเท่านั้น (Ie95bd, b/163329867)
การแก้ไขข้อบกพร่อง
- เปลี่ยนชื่อ OnPositionedModifier เป็น OnGloballyPositionedModifier และเปลี่ยนชื่อ onPositioned() เป็น onGloballyPositioned() (I587e8, b/169083903)
เลิกใช้งาน API contentColor() และ currentTextStyle() แล้วแทนที่ด้วย AmbientContentColor และ AmbientTextStyle ตามลำดับ คุณเข้าถึงค่าปัจจุบันได้โดยใช้
.currentในพร็อพเพอร์ตี้โดยรอบ เช่นเดียวกับพร็อพเพอร์ตี้โดยรอบอื่นๆ การเปลี่ยนแปลงนี้มีขึ้นเพื่อให้สอดคล้องกันและเพื่อหลีกเลี่ยงการมีหลายวิธีในการทําสิ่งเดียวกัน นอกจากนี้ ยังเปลี่ยนชื่อพร็อพเพอร์ตี้โดยรอบบางรายการเพื่ออธิบายวัตถุประสงค์ได้ดียิ่งขึ้น ดังนี้- ContentColorAmbient -> AmbientContentColor
- TextStyleAmbient -> AmbientTextStyle
- IndicationAmbient -> AmbientIndication
- EmphasisAmbient -> AmbientEmphasisLevels
- RippleThemeAmbient -> AmbientRippleTheme (I37b6d)
เวอร์ชัน 1.0.0-alpha04
1 ตุลาคม 2020
androidx.compose.animation:animation:1.0.0-alpha04 และ androidx.compose.animation:animation-core:1.0.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ใส่คำอธิบายประกอบ rootAnimationClockFactory, transitionsEnabled, blinkingCursorEnabled และ textInputServiceFactory ด้วย @VisibleForTesting เพื่อให้เป็น API ภายในและซ่อน KDoc (I554eb, b/168308412)
การแก้ไขข้อบกพร่อง
- อัปเดต Graphics API หลายรายการ
- อัปเดต API การแปลงขนาดและการหมุน เพื่อใช้พารามิเตอร์ออฟเซ็ตเดียว เพื่อแสดงพิกัดจุดหมุน แทนพารามิเตอร์ลอยแยกกัน สำหรับพิกัด x/y ใน DrawScope และ DrawTransform
- นำเมธอด Rect.expandToInclude และ Rect.join ออกแล้ว
- อัปเดตเอกสารประกอบเกี่ยวกับรัศมีให้ระบุว่าวงรี นอกเหนือจากวงกลม
- เพิ่มเอกสารเพื่อระบุว่าไม่ควรเรียกใช้ตัวสร้างสาธารณะสำหรับคลาส Radius แบบอินไลน์โดยตรง แต่ควรสร้างออบเจ็กต์ Radius ผ่านตัวสร้างฟังก์ชันของออบเจ็กต์แทน
- นำ API RoundRect ออกเพื่อค้นหา topRight, bottomRight, bottomCenter ฯลฯ
- เลิกใช้ Rect.shift เพื่อใช้ Rect.translate
- นำ API RoundRect.grow และ Rect.shrink ออกแล้ว
- เปลี่ยนชื่อ RoundRect.outerRect เป็น Rect.boundingRect
- นำเมธอด RoundRect.middleRect/tallMiddleRect/wideMiddleRect และ Rect.isStadium ออก
- เปลี่ยนชื่อ RoundRect.longestSide เป็น RoundRect.maxDimension
- เปลี่ยนชื่อ RoundRect.shortestSide เป็น RoundRect.minDimension
- เปลี่ยน RoundRect.center ให้เป็นพร็อพเพอร์ตี้แทนที่จะเป็นฟังก์ชัน
- อัปเดตตัวสร้าง RoundRect เพื่อใช้พร็อพเพอร์ตี้ Radius แทนพารามิเตอร์แต่ละรายการสำหรับค่ารัศมี x/y
- นำ API ขนาดที่ถือว่าเป็นสี่เหลี่ยมผืนผ้าที่มี ต้นทางที่ 0,0 ออกแล้ว
- เพิ่ม API การทำลายลงใน Radius
- ย้ายฟังก์ชันส่วนขยาย RoundRect ต่างๆ ไปเป็น พร็อพเพอร์ตี้แทน
- (I8f5c7, b/168762961)
- เลิกใช้งาน foundation.Box แล้ว โปรดใช้ foundation.layout.Box แทน (Ie5950, b/167680279)
- เปลี่ยนชื่อ Stack เป็น Box แล้ว ระบบจะเลิกใช้งาน Box ที่มีอยู่ก่อนหน้านี้เพื่อรองรับ Box ใหม่ใน compose.foundation.layout ลักษณะการทำงานของ Box ใหม่คือการวางองค์ประกอบย่อยซ้อนกันเมื่อมีองค์ประกอบย่อยหลายรายการ ซึ่งแตกต่างจาก Box ก่อนหน้าซึ่งทำงานคล้ายกับคอลัมน์ (I94893, b/167680279)
- เลิกใช้งานพารามิเตอร์การตกแต่งกล่องแล้ว หากต้องการตกแต่ง/เว้นที่ว่างในช่อง ให้ใช้ตัวแก้ไขแทน (Modifier.background, Modifier.border, Modifier.padding) (Ibae92, b/167680279)
- เราป้องกันการนำเข้าแบบคงที่ของเนื้อหาขอบเขตเลย์เอาต์ (เช่น alignWithSiblings ใน RowScope) คุณควรใช้ขอบเขตที่ชัดเจนแทน ดังนี้
with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }(I216be, b/166760797)
เวอร์ชัน 1.0.0-alpha03
16 กันยายน 2020
androidx.compose.animation:animation:1.0.0-alpha03 และ androidx.compose.animation:animation-core:1.0.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้
การแก้ไขข้อบกพร่อง
- การใช้งานแรงโน้มถ่วงได้รับการเปลี่ยนชื่ออย่างสม่ำเสมอเป็น "การจัดแนว" หรือ "การจัดตำแหน่ง" ใน Layout API (I2421a, b/164077038)
เวอร์ชัน 1.0.0-alpha02
2 กันยายน 2020
androidx.compose.animation:animation:1.0.0-alpha02 และ androidx.compose.animation:animation-core:1.0.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตต่อไปนี้
การเปลี่ยนแปลง API
เพิ่ม
ManualFrameClock.hasAwaitersเพื่อดูว่ามีอะไรที่รอเฟรมจากนาฬิกานั้นหรือไม่runWithManualClockเป็นตัวแทนของrunBlockingเมื่อเรียกใช้การทดสอบที่ต้องใช้ ManualFrameClockTestUiDispatcher.Mainซึ่งช่วยให้เข้าถึงตัวจัดส่ง UI หลักในการทดสอบได้ง่ายเช่น
@Test fun myTest() = runWithManualClock { clock -> // set some compose content withContext(TestUiDispatcher.Main) { clock.advanceClock(1000L) } if (clock.hasAwaiters) { println("The clock has awaiters") } else { println("The clock has no more awaiters") } }
การแก้ไขข้อบกพร่อง
onPreCommit ถูกเลิกใช้งานแล้ว ตอนนี้ onCommit มีลักษณะการทำงานของ onPreCommit
ตอนนี้ onCommit และ onActive จะทํางานในเฟรม Choreographer เดียวกัน ซึ่งการเปลี่ยนแปลงองค์ประกอบจะได้รับการคอมมิตในเฟรมนั้นแทนที่จะเป็นที่จุดเริ่มต้นของเฟรม Choreographer ถัดไป (I70403)
เวอร์ชัน 1.0.0-alpha01
26 สิงหาคม 2020
androidx.compose.animation:animation:1.0.0-alpha01 และ androidx.compose.animation:animation-core:1.0.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตเหล่านี้
เวอร์ชัน 0.1.0-dev
เวอร์ชัน 0.1.0-dev17
19 สิงหาคม 2020
androidx.compose.animation:animation:0.1.0-dev17 และ androidx.compose.animation:animation-core:0.1.0-dev17 ได้รับการเผยแพร่แล้ว เวอร์ชัน 0.1.0-dev17 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
การเปลี่ยนแปลง API
- ออฟเซ็ตกลายเป็นคลาสอินไลน์ (Iaec70)
- ตอนนี้ IntOffset เป็นคลาสแบบอินไลน์แล้ว (Iac0bf)
- ตอนนี้ IntSize เป็นคลาสแบบอินไลน์ (I2bf42) แล้ว
AnimatedVisibilty composable จะเคลื่อนไหวการปรากฏ และการหายไปของเนื้อหาขององค์ประกอบย่อย
เราได้เปิดตัว EnterTransition และ ExitTransition เพื่อให้ทำงานร่วมกับ Composable ของ AnimatedVisibilty เพื่อให้ภาพเคลื่อนไหวการปรากฏและการหายไป 3 ประเภท ได้แก่ เฟด สไลด์ และขยาย/ย่อเนื้อหา คุณสามารถรวมภาพเคลื่อนไหวประเภทต่างๆ เพื่อสร้างรูปลักษณ์ที่ปรับแต่งได้มากขึ้น (Idda11)
เลิกใช้ PxBounds ใน Rect อัปเดตการใช้งานทั้งหมด ของ PxBounds ด้วย rect และเพิ่ม คำอธิบายประกอบที่เลิกใช้งาน/แทนที่อย่างเหมาะสม เพื่อช่วยในการ ย้ายข้อมูล (I37038, b/162627058)
การแก้ไขข้อบกพร่อง
- เราเปลี่ยนชื่อ
PlacementScope.placeAbsolute()เป็นPlacementScope.place()และเปลี่ยนชื่อPlacementScope.place()ก่อนหน้าเป็นPlacementScope.placeRelative()ด้วยเหตุนี้ วิธีPlacementScope.place()จะไม่สะท้อนตำแหน่งในบริบทจากขวาไปซ้ายโดยอัตโนมัติอีกต่อไป หากต้องการใช้ฟีเจอร์นี้ ให้ใช้PlacementScope.placeRelative()แทน (I873ac, b/162916675) - ตอนนี้เราเลิกใช้งาน
state { ... }Composable แล้วเพื่อเปลี่ยนไปใช้ การเรียกremember { mutableStateOf(...) }อย่างชัดเจนเพื่อความชัดเจน ซึ่งจะช่วยลดพื้นผิว API โดยรวมและจำนวนแนวคิดสำหรับการจัดการสถานะ และตรงกับรูปแบบby mutableStateOf()สำหรับการมอบสิทธิ์พร็อพเพอร์ตี้ของคลาส (Ia5727)
เวอร์ชัน 0.1.0-dev16
5 สิงหาคม 2020
androidx.compose.animation:animation:0.1.0-dev16 และ androidx.compose.animation:animation-core:0.1.0-dev16 ได้รับการเผยแพร่แล้ว เวอร์ชัน 0.1.0-dev16 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้คุณเข้าถึงตัวแปลงเวกเตอร์ในตัวเพื่อแปลงหน่วยในตัวได้แล้วผ่าน
Foo.VectorConverterเช่นDp.VectorConverter,Color.VectorConverter,Float.VectorConverterเป็นต้น (I3e273) - รองรับเครื่องมือฟังที่สิ้นสุดใน
Modifier.animateContentSize()เพื่อให้เมื่อภาพเคลื่อนไหวการเปลี่ยนขนาดเสร็จสิ้น ระบบจะแจ้งให้เครื่องมือฟัง ทราบพร้อมกับขนาดเริ่มต้น/สิ้นสุดของภาพเคลื่อนไหว (I277b2) - ตัวแก้ไข animateContentSize ใหม่ที่เคลื่อนไหว การเปลี่ยนแปลงขนาดเลย์เอาต์ของตัวแก้ไขย่อย (Ieffdc)
เพิ่ม
MonotonicFrameAnimationClockที่ช่วยให้คุณใช้ MonotonicFrameClock เป็นAnimationClockObservableเพื่อเชื่อมช่องว่าง ระหว่างนาฬิกาและ API ใหม่ที่อิงตามโครูทีนกับนาฬิกาเก่าที่ยังใช้ นาฬิกาที่อิงตามการเรียกกลับตอนนี้
MonotonicFrameClockเทียบเท่ากับManualAnimationClockคือManualFrameClock(I111c7, b/161247083)
การแก้ไขข้อบกพร่อง
- เราได้อัปเดต API สำหรับการรองรับจากขวาไปซ้ายแล้ว เพิ่ม LayoutDirectionAmbient ซึ่งใช้เพื่ออ่านและเปลี่ยนทิศทางการจัดวางได้ นำ Modifier.rtl และ Modifier.ltr ออกแล้ว (I080b3)
- ต้องระบุประเภท T อย่างชัดแจ้ง สำหรับ transitionDefinition (I1aded)
- แพ็กเกจ foundation.shape.corner ถูกทำให้แบนเป็น foundation.share (I46491, b/161887429)
- เลิกใช้งาน Modifier.plus แล้ว โปรดใช้ Modifier.then แทน คำว่า "จากนั้น" มีสัญญาณการเรียงลำดับที่ชัดเจนกว่า และยังห้ามพิมพ์
Modifier.padding().background() + anotherModifierซึ่งจะทำให้การอ่านยากขึ้น (Iedd58, b/161529964) - เปลี่ยนชื่อ Modifier.drawBackground เป็น Modifier.background (I13677)
เวอร์ชัน 0.1.0-dev15
22 กรกฎาคม 2020
androidx.compose.animation:animation:0.1.0-dev15 และ androidx.compose.animation:animation-core:0.1.0-dev15 ได้รับการเผยแพร่แล้ว เวอร์ชัน 0.1.0-dev15 มีคอมมิตต่อไปนี้
การอัปเดตการขึ้นต่อกัน
- หากต้องการใช้ Compose เวอร์ชัน
0.1.0-dev15คุณจะต้องอัปเดตการอ้างอิง ตามข้อมูลโค้ดใหม่ที่แสดงด้านบนในส่วนการประกาศการอ้างอิง
การเปลี่ยนแปลง API
- เราได้เปลี่ยน Transition API ให้แสดงผล TransitionState แทนการส่ง TransitionState ไปยังองค์ประกอบย่อย ซึ่งจะทำให้ API สอดคล้องกับ API ของ animate() มากขึ้น (I24e38)
- เพิ่มพารามิเตอร์ตัวแก้ไขสำหรับครอสเฟด (I87cfe, b/159706180)
- ใช้ AnimationSpec แทน AnimationBuilder ใน API ระดับบนสุด
เพื่ออธิบายแนวคิดของการระบุภาพเคลื่อนไหวแบบคงที่
- ปรับปรุง DSL การเปลี่ยนผ่านโดยนำข้อกำหนดของ Lambda สำหรับ การสร้าง AnimationSpec เช่น Tween, Spring ออก แต่จะใช้พารามิเตอร์ของเครื่องมือสร้างโดยตรงแทน
- ปรับปรุงความสะดวกในการใช้งาน AnimationSpec โดยรวมด้วยการเปิดตัว คอนสตรัคเตอร์แทนการพึ่งพาบิลเดอร์
- เปลี่ยนระยะเวลาและความล่าช้าสำหรับ KeyFrames และ Tween เป็น Int ซึ่งจะช่วยลดการแคสต์ประเภทที่ไม่จำเป็นและการโอเวอร์โหลดเมธอด (เพื่อรองรับทั้ง Long และ Int) (Ica0b4)
- แทนที่การใช้งาน IntPx ด้วย Int แทนที่ IntPxPosition ด้วย IntOffset แทนที่ IntPxSize ด้วย IntSize (Ib7b44)
- เพื่อรวมจำนวนคลาสที่ใช้แสดงข้อมูลการปรับขนาด ให้ใช้คลาส Size แทน PxSize ซึ่งจะช่วยให้ได้รับประโยชน์ จากคลาสอินไลน์เพื่อใช้ประโยชน์จาก Long ในการแพ็กค่า Float 2 ค่าเพื่อแสดง ความกว้างและความสูงที่แสดงเป็น Float (Ic0191)
- เพื่อรวมจำนวนคลาสที่ใช้เพื่อแสดงข้อมูลการวางตำแหน่ง ให้ใช้คลาส Offset แทน PxPosition ซึ่งจะให้ประโยชน์ ของคลาสอินไลน์เพื่อใช้ประโยชน์จาก Long เพื่อแพ็กค่า Float 2 ค่าเพื่อแสดงออฟเซ็ต x และ y ที่แสดงเป็น Float (I3ad98)
- แทนที่การใช้งานคลาส Px ในคลาส Compose ต่างๆ ซึ่งเป็นส่วนหนึ่งของความพยายามในการปรับโครงสร้างขนาดใหญ่ เพื่อใช้เฉพาะ Dp และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล (I086f4)
- เพิ่มการรองรับ animate() สำหรับ Dp, Px, Size, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds และ AnimationVector (Ib7518)
- ตอนนี้ Crossfade ยอมรับพารามิเตอร์ AnimationBuilder ที่ไม่บังคับเพื่อให้กำหนดค่าภาพเคลื่อนไหวได้แล้ว (I6d6e0)
- แทนที่การใช้ Color ที่อนุญาตให้เป็น Null ทั้งหมดใน API ด้วย ที่ไม่ใช่ Null และใช้ Color.Unset แทน Null (Iabaa7)
- นำคลาส ValueHolder ออกแล้ว ปรับโครงสร้างคลาส AnimatedValue, AnimatedFloat เพื่อ
ทำให้ฟิลด์ค่าภาพเคลื่อนไหวเป็นนามธรรมเพื่อให้คลาสย่อยสามารถดูการอัปเดตค่าได้
- เพิ่มคลาสโมเดลสำหรับ AnimatedValue, AnimatedFloat ฯลฯ
- เพิ่มชุด API @Composable แบบน้ำหนักเบาชุดใหม่สำหรับการเปลี่ยนค่าแบบเคลื่อนไหว (I79530)
- การเปลี่ยนแปลงที่ไม่รองรับการทำงานย้อนหลังใน Ambient API ดูรายละเอียดได้ในบันทึกและเอกสารประกอบของ
Ambient<T>(I4c7ee, b/143769776) - โหมดเล่นซ้ำใหม่: ย้อนกลับ โหมดนี้จะย้อนกลับการทำซ้ำก่อนหน้าเมื่อภาพเคลื่อนไหวซ้ำใน RepeatableSpec หรือ VectorizedRepeatableSpec (Ibe0f5)
- การเพิ่ม API ลงใน ManualAnimationClock:
hasObservers: Booleanและพารามิเตอร์ของเครื่องมือสร้างdispatchOnSubscribe: Boolean(Iaa134) - เพิ่ม API สำหรับรับขอบเขตต่ำสุด/สูงสุดใน AnimatedFloat (Icd9cc)
การแก้ไขข้อบกพร่อง
- เปลี่ยนชื่อเป็น
runOnIdle(I83607)runOnIdleCompose - เราได้เปลี่ยนชื่อ API สำหรับการทดสอบหลายรายการเพื่อให้ใช้งานง่ายขึ้น API ทั้งหมด findXYZ เปลี่ยนชื่อเป็น onNodeXYZ แล้ว API ทั้งหมดที่ขึ้นต้นด้วย doXYZ ได้รับการเปลี่ยนชื่อเป็น performXYZ (I7f164)
- เปิดตัว API ภาพเคลื่อนไหวแบบไม่เก็บสถานะระดับต่ำ API เหล่านี้ (I63bf7)
- Composable ของ Recompose ไม่ใช่การแยกส่วนที่มีประโยชน์อีกต่อไป การจัดองค์ประกอบใหม่ส่วนใหญ่ควรเกิดขึ้นจากการกำหนด MutableState หากต้องการดำเนินการอื่นๆ นอกเหนือจากนี้ เราขอแนะนำให้คุณใช้
invalidateฟังก์ชันเพื่อทริกเกอร์การจัดองค์ประกอบขอบเขตปัจจุบันใหม่ (Ifc992) - แทนที่การใช้งานคลาส Px ในคลาส Compose ต่างๆ ซึ่งเป็นส่วนหนึ่งของความพยายามในการปรับโครงสร้างขนาดใหญ่เพื่อใช้เฉพาะ Dp และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล ลบคลาส Px ทั้งหมด (I3ff33)
- แทนที่การใช้คลาส Px ในคลาส Compose ต่างๆ ซึ่งเป็นส่วนหนึ่งของความพยายามในการปรับโครงสร้างขนาดใหญ่เพื่อใช้เฉพาะ Dp และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล (Id3434)
- ตอนนี้ครอสเฟดใช้ค่าเริ่มต้นเป็น Null ได้แล้ว (Iad6a4, b/155947711)
- แทนที่การใช้คลาส Px ในคลาส Compose ต่างๆ ซึ่งเป็นส่วนหนึ่งของความพยายามในการปรับโครงสร้างโค้ดครั้งใหญ่เพื่อใช้เฉพาะ Dp และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล (I19d02)
- การใช้งาน CanvasScope ที่รวมกัน ตอนนี้จึงมีเพียง DrawScope และ ContentDrawScope เปลี่ยนชื่อ CanvasScope เป็น DrawScope อัปเดต DrawScope เพื่อใช้ Density interface และจัดเตรียม LayoutDirection Deleted DrawScope subclass ใน ContentDrawScope Painter และ PainterModifier ได้รับการอัปเดต เพื่อไม่ให้รักษาพร็อพเพอร์ตี้ RTL ด้วยตนเองอีกต่อไป เนื่องจาก DrawScope มีพร็อพเพอร์ตี้นี้อยู่แล้ว โดยไม่ต้องระบุด้วยตนเอง (I1798e)
- อัปเดต API Compose ระดับสูงขึ้น ซึ่งแสดง Canvas เพื่อ แสดง CanvasScope แทน ซึ่งจะช่วยลดความจำเป็นที่ผู้บริโภคต้องดูแลออบเจ็กต์ Paint ของตนเอง สำหรับผู้บริโภคที่ยังคงต้องเข้าถึง Canvas สามารถใช้วิธีการส่วนขยาย drawCanvas ซึ่งมีแฮนเดิลการเรียกกลับเพื่อออก คำสั่งวาดภาพด้วย Canvas พื้นฐาน (I80afd)
- เพิ่มพารามิเตอร์ verticalGravity และ horizontalGravity ลงใน Row และ Column ตามลำดับ (I7dc5a)
- เปลี่ยนชื่อโมดูล ui-text เป็น ui-text-core (I57dec)
- ปรับปรุง DrawModifier API ดังนี้
- สร้างขอบเขตตัวรับสำหรับ draw() ContentDrawScope
- นำพารามิเตอร์ทั้งหมดใน draw() ออก
- DrawScope มีอินเทอร์เฟซเหมือนกับ CanvasScope รุ่นก่อน
- ContentDrawScope มีเมธอด drawContent() (Ibaced, b/152919067)
runOnIdleComposeและrunOnUiThreadตอนนี้เป็นฟังก์ชันส่วนกลาง แทนที่จะเป็นเมธอดใน ComposeTestRule (Icbe8f)- ย้ายตัวดำเนินการมอบสิทธิ์พร็อพเพอร์ตี้ [Mutable]State ไปยังส่วนขยาย
เพื่อรองรับการเพิ่มประสิทธิภาพการมอบสิทธิ์พร็อพเพอร์ตี้ Kotlin 1.4 ผู้โทรต้องเพิ่ม
imports เพื่อใช้
by state { ... }หรือby mutableStateOf(...)ต่อไป (I5312c) - เลิกใช้งาน ColoredRect แล้ว ให้ใช้
Box(Modifier.preferredSize(width, height).drawBackground(color))แทน (I499fa, b/152753731) - แทนที่ตัวแก้ไขและตัวดำเนินการด้วยฟังก์ชันส่วนขยายของโรงงาน (I225e4)
- เลิกใช้งาน Composable ของ Center แล้ว ควรแทนที่ด้วยตัวแก้ไข LayoutSize.Fill + LayoutAlign.Center หรือด้วย Composable Box หรือ Stack รายการใดรายการหนึ่งที่มีตัวแก้ไขที่เหมาะสม (Idf5e0)
- เปลี่ยนชื่อ LayoutFlexible เป็น LayoutWeight เปลี่ยนชื่อพารามิเตอร์ "แน่น" เป็น "เติม" (If4738)
- ฟังก์ชันที่ประกอบกันได้ Opacity ถูกแทนที่ ด้วยตัวแก้ไข drawOpacity (I5fb62)
- การทดสอบที่ใช้ AndroidComposeTestRule จะมีนาฬิกาภาพเคลื่อนไหว ที่รูทของ Composition ซึ่งช่วยให้หยุดชั่วคราว กลับมาทำงานต่อ และเลื่อนไปข้างหน้าด้วยตนเองได้ (Id54c5)
- รองรับทิศทางจากขวาไปซ้ายในตัวแก้ไข LayoutPadding (I9e8da)
- เราได้รวม Density และ DensityScope ไว้ในอินเทอร์เฟซเดียว ตอนนี้คุณใช้ DensityAmbient.current แทน ambientDensity() ได้แล้ว แทนที่จะใช้ withDensity(density) ให้ใช้ with(density) (I11cb1)
- เพิ่มวิธีการคัดลอกไปยัง
คลาสประเภทต่างๆ ในบรรทัด ซึ่งรวมถึง
- ออฟเซ็ต
- ขนาด
- รัศมี
- การเคลื่อนไหว
- TransformOrigin
- เลิกใช้งานเมธอดออบเจ็กต์คู่ของ Size.copy เพื่อใช้เมธอดสำเนาอินสแตนซ์แทน (Ife290, b/159905651)
- ย้าย androidx.compose.ViewComposer ไปยัง androidx.ui.node.UiComposer
นำ androidx.compose.Emittable ออกแล้ว เนื่องจากซ้ำกับ ComponentNode.
androidx.compose.ViewAdapters จึงถูกนำออก ซึ่งเป็นกรณีการใช้งานที่ไม่รองรับอีกต่อไป
เลิกใช้งาน Compose.composeInto แล้ว โปรดใช้
setContentหรือsetViewContentแทน เลิกใช้งาน Compose.disposeComposition แล้ว โปรดใช้เมธอดdisposeในCompositionที่setContentส่งคืนแทน androidx.compose.Compose.subcomposeInto ย้ายไปที่ androidx.ui.core.subcomposeInto แล้ว เปลี่ยนชื่อ ComponentNode#emitInsertAt เป็น ComponentNode#insertAt แล้ว เปลี่ยนชื่อ ComponentNode#emitRemoveAt เป็น ComponentNode#removeAt แล้ว เปลี่ยนชื่อ ComponentNode#emitMode เป็น ComponentNode#move แล้ว (Idef00)