เขียนภาพเคลื่อนไหว
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(ดูเอกสารอ้างอิง API สำหรับแพ็กเกจการเขียนทั้งหมด)
อัปเดตล่าสุด | รุ่นที่เสถียร | ตัวเลือกถอนการอ้างสิทธิ์ | รุ่นเบต้า | รุ่นอัลฟ่า |
---|---|---|---|---|
7 สิงหาคม 2024 | 1.6.8 | - | 1.7.0-เบต้า 07 | - |
โครงสร้าง
การเขียนเป็นการรวมรหัสกลุ่ม Maven 7 รายการภายใน androidx
แต่ละกลุ่ม
มีชุดย่อยของฟังก์ชันเป้าหมาย โดยแต่ละฟังก์ชันมีชุดรุ่นของตัวเอง
หมายเหตุ
ตารางนี้จะอธิบายกลุ่มและลิงก์ไปยังบันทึกประจำรุ่นแต่ละชุด
กลุ่ม | คำอธิบาย |
---|---|
compose.animation | สร้างภาพเคลื่อนไหวในแอปพลิเคชัน Jetpack Compose เพื่อยกระดับประสบการณ์ของผู้ใช้ |
compose.compiler | แปลงฟังก์ชัน @Composable และเปิดใช้การเพิ่มประสิทธิภาพด้วยปลั๊กอินคอมไพเลอร์ Kotlin |
compose.foundation | เขียนแอปพลิเคชัน Jetpack Compose ด้วยองค์ประกอบสำคัญที่พร้อมใช้งานและขยายพื้นฐานเพื่อสร้างชิ้นงานของระบบการออกแบบของคุณเอง |
compose.material | สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ดีไซน์ Material ที่พร้อมใช้งาน นี่คือจุดแรกเข้าของ Compose ในระดับที่สูงขึ้น ซึ่งออกแบบมาเพื่อมอบคอมโพเนนต์ที่ตรงกับคอมโพเนนต์ที่อธิบายไว้ใน www.material.io |
compose.material3 | สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design 3 ซึ่งเป็นการพัฒนาครั้งใหม่ของดีไซน์ Material Material 3 ประกอบด้วยธีมและคอมโพเนนต์ที่อัปเดตใหม่ และฟีเจอร์การปรับเปลี่ยนในแบบของคุณของ Material You เช่น สีแบบไดนามิก ทั้งยังออกแบบมาให้สอดคล้องกับสไตล์ภาพและ UI ของระบบใหม่ของ Android 12 |
compose.runtime | องค์ประกอบพื้นฐานพื้นฐานของโมเดลการเขียนโปรแกรมและการจัดการสถานะของ Compose และรันไทม์หลักของปลั๊กอิน Compose Compiler ที่จะกำหนดเป้าหมาย |
compose.ui | องค์ประกอบพื้นฐานของ UI การเขียนที่จำเป็นสำหรับการโต้ตอบกับอุปกรณ์ ซึ่งรวมถึงเลย์เอาต์ การวาดภาพ และการป้อนข้อมูล |
การประกาศทรัพยากร Dependency
หากต้องการเพิ่มทรัพยากร Dependency ใน Compose คุณต้องเพิ่มที่เก็บ Google Maven ไปยัง อ่านที่เก็บ Maven ของ Google เพื่อดูข้อมูลเพิ่มเติม
เพิ่มทรัพยากร Dependency สำหรับอาร์ติแฟกต์ที่คุณต้องการในไฟล์ build.gradle
สำหรับ
ในแอปหรือโมดูล
ดึงดูด
dependencies { implementation "androidx.compose.animation:animation:1.6.8" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.animation:animation:1.6.8") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
ดูข้อมูลเพิ่มเติมเกี่ยวกับทรัพยากร Dependency ได้ที่หัวข้อเพิ่มการอ้างอิงของบิลด์
ความคิดเห็น
ความคิดเห็นของคุณช่วยปรับปรุง Jetpack ให้ดียิ่งขึ้น โปรดแจ้งให้เราทราบหากคุณพบปัญหาใหม่หรือมี ไอเดียในการปรับปรุงไลบรารีนี้ โปรดดูที่ ปัญหาที่มีอยู่ ในไลบรารีนี้ก่อนที่จะสร้างใหม่ คุณสามารถเพิ่มการโหวตให้กับปัญหาที่มีอยู่ได้โดย คลิกปุ่มดาว
ดูเอกสารประกอบเกี่ยวกับเครื่องมือติดตามปัญหา เพื่อดูข้อมูลเพิ่มเติม
เวอร์ชัน 1.7
เวอร์ชัน 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
เพื่อเลือกระหว่างการปรับขนาดและการวัดอีกครั้ง ขณะนี้ API ของscaleIn/OutSharedContentToBounds
ก่อนหน้านี้เลิกใช้งานแล้ว (I0d41a)
การสนับสนุนภายนอก
SharedTransitionScope
เวอร์ชันทดลองเปลี่ยนเป็นอินเทอร์เฟซไม่ใช่คลาสแล้ว (Iaf856, b/338415048, b/338414702)
เวอร์ชัน 1.7.0-alpha08
1 พฤษภาคม 2024
ปล่อย androidx.compose.animation:animation-*:1.7.0-alpha08
แล้ว เวอร์ชัน 1.7.0-alpha08 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ปรับปรุง API
LookaheadScope
รายการให้เสถียรแล้ว (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
(ทศนิยม) ไปยัง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)
แก้ไขข้อบกพร่อง
- ปรับปรุงประสิทธิภาพของ
updateTransition
API
เวอร์ชัน 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
ชั่วคราวเนื่องจากต้องมองดูล่วงหน้า โดยจะพร้อมใช้งานเมื่อเปิด Lookahead โดยค่าเริ่มต้น หรือเลือกใช้ในรุ่นต่อๆ ไป
เวอร์ชัน 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 ทดลองแล้ว
แก้ไขข้อบกพร่อง
- เพิ่มการรองรับตัวแสดงผลสำหรับการไล่ระดับสีกวาดใน
ArcLine
(I4d5bb) - ใช้เท่ากับและแฮชโค้ดสำหรับ
PageSize.Fixed
(Ie3ede, b/300134276) - แก้ไขปัญหาความเข้ากันได้ของไบนารีที่มีการเปลี่ยนแปลง Window Inset (Iee695)
- นำเลเยอร์หลักของวัสดุสำหรับชิป/ปุ่ม Material3 ออก เนื่องจากการเปรียบเทียบย่อยจะแสดงประสิทธิภาพที่ดีกว่าหากไม่มีข้อมูลเหล่านี้ (I55555)
เวอร์ชัน 1.6.0-alpha08
18 ตุลาคม 2023
ปล่อย androidx.compose.animation:animation-*:1.6.0-alpha08
แล้ว เวอร์ชัน 1.6.0-alpha08 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- เลิกใช้งาน
KeyframesSpecConfig#with
ในการสนับสนุนKeyframesSpecConfig#using
ซึ่งรักษารูปแบบของเครื่องมือสร้างไว้ (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
เพื่อผสานรวมเข้ากับระบบ Lookahead โดยสมบูรณ์โดยการรายงานขนาดเป้าหมายใน Lookahead Pass
การเปลี่ยนแปลง API
- พร็อพเพอร์ตี้ใหม่ใน
IntrinsincMeasureScope
และการใช้งาน (เช่นMeasureScope
) เพื่อระบุว่าบัตรผ่าน Measurement Pass ในปัจจุบันเป็นบัตรผ่าน Lookahead หรือไม่ (I7a812)
แก้ไขข้อบกพร่อง
- นำการจัดสรรออกจากภาพเคลื่อนไหวฤดูใบไม้ผลิ (Ie9431)
- ชื่อพารามิเตอร์ค่าของ Enum.valueOf ที่เปลี่ยนแปลง (Ia9b89)
- ข้อยกเว้นอื่นๆ จากค่า enum (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
จาก true เป็น false ขณะโฟกัสอยู่ (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()
ไปยังประเภทเฉพาะที่เกี่ยวข้องสำหรับค่าพื้นฐานที่พร้อมใช้งาน รหัส 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
- ขณะนี้
AnimatedContent
รองรับContentKey
แล้ว เพื่อให้ควบคุมได้มากขึ้นว่าจะเปลี่ยนเมื่อใด (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
ฯลฯ) ทำงานกับภาพเคลื่อนไหว Lookahead ได้อย่างมีประสิทธิภาพ
การเปลี่ยนแปลง API
intermediateMeasurePolicy
เริ่มต้นแบบใหม่ที่นำนโยบายการวัดจาก Lookahead Pass มาใช้ซ้ำจะอนุญาตให้ประเภทย่อยSubcomposeLayout
ที่ไม่มีสล็อตแบบมีเงื่อนไข เช่นScaffold
,TabRow
และBoxWithConstraints
ทำงานร่วมกับ Lookahead ได้โดยค่าเริ่มต้น (Id84c8)- เปลี่ยนชื่อ Infix ความสนุกเป็น
togetherWith
สำหรับการรวมการเปลี่ยนเข้าและออกAnimatedContentScope
ใหม่เป็นผู้รับเนื้อหา lambda (Ic39ae)
เวอร์ชัน 1.5.0-alpha02
5 เมษายน 2023
ปล่อย androidx.compose.animation:animation-*:1.5.0-alpha02
แล้ว เวอร์ชัน 1.5.0-alpha02 มีคอมมิตเหล่านี้
ฟีเจอร์ใหม่
- API เวอร์ชันทดลองใหม่เพื่อรองรับ Lookahead ใน
SubcomposeLayout
การดำเนินการนี้จะช่วยให้SubcomposeLayout
ทำงานได้อย่างถูกต้องในLookaheadScope
การรองรับประเภทย่อยที่เฉพาะเจาะจงของSubcomposeLayout
เพิ่มเติมจะพร้อมใช้งานในเร็วๆ นี้
การเปลี่ยนแปลง API
- API ใหม่ของ
SubcomposeLayout
ที่ใช้นโยบายการวัดขั้นกลางเพิ่มเติมในการจัดการกับตรรกะการวัดผล/เลย์เอาต์ในระหว่าง ภาพเคลื่อนไหวที่อิงตามการมองไปข้างหน้า (I017d3)
เวอร์ชัน 1.5.0-alpha01
22 มีนาคม 2023
ปล่อย androidx.compose.animation:animation-*:1.5.0-alpha01
แล้ว เวอร์ชัน 1.5.0-alpha01 มีคอมมิตเหล่านี้
การเปลี่ยนแปลง API
- ตอนนี้ API ของ
AnimatedContent
ซึ่งมีเวอร์ชันเสถียรของ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
และการเปลี่ยน (เช่น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 โดยใช้กฎการเขียน ระบบจะไม่ส่งความต่อเนื่องที่ดำเนินการต่อในระหว่าง Callback
withFrameNanos
จนกว่า Callback ของเฟรมทั้งหมดจะทำงานเสร็จสิ้น ซึ่งจะตรงกับลักษณะการทำงานของการเขียนเมื่อทำงานตามปกติ อย่างไรก็ตาม การทดสอบที่อิงตามลักษณะการทำงานแบบเดิมอาจล้มเหลว การดำเนินการนี้ควรส่งผลกับโค้ดที่เรียกใช้withFrameNanos
หรือwithFrameMillis
โดยตรงเท่านั้น และมีตรรกะนอก Callback ที่ส่งผ่านไปยังฟังก์ชันเหล่านั้นซึ่งอาจต้องย้ายภายใน Callback ดูการเปลี่ยนแปลงในการทดสอบภาพเคลื่อนไหวในตัวอย่าง CL นี้ - เพิ่มพารามิเตอร์
onPerformTraversals: (Long) -> Unit
ที่ไม่บังคับลงในเครื่องมือสร้างTestMonotonicFrameClock
และฟังก์ชันจากโรงงานเพื่อเรียกใช้โค้ดหลัง CallbackwithFrameNanos
รายการ แต่ก่อนที่จะเรียกให้ผู้โทรกลับมาทำงานอีกครั้ง โครูทีน (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
ใหม่ที่รองรับ Lookahead Pass ก่อนการวัด/เลย์เอาต์จริง ซึ่งช่วยให้คำนวณเลย์เอาต์ล่วงหน้าได้เมื่อมีการเปลี่ยนแปลง แต่อนุญาตให้การวัด/รูปแบบหลังการดูใช้ขนาด/ตำแหน่งที่คำนวณไว้ล่วงหน้าเพื่อทำให้ขนาดและตำแหน่งเคลื่อนไหวไปยังเป้าหมาย ระบบยังไม่รองรับ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
- ตอนนี้อินเทอร์เฟซในไลบรารีการเขียนที่สร้างขึ้นโดยใช้เมธอดอินเทอร์เฟซเริ่มต้น 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
- อัปเดตการแยกวิเคราะห์ของเวกเตอร์ที่ถอนออกได้เพื่อรองรับการมิเรอร์อัตโนมัติเพื่อพลิกเนื้อหาของ
VectorPainter
หากทิศทางของเลย์เอาต์ปัจจุบันคือ RTL (I79cd9, b/185760237)
แก้ไขข้อบกพร่อง
- อัปเดต 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
- ไชโย! รองรับการเขียนภาพเคลื่อนไหวแล้ว "ระดับระยะเวลาของภาพเคลื่อนไหว" จากตัวเลือกของนักพัฒนาซอฟต์แวร์ (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)
การอัปเดตการขึ้นต่อกัน
- ตอนนี้ขึ้นอยู่กับ
1.6.10
ของ Kotlin
เวอร์ชัน 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 ซึ่งมีลักษณะการทำงานที่สอดคล้องกันหากใช้มุมมองและการเขียนผสมกัน การเปลี่ยนแปลงนี้ยังช่วยให้มั่นใจว่าเมื่อคุณสร้าง UI โดยใช้คอมโพเนนต์ Compose Material แล้ว จะเป็นไปตามข้อกำหนดขั้นต่ำสำหรับการช่วยเหลือพิเศษเป้าหมายการสัมผัส
- การสนับสนุนเสถียรสำหรับรางนำทาง
- เปลี่ยน 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 ใน Crossfade จะมีการใช้ 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
และบางส่วนของAnimatedVisibility
API ได้รับการปรับให้เสถียรแล้ว และMutableTransitionState.isIdle
ก็ไม่ใช่เวอร์ชันทดลองอีกต่อไปเช่นกัน (I5072D)การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบ: แลมบ์ดาในโรงงานเข้า/ออกทรานซิชัน ถูกย้ายไปยังตำแหน่งสุดท้ายในรายการพารามิเตอร์ (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 ในทำซ้ำและ ทำซ้ำได้ไม่สิ้นสุด โดยเป็นวิธียืดเวลาเริ่มต้น หรือ กรอภาพเคลื่อนไหวไปข้างหน้า ก่อนที่ภาพเคลื่อนไหวจะเริ่มต้น ออฟเซ็ตการเริ่มต้นนี้จะไม่ถูกทำซ้ำ (Ic679f, b/195079908)
- การเปลี่ยนเข้า/ออกใหม่สำหรับการปรับขนาด และใช้ร่วมกันได้ ด้วย Enter/ExitTransitions ประเภทอื่นๆ (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 มีคอมมิตเหล่านี้
การอัปเดตการขึ้นต่อกัน
- อัปเดตเป็น 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 มีคอมมิตเหล่านี้
การอัปเดตการขึ้นต่อกัน
- อัปเดตเป็น 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
เขียน 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 มีคอมมิตเหล่านี้
การอัปเดตการขึ้นต่อกัน
- อัปเดตเพื่อใช้ 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
AnimatedContent
ใหม่ที่เขียนได้ด้วย Compose จัดการเนื้อหาของตัวเอง เปลี่ยนโดยใช้ContentTransform
ที่ปรับแต่งได้เป็นเนื้อหาเป้าหมายใหม่ เข้าและเนื้อหาเริ่มต้นจะออก ชุดค่าผสมที่แตกต่างกันของ Enter และสามารถใช้ ออกจากการเปลี่ยน เพื่อสร้างรูปลักษณ์ที่กำหนดเอง และ ความรู้สึก ในการเปลี่ยนรูปแบบเนื้อหา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 ...
กฎเหล่านี้มี 1 ใน 2 รูปแบบเพื่อกำหนดเป้าหมายเมธอดหรือคลาสกฎของเมธอดจะมีรูปแบบต่อไปนี้
<FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
และกฎของชั้นเรียนจะมีรูปแบบต่อไปนี้
<CLASS_DESCRIPTOR>
<FLAGS>
คืออักขระอย่างน้อย 1 ตัว ได้แก่H
,S
และP
เพื่อระบุว่าควรแจ้งว่าเมธอดนี้เป็น "Hot", "Startup" หรือ "Post Startup" หรือไม่<CLASS_DESCRIPTOR>
เป็นตัวบ่งชี้คลาสของวิธีที่กำหนดเป้าหมาย เช่น คลาสandroidx.compose.runtime.SlotTable
จะมีตัวบ่งชี้Landroidx/compose/runtime/SlotTable;
<METHOD_SIGNATURE>
เป็นลายเซ็นของเมธอด ซึ่งจะมีชื่อ ประเภทพารามิเตอร์ และประเภทการคืนสินค้าของเมธอด ตัวอย่างเช่น เมธอดfun isPlaced(): Boolean
ในLayoutNode
มีลายเซ็นisPlaced()Z
รูปแบบเหล่านี้มีไวลด์การ์ดได้ (
**
,*
และ?
) เพื่อให้กฎเดียวครอบคลุมเมธอดหรือคลาสหลายรายการ
กฎเหล่านี้มีหน้าที่อะไร
เมธอดที่มีแฟล็ก
H
หมายความว่าเมธอดนี้เป็น "hot" และควรคอมไพล์ไว้ล่วงหน้าเมธอดที่มี Flag
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.conssumPositionChange ใน onDrag callbacks (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
AnimatedVisibility
API ใหม่ที่รองรับระดับการเข้าถึงที่จะระบุในMutableTransitionState
วิธีนี้ทำให้สถานะภาพเคลื่อนไหวสามารถ สังเกตภายนอกAnimatedVisibility
ผ่านcurrentState
และisIdle
- การสนับสนุนการเปลี่ยนย่อยใหม่ในรุ่นการเปลี่ยน
- รองรับการเคลื่อนไหวเมื่อเข้า/ออกที่กำหนดเองใน Animated visibility ได้ โดยใช้ AnimationScope.transition
- ไอคอน AnimateEnterExitตัวแก้ไขใหม่สามารถเข้าถึงได้สำหรับผู้เผยแพร่โฆษณาย่อยทั้งหมดของ การมองเห็นแบบเคลื่อนไหว
- เลิกใช้งาน Animated visibility 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 เบต้า
การเปลี่ยนแปลง API
- แทนที่
InteractionState
ด้วย[Mutable]InteractionSource
แล้ว- อินเทอร์เฟซมีหน้าที่ในการสร้าง / รวบรวมเหตุการณ์การโต้ตอบ
- แทนที่จะส่ง
interactionState = remember { InteractionState() }
ไปยังคอมโพเนนต์ เช่นButton
และModifier.clickable()
ให้ใช้interactionSource = remember { MutableInteractionSource() }
- คุณควรใช้ฟังก์ชันส่วนขยายใน InteractionSource แทน
Interaction.Pressed in interactionState
เช่น InteractionSource.collectIsPressedAsState() - สำหรับ Use Case ที่ซับซ้อน คุณสามารถใช้ InteractionSource.interactions เพื่อดูกระแสการโต้ตอบได้ ดูเอกสารประกอบและตัวอย่าง InteractionSource เพื่อดูข้อมูลเพิ่มเติม
- (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
- momothy ScrollBy และเมธอด ScrollBy แพ็กเกจเปลี่ยนเป็น
androidx.compose.foundation.gestures.*
(I3f7c1, b/175294473) - เปลี่ยนชื่อตัวปรับขนาดแล้ว เปลี่ยนชื่อ Modifier.width/height/size เป็น requiredWidth/requiredHeight/requiredSize แล้ว เปลี่ยนชื่อ Modifier.suggestedWidth/ใส่ความสูงของเนื้อหา/เลือกขนาดเป็นความกว้าง/ความสูง/ขนาด (I5B414)
- การวางแนวย้ายไปไว้ที่แพ็กเกจฐานแล้ว ย้าย VelocirtTracker จาก 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 API มี นำออกแล้ว (If27bc, b/177457083)
- AnimationEndREASON ถูกนำออกแล้ว CancelException หากมีการขัดจังหวะภาพเคลื่อนไหว (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
ต้องใช้แป้นจดจำเพื่อระบุ เมื่อใดที่ Coroutine ตรวจจับอินพุตตัวชี้ควรรีสตาร์ทสำหรับ ทรัพยากร Dependency (I849cd) - ขอบเขตเปลี่ยนชื่อเป็น DpRect (I4b32a)
- รวมชื่อพารามิเตอร์สำหรับ AnimationSpec เป็น AnthosSpec ทั่วทั้งระบบภาพเคลื่อนไหว จำกัด Enter/ExitTransition ด้วย เพื่อยอมรับ FiniteAnimationSpec (Ie47c5, b/177457083)
- ตอนนี้ Animatable.snapTo และ Animatable.stop ระงับฟังก์ชันแล้ว (If4288)
- เช่นเดียวกับที่เรานำ Composable ของ
state { 0 }
ออกก่อนหน้านี้และตอนนี้ส่งเสริมการใช้งาน เช่นremember { mutableStateOf(0) }
เราจะนำ Composable ของsavedInstanceState { 0 }
ออก คุณควรใช้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)
- relorableStateHolder เปลี่ยนชื่อเป็น SaveableStateHolder และย้ายไปยังแพ็กเกจ androidx.compose.runtime.saveable เมธอดภายในของRESTorableStateProvider ถูกเปลี่ยนชื่อเป็น SaveableStateProvider มีการนำประเภททั่วไปออก เพื่อให้คุณสามารถส่งเพียง "ใดก็ได้" เป็นคีย์ ไม่จำเป็นต้องใช้คำอธิบายประกอบรุ่นทดลองอีกต่อไป (I0902e, b/174598702)
- อัปเดต Modifier.animateContentSize API ให้สอดคล้องกัน กับระบบภาพเคลื่อนไหวส่วนที่เหลือ (I0bf75, b/177457083)
- เลิกใช้งาน AnimatedValue/Float แล้ว โปรดใช้ ภาพเคลื่อนไหวแทน (I71345, b/177457083)
- เลิกใช้งาน "tapGestureFilter, DoubleTouchGestureFilter, lengthPressGestureFilter และ pressIndicaitonGestureFilter ) แล้ว ใช้ Modifier.clickable หรือ Modifier.pointerInput กับฟังก์ชัน preventTouchGestures แทน (I6baf9, b/175294473)
- เริ่มใช้บริบทโครูทีน
InfiniteAnimationPolicy
แล้ว ที่จะนำไปใช้ในภาพเคลื่อนไหวที่ไม่จำกัด โดยค่าเริ่มต้น "ไม่" จะติดตั้งนโยบายแล้ว ยกเว้นเมื่อทำการทดสอบกับComposeTestRule
(I50ec4, b/151940543) - วิธีการทำลายโครงสร้างและ copy() ถูกนำออกจาก หลายชั้นเรียนที่แทบไม่ได้ใช้ (I26702, b/178659281)
- ขณะนี้เวลาเล่นในภาพเคลื่อนไหวยังไม่เท่ากับนาโนวินาที (If776a)
- เลิกใช้งานอาร์ติแฟกต์ Compose:runtime-dispatch แล้ว ขณะนี้สามารถดู MonotonicFrameClock ได้ใน write:runtime และ ดู AndroidUiDispatcher ได้ในCompose:ui (Ib5c36)
- เพิ่ม
Animation.isInfinite
และVectorizedAnimationSpec.isInfinite
ที่ส่งสัญญาณหากภาพเคลื่อนไหว ไม่รู้จบ ซึ่งสามารถนำไปใช้เพื่อใช้งานภาพเคลื่อนไหวเพื่อ มีการจัดการภาพเคลื่อนไหวดังกล่าวเป็นพิเศษ ตัวอย่างเช่น "เวลาพิเศษ" คงเหลือ" หรือในระหว่างการทดสอบ ภาพเคลื่อนไหวก็แสดงได้ เพื่อป้องกันการรอการไม่มีความเคลื่อนไหวโดยไม่มีกำหนดสิ้นสุด (Iebb05, b/151940543) - ใช้ "นาน" แทนระยะเวลาทำงานเป็นประเภทเวลาของภาพเคลื่อนไหว (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, ออฟเซ็ต ฯลฯ (Ie7e25)
- InfiniteTransion ใหม่ที่เรียกใช้เมธอด ภาพเคลื่อนไหวย่อย (I1da81)
- เปลี่ยนอินเทอร์เฟซพารามิเตอร์ที่เก็บสถานะ Material ให้มีฟังก์ชัน @Composable ที่แสดงผล
State<T>
เพิ่ม Animatable.asState() เพื่อทำให้การแปลง Animatable เป็นสถานะได้ง่ายขึ้น และเปลี่ยน animateElevation เป็นส่วนขยายการระงับใน Animatable ด้วย (If613C)
แก้ไขข้อบกพร่อง
- เราเลิกใช้งาน onCommit, onDispose และ onActive แล้วเพื่อเปลี่ยนไปใช้ SideEffect และ DisposableEffect API (If760e) แทน
- ขณะนี้ระบบรองรับสถานะเริ่มต้นในการอัปเดตการเปลี่ยนแล้ว (Ifd51d)
- เพิ่มพารามิเตอร์คำอธิบายเนื้อหาลงในรูปภาพและไอคอนแล้ว โดยใช้เพื่อให้คำอธิบายเกี่ยวกับบริการการช่วยเหลือพิเศษ (I2ac4c)
- "โมฆะ" และ "ComCompositionReference()" จะถูกเลิกใช้งานเพื่อใช้ CurrentRecomposeScope และ RememberComCompositionReference ตามลำดับ (I583a8)
- ระบบจะแทนที่ระยะเวลาและระยะเวลาทำงานด้วยมิลลิวินาทีที่ใช้เวลานาน และขั้นตอนนี้จะนำการอ้างอิงอินพุตของตัวชี้เหล่านั้นออก ใหม่ (Ia33b2, b/175142755, b/177420019)
- สามารถสร้างคลิกได้ เปิด/ปิด และเลือกได้นอกการเรียบเรียงได้แล้ว (I0a130, b/172938345, b/175294473)
- การค่อยๆ เปลี่ยนเปลี่ยนเป็นอินเทอร์เฟซที่ใช้งานได้ (Ib14e5)
- วิธีการใหม่จาก
items(count: Int)
เริ่มต้นสําหรับขอบเขต LazyColumn/LazyRow/LazyVerticalGrid ตอนนี้items(items: List)
และitemsIndexed(items: List)
เป็นฟังก์ชันส่วนขยายแล้ว คุณจึงต้องนำเข้าฟังก์ชันเหล่านั้นด้วยตนเองเมื่อใช้ การใช้งานส่วนขยายใหม่มากเกินไปสำหรับอาร์เรย์: items(items: Array) และ itemsIndexed(Array) (I803fc, b/175562574) - ใช้ประโยชน์จาก TestCoroutineDispatcher ในการทดสอบ (I532b6)
- นำ PointerInputData ออกและ PointerInputChange ที่แก้ไขแล้ว เพื่อระบุฟิลด์ทั้งหมดของ PointerInputData สร้างเหตุการณ์ป้อนข้อมูลตัวชี้ และ 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) - เปลี่ยนชื่อ Position เป็น DpOffset และนำ getDistance() (Ib2dfd) ออกแล้ว
- นำ Any.identityHashCode() สาธารณะออก API (I025d7) แล้ว
แก้ไขข้อบกพร่อง
- API ใหม่ที่อิงตาม Coroutine
Animatable
เพื่อให้มั่นใจว่าไม่มีการแบ่งแยก ท่ามกลางภาพเคลื่อนไหว DecayAnimationSpec ใหม่เพื่อรองรับภาพเคลื่อนไหวลดลงหลายมิติ (I820f2, b/168014930) - ตอนนี้แทนที่
animate()
ด้วยanimateAsState()
แล้ว ซึ่งแสดงผลเป็นState<T>
แทนT
วิธีนี้ทำให้ ประสิทธิภาพสูงสุด เนื่องจากสามารถจำกัดขอบเขตการใช้งานไม่ได้ให้แคบลงได้ ตรงตำแหน่งที่มีการอ่านค่า State (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, และอื่นๆ ไปยังแล้ว Anthos-core และเลิกใช้งาน VectorConveters แบบเก่า (If0c4b)
- เปิดตัว Transition API ชุดใหม่พร้อม ใช้งานง่าย และรองรับภาพเคลื่อนไหว ที่เพิ่มแบบไดนามิก เป้าหมายภาพเคลื่อนไหวที่คำนวณได้ API นี้ได้รับการทำเครื่องหมายว่าเป็นการทดสอบสำหรับ การแยกแยะความแตกต่างจาก TransitionDefinition API ได้อย่างง่ายดาย (Ia7fe3)
แก้ไขข้อบกพร่อง
- ตอนนี้ Lambda ในตัวแก้ไขออฟเซ็ตจะแสดงผล IntOffset แทนที่จะเป็น Float (Ic9ee5, b/174137212, b/174146755)
- เลิกใช้งาน LazyColumnFor, LazyRowFor, LazyColumnForIndexed และ LazyRowForIndexed ใช้ LazyColumn และ LazyRow แทน (I5b48c)
- สำหรับการระงับ API อินพุตตัวชี้ เปลี่ยนชื่อ HandlePointerInputScope กับ AwaitPointerEventScope และ ManagePointerInput() ไปยัง awaitPointerEventScope() (Idf0a1, b/175142755)
- ฟังก์ชัน infiniteDuplicateable ใหม่สำหรับการสร้าง InfiniteRefiniteableSpec (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 ที่ประกอบกันได้ เพื่อตรวจสอบความสอดคล้องของหลักเกณฑ์การเขียน
รวมทั้งย้ายข้อมูล API บางรายการโดยใช้
children
เป็นชื่อสำหรับ lambda ต่อท้ายcontent
ตามการตรวจสอบ Lint และคำแนะนำ (Iec48e) - ก่อนหน้านี้มีการนำ API ที่เลิกใช้งานแล้วออกดังนี้
- นำ
Modifier.onPositioned
ออกแล้ว โปรดใช้Modifier.onGloballyPositioned
- นำ
Modifier.onDraw
ออกแล้ว โปรดใช้Modifier.onDrawBehind
- นำ
Modifier.plus
ออกแล้ว โปรดใช้Modifier.then
- นำ
Color.Unset
ออกแล้ว โปรดใช้Color.Unspecified
- นำ
PxBounds
ชั้นเรียนออกแล้ว โปรดใช้Rect
แทน - (Ie9d02, b/172562222)
- นำ
- เพิ่มตัวเลือกชั่วคราวเพื่ออนุญาตให้ TestAnimationClock ขับเคลื่อนโดย MonotonicFrameClock (I1403b, b/173402197)
แก้ไขข้อบกพร่อง
- เปลี่ยนชื่อ Modifier.drawLayer เป็น Modifier.graphicsLayer แล้ว รวมทั้งอัปเดตคลาสที่เกี่ยวข้องเป็น GraphicsLayer ตาม ความคิดเห็นเกี่ยวกับ API ของสภา (I0bd29, b/173834241)
- เพิ่ม Modifier.scale/rotate แล้ว
API ช่วยอำนวยความสะดวกสำหรับ DrawLayer
- เปลี่ยนชื่อ Modifier.drawOpacity เป็น Modifier.alpha แล้ว
- เปลี่ยนชื่อ Modifier.drawShadow เป็น Modifier.shadow (I264ca, b/173208140)
- สร้างระยะเวลาทำงานของ PointerInputData และ ฟิลด์ตำแหน่งต้องไม่เป็นค่าว่าง (Id468a)
- เปลี่ยนชื่อตัวปรับแต่งออฟเซ็ตPx เป็นออฟเซ็ต ตอนนี้จะใช้พารามิเตอร์ lambda แทน State แล้ว (Ic3021, b/173594846)
- API ใหม่สำหรับการเรียกใช้ภาพเคลื่อนไหวในโครูทีน (Ied662)
- แอมเบียนท์ที่เลิกใช้งานซึ่งตั้งชื่อด้วย
Ambient
เป็นคำต่อท้าย และแทนที่ด้วยพร็อพเพอร์ตี้ใหม่ที่ขึ้นต้นด้วย "แอมเบียนท์" ตามหลักเกณฑ์อื่นๆ ของแอมเบียนท์และ Compose API (I33440) - การควบคุมเวลาในการทดสอบ (TestAnimationClock และการใช้งาน) คือ อยู่ในขั้นทดลอง (I6ef86, b/171378521)
- นำโมดูลการทดสอบ UI เก่าและสตับของโมดูลออก (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)
- ย้าย Measureผลลัพธ์ ออกจาก 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)
เลิกใช้งาน contentColor() และ CurrentTextStyle() และแทนที่ด้วย AmbientContentColor และ AmbientTextStyleแอมเบียนท์ตามลำดับ คุณสามารถเข้าถึงค่าปัจจุบันได้โดยใช้
.current
ในพร็อพเพอร์ตี้ แอมเบียนท์ เช่นเดียวกับสภาพแวดล้อมอื่นๆ โดยเราทำการเปลี่ยนแปลงนี้เพื่อให้เกิดความสม่ำเสมอ และเพื่อหลีกเลี่ยงไม่ให้มีหลายวิธีในการทำสิ่งเดียวกัน นอกจากนี้ ยังเปลี่ยนชื่อพร็อพเพอร์ตี้แอมเบียนท์บางรายการเพื่ออธิบายวัตถุประสงค์ได้ดียิ่งขึ้นดังนี้- ContentColorAmbient -> สีเนื้อหาแอมเบียนท์
- รูปแบบข้อความแอมเบียนท์ -> รูปแบบข้อความแอมเบียนท์
- ตัวบ่งชี้แอมเบียนท์ -> ตัวบ่งชี้แบบแอมเบียนท์
- การเน้นความสำคัญ -> ระดับแสงแวดล้อม
- 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
- ที่มีคำอธิบายประกอบrootAnimationClockfactor, การเปลี่ยนส์Enabled blinkingCursorEnabled และ textInputServiceStart กับ @VisibleForTesting, ทำให้เป็น API ภายในและซ่อน kdoc (I554eb, b/168308412)
แก้ไขข้อบกพร่อง
- อัปเดต Graphics API หลายรายการ
- อัปเดตการปรับขนาดและการหมุนแล้ว การเปลี่ยนรูปแบบที่จะใช้ พารามิเตอร์ออฟเซ็ตเพื่อแสดง Pivot พิกัดแทนการลอยตัวแยกกัน พารามิเตอร์ของพิกัด x/y ใน DrawScope และ DrawTransform
- นำ Rect.expandToInclude และ Rect.join ออกแล้ว วิธีการ
- อัปเดตเอกสารประกอบของรัศมีที่แสดงรูปวงรี นอกเหนือจากเครื่องอีลิปติคอล
- เพิ่มเอกสารประกอบเพื่อระบุ เครื่องมือสร้างสาธารณะสำหรับรัศมีในบรรทัด ไม่ ต้องเรียกโดยตรง แต่ วัตถุที่มีรัศมีควรสร้างอินสแตนซ์ผ่าน เครื่องมือสร้างฟังก์ชัน
- นำ RoundRect API ออกแล้วเพื่อค้นหา 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 เพื่อใช้คุณสมบัติของรัศมี แทนพารามิเตอร์แต่ละตัวสำหรับค่ารัศมี x/y
- นำ API ขนาดที่สันนิษฐานว่าเป็นสี่เหลี่ยมผืนผ้าที่มี ต้นทางที่ 0,0
- เพิ่ม API ที่ทำลายลงในรัศมีแล้ว
- ย้ายฟังก์ชันส่วนขยาย RoundRect ต่างๆ เป็น พร็อพเพอร์ตี้แทน
- (I8f5c7, b/168762961)
- Foundation.Box เลิกใช้งานแล้ว โปรดใช้ Foundation.layout.Box แทน (Ie5950, b/167680279)
- เปลี่ยนชื่อกลุ่มเป็น Box แล้ว เราจะเลิกใช้งาน Box ที่มีอยู่ก่อนหน้านี้เพื่อเปลี่ยนไปใช้ Box ใหม่ใน publisher.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 มีคอมมิตเหล่านี้
แก้ไขข้อบกพร่อง
- มีการเปลี่ยนชื่อการใช้แรงโน้มถ่วงอย่างต่อเนื่องเพื่อจัดแนวหรือจัดแนวใน 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 มีใน PreCommit พฤติกรรมของคุณ
onCommit และ onActive จะทำงานในเฟรมนักออกแบบท่าเต้นเดียวกัน การเปลี่ยนแปลงองค์ประกอบที่กระทำในตอนต้น ไม่ใช่ตอนต้น ของนักออกแบบท่าเต้นถัดไป (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 ทำให้ภาพเคลื่อนไหวที่ประกอบกันได้ทำให้ภาพปรากฏ และการหายไปของเนื้อหา ของเด็ก
EnterTransion และ ExitTransition ได้รับการแนะนำในการทำงานร่วมกับ AnimatedVisibilty สามารถเขียนได้เพื่อแสดงประเภท 3 แบบ ภาพเคลื่อนไหวของการปรากฏและหายไป: จางลง เลื่อน และ ขยาย/ย่อเนื้อหา ภาพเคลื่อนไหวประเภทต่างๆ สามารถรวมเข้าด้วยกัน เพื่อให้ได้รูปลักษณ์ที่ตรงใจมากขึ้น (Idda11)
PxBound ที่เลิกใช้งานแล้วใน ชอบสี่เหลี่ยมผืนผ้า อัปเดตการใช้งานทั้งหมดแล้ว ของ PxBounds พร้อมรูปสี่เหลี่ยมและเพิ่ม การเลิกใช้งาน/แทนที่ด้วย เพื่อช่วยเสริม การย้ายข้อมูล (I37038, b/162627058)
แก้ไขข้อบกพร่อง
PlacementScope.placeAbsolute()
เปลี่ยนชื่อเป็นPlacementScope.place()
และPlacementScope.place()
ก่อนหน้านี้เปลี่ยนชื่อเป็นPlacementScope.placeRelative()
ด้วยเหตุนี้ เมธอดPlacementScope.place()
จะไม่มิเรอร์ตำแหน่งในบริบทแบบขวาไปซ้ายโดยอัตโนมัติอีกต่อไป หากต้องการ โปรดใช้PlacementScope.placeRelative()
แทน (I873ac, b/162916675)- ขณะนี้ Composable ของ
state { ... }
เลิกใช้งานแล้วเพื่อให้ การเรียกไปที่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 ที่ยังคงใช้ ที่อิงจากนาฬิกา CallbackMonotonicFrameClock
เทียบเท่ากับManualAnimationClock
ในขณะนี้คือManualFrameClock
(I111c7, b/161247083)
แก้ไขข้อบกพร่อง
- API สำหรับการสนับสนุนข้อความจากขวาไปซ้ายได้รับการอัปเดตแล้ว เพิ่ม LayoutDirectionAmbient แล้วซึ่งใช้เพื่ออ่านและเปลี่ยนทิศทางเลย์เอาต์ได้ Modifier.rtl และ Modifier.ltr ถูกลบแล้ว (I080B3)
- ต้องระบุประเภท T อย่างชัดแจ้ง conversionDefinition (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
คุณจะต้องอัปเดตทรัพยากร Dependency ตามข้อมูลโค้ดใหม่ที่แสดงด้านบนในการประกาศทรัพยากร Dependency
การเปลี่ยนแปลง API
- เปลี่ยน API การเปลี่ยนให้แสดงผล TransitionState แทนการส่งผ่าน TransitionState ให้แก่เด็กๆ ซึ่งจะทำให้ API มีความสอดคล้องกับ animate() API (I24e38)
- เพิ่มพารามิเตอร์ตัวปรับแต่งสำหรับ Crossfade (I87cfe, b/159706180)
- ใช้ AnimationSpec แทน AnimationBuilder ใน API ระดับบนสุด
เพื่อสร้างความชัดเจนเกี่ยวกับข้อกำหนดของภาพเคลื่อนไหวแบบคงที่
- ปรับปรุงการเปลี่ยน DSL โดยยกเลิกข้อกําหนด lambda สําหรับ การสร้าง AnimationSpecs เช่น Tween, Spring แต่กลับใช้ พารามิเตอร์ตัวสร้างโดยตรง
- เพิ่มความสะดวกในการใช้งานโดยรวมของ AnimationSpec ผู้สร้างแทนที่จะพึ่งพาผู้สร้าง
- เปลี่ยนระยะเวลาและการหน่วงเวลาสำหรับ KeyFrame และ Tween เป็น Int ช่วงเวลานี้ ขจัดประเภทการแคสต์ที่ไม่จำเป็นและวิธีการโหลดมากเกินไป (สำหรับ สนับสนุนทั้ง Long และ Int) (Ica0b4)
- แทนที่การใช้ IntPx ด้วย Int. แทนที่ IntPxPosition ด้วย IntOffset แทนที่ IntPxSize ด้วย IntSize (Ib7b44)
- ในการรวม จำนวนคลาสที่ใช้แสดง ข้อมูลขนาด, ทำให้เป็นมาตรฐาน เกี่ยวกับการใช้คลาส Size แทน ของ PxSize ซึ่งมีประโยชน์ ของคลาสในหน้าที่จะใช้ประโยชน์จาก เพื่อบรรจุค่าจำนวนลอยตัว 2 ค่าเพื่อแสดง ความกว้างและความสูงแสดงเป็นแบบลอย (Ic0191)
- ในการรวม จำนวนคลาสที่ใช้แสดง ข้อมูลการวางตำแหน่ง, ทำให้เป็นมาตรฐาน เกี่ยวกับการใช้คลาสออฟเซ็ตแทน ของ PxPosition ซึ่งมีประโยชน์ ของคลาสในหน้าที่จะใช้ประโยชน์จาก เพื่อใส่ค่าจำนวนลอยตัว 2 ค่าเพื่อแสดง x และออฟเซ็ต y แสดงเป็นเลขทศนิยม (I3ad98)
- แทนที่การใช้คลาส Px ใน เขียนชั้นเรียนในฐานะส่วนหนึ่งของ ความพยายามในการเปลี่ยนโครงสร้างโดยใช้ Dp เท่านั้น และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล (I086f4)
- เพิ่มการรองรับ animate() สำหรับ Dp, Px, ขนาด, ตำแหน่ง, ขอบเขต PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition IntPxBounds และเวกเตอร์ภาพเคลื่อนไหว (Ib7518)
- ครอสเฟดยอมรับพารามิเตอร์ AnimationBuilder ที่ไม่บังคับแล้ว เพื่ออนุญาตให้กำหนดค่าภาพเคลื่อนไหว (I6d6e0)
- แทนที่การใช้สีที่เป็นค่าว่างทั้งหมดใน API ด้วย ไม่ใช่ค่าว่าง และใช้ Color.Unset แทนค่า Null (Iabaa7)
- นำคลาส ValueHolder ออกแล้ว ปรับโครงสร้างคลาส AnimatedValue, คลาส AnimatedFloat เป็น
ทำให้ฟิลด์ค่าภาพเคลื่อนไหวมีลักษณะเป็นนามธรรมเพื่อให้คลาสย่อยดูการอัปเดตค่าได้
- เพิ่มคลาสโมเดลสำหรับ AnimatedValue, AnimatedFloat ฯลฯ
- เพิ่ม @Composable API ชุดใหม่เพื่อให้ภาพเคลื่อนไหวระหว่างค่าต่างๆ เคลื่อนไหว (I79530)
- การเปลี่ยนแปลงที่ส่งผลกับ Environments API โปรดดูรายละเอียดในบันทึกและเอกสาร
Ambient<T>
(I4c7ee, b/143769776) - โหมดการทำซ้ำใหม่: ย้อนกลับ โหมดนี้จะย้อนกลับไปยังโหมดก่อนหน้า การวนซ้ำเมื่อภาพเคลื่อนไหวเล่นซ้ำใน "สเปคที่ทำซ้ำได้" หรือ Vectorizedสามารถปรากฏซ้ำได้ (Ibe0f5)
- การเพิ่ม API ใน ManualAnimationClock:
hasObservers: Boolean
และพารามิเตอร์ตัวสร้างdispatchOnSubscribe: Boolean
(Iaa134) - เพิ่ม API สำหรับการรับขอบเขตต่ำสุด/สูงสุดใน AnimatedFloat (Icd9cc)
แก้ไขข้อบกพร่อง
runOnIdleCompose
เปลี่ยนชื่อเป็นrunOnIdle
(I83607)- มีการเปลี่ยนชื่อ API การทดสอบหลายรายการเพื่อให้ใช้งานง่ายขึ้น ทั้งหมด searchXYZ API ได้เปลี่ยนชื่อเป็น onNodeXYZ เปลี่ยนชื่อ API ของ doXYZ ทั้งหมดเป็น OperatXYZ (I7F164)
- เปิดตัว API ภาพเคลื่อนไหวแบบไม่เก็บสถานะระดับต่ำ API เหล่านี้ (I63bf7)
- การ Compose ที่เรียบเรียงใหม่จะไม่ใช่สิ่งที่มีประโยชน์อีกต่อไป การจัดองค์ประกอบใหม่ส่วนใหญ่ควรเป็นผลมาจากการมอบหมาย MutableState สำหรับสิ่งอื่นนอกเหนือจากนี้ ขอแนะนำให้คุณใช้ฟังก์ชัน
invalidate
เพื่อทริกเกอร์การจัดองค์ประกอบขอบเขตปัจจุบันใหม่ (Ifc992) - แทนที่การใช้คลาส Px ใน เขียนชั้นเรียนในฐานะส่วนหนึ่งของ ความพยายามในการเปลี่ยนโครงสร้างโดยใช้ Dp เท่านั้น และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล ลบคลาส Px ทั้งหมดแล้ว (I3ff33)
- แทนที่การใช้คลาส Px ใน เขียนชั้นเรียนในฐานะส่วนหนึ่งของ ความพยายามในการเปลี่ยนโครงสร้างโดยใช้ Dp เท่านั้น และประเภทพื้นฐานสำหรับพารามิเตอร์พิกเซล (Id3434)
- ครอสเฟดสามารถใช้ค่าเริ่มต้นเป็นค่าว่างได้ (Iad6a4, b/155947711)
- แทนที่การใช้คลาส Px ใน เขียนชั้นเรียนในฐานะส่วนหนึ่งของ ความพยายามในการเปลี่ยนโครงสร้างโดยใช้ Dp เท่านั้น และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล (I19d02)
- การใช้ CanvasScope แบบรวม ตอนนี้ก็มีแค่ DrawScope และ ขอบเขตการวาดเนื้อหา เปลี่ยนชื่อ CanvasScope เป็น DrawScope อัปเดต DrawScope เพื่อใช้ความหนาแน่น อินเทอร์เฟซ และแสดง LayoutDirection ลบคลาสย่อย DrawScope ใน ContentDrawScope อัปเดต Painter และ PainterModifier แล้ว เพื่อไม่ให้มีพร็อพเพอร์ตี้ RTL อีกต่อไป และ DrawScope มีข้อมูลนี้แล้ว โดยไม่ต้องระบุด้วยตนเอง (I1798e)
- อัปเดตระดับสูงขึ้นแล้ว เขียน API ที่เปิดเผย Canvas ต่อ แสดง CanvasScope แทน การดำเนินการนี้จะนำ ความต้องการของผู้บริโภคในการรักษา เป็นเจ้าของออบเจ็กต์ Paint สำหรับผู้บริโภคที่ ยังคงต้องการเข้าถึง Canvas ก็สามารถใช้ส่วนขยาย DrawCanvas ที่ให้ผลลัพธ์ Callback ไปยังปัญหา ให้วาดคำสั่งด้วยฟังก์ชัน Canvas (I80afd)
- เพิ่มพารามิเตอร์แบบแรงโน้มถ่วงแนวตั้งและแนวนอนแรงโน้มถ่วงที่แถวและคอลัมน์ตามลำดับ (I7dc5a)
- โมดูลข้อความ UI เปลี่ยนชื่อเป็น ui-text-core (I57dec)
- ปรับปรุง DrawModifier API:
- สร้างขอบเขตตัวรับสำหรับDraw() ContentDrawScope
- นำพารามิเตอร์ทั้งหมดในDraw() ออก
- DrawScope มีอินเทอร์เฟซเดียวกันกับ CanvasScope เดิม
- ContentDrawScope มีเมธอดDrawContent() (Ibaced, b/152919067)
runOnIdleCompose
และrunOnUiThread
เป็นฟังก์ชันส่วนกลางแล้ว แทนเมธอดใน ComposeTestRule (Icbe8f)- [Mutable]ย้ายโอเปอเรเตอร์ที่ได้รับมอบสิทธิ์พร็อพเพอร์ตี้ของรัฐไปยังส่วนขยายแล้ว
เพื่อรองรับการเพิ่มประสิทธิภาพการมอบสิทธิ์พร็อพเพอร์ตี้ของ Kotlin 1.4 ผู้โทรจะต้องเพิ่ม
เพื่อนำเข้าเพื่อใช้
by state { ... }
หรือby mutableStateOf(...)
ต่อไป (I5312C) - เลิกใช้งาน ColoredRect แล้ว โปรดใช้
Box(Modifier.preferredSize(width, height).drawBackground(color))
แทน (I499fa, b/152753731) - เปลี่ยนตัวปรับแต่งและโอเปอเรเตอร์ด้วยฟังก์ชันส่วนขยายจากโรงงาน (I225e4)
- เลิกใช้งาน Center Composable แล้ว ควรแทนที่ด้วยตัวแก้ไข LayoutSize.Fill + LayoutAlign.Center หรือด้วย Composable ของ Box หรือ Stack ที่มีการใช้ตัวแก้ไขที่เหมาะสม (Idf5e0)
- เปลี่ยนชื่อ Layoutแบบยืดหยุ่น เป็น Layoutweight แล้ว เปลี่ยนชื่อพารามิเตอร์ที่เข้มงวดเพื่อเติมแล้ว (If4738)
- ระบบได้แทนที่ฟังก์ชัน Composable ของความทึบแสงแล้ว ด้วยตัวปรับแต่ง DrawOpacity (I5fb62)
- ตอนนี้การทดสอบโดยใช้ AndroidComposeTestRule จะแสดงภาพเคลื่อนไหว ที่รากของการเรียบเรียง ที่ทำให้สามารถหยุดชั่วคราวได้ ทำงานต่อและขั้นสูงด้วยตนเอง (Id54c5)
- รองรับทิศทางจากขวาไปซ้ายในตัวแก้ไข LayoutPadding (I9e8da)
- เราได้รวมความหนาแน่นและ DensityScope เป็นอินเทอร์เฟซเดียว ตอนนี้คุณใช้ DensityAmbient.current แทนเงื่อนไขแอมเบียนท์Density() ได้แล้ว แทน withDensity(density) เพียงด้วย(density) (I11cb1)
- เพิ่มวิธีการคัดลอกไปยัง
ประเภทคลาสในหน้า ได้แก่
- ออฟเซ็ต
- ขนาด
- รัศมี
- การเคลื่อนไหว
- ต้นกำเนิดการแปลง
- เมธอดออบเจ็กต์ที่แสดงร่วม Size.copy ที่เลิกใช้งาน วิธีการคัดลอกอินสแตนซ์ (Ife290, b/159905651)
- ย้าย androidx.compose.ViewComposer ไปยัง androidx.ui.node.UiComposer แล้ว
นำ androidx.compose.Emittable ออกแล้ว คอมโพเนนต์นี้ซ้ำซ้อนกับ ComponentNode
นำ androidx.compose.ViewAdapters ออกแล้ว ซึ่งจะไม่ใช่ Use Case ที่รองรับอีกต่อไป
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)