เขียนภาพเคลื่อนไหว

สร้างภาพเคลื่อนไหวในแอปพลิเคชัน Jetpack Compose เพื่อยกระดับประสบการณ์ของผู้ใช้
อัปเดตล่าสุด รุ่นที่เสถียร ตัวเลือกถอนการอ้างสิทธิ์ รุ่นเบต้า รุ่นอัลฟ่า
24 กรกฎาคม 2024 1.6.8 - 1.7.0-beta06 -

โครงสร้าง

การเขียนเป็นการรวมรหัสกลุ่ม 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.14"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.animation:animation:1.6.8")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

ความคิดเห็น

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

สร้างรายการใหม่

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

เวอร์ชัน 1.7

เวอร์ชัน 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

  • รองรับป้ายกำกับการใช้เครื่องมือใน rememberInfiniteTransition และฟังก์ชันส่วนขยายทั้งหมดใน 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 และฟังก์ชันจากโรงงานเพื่อเรียกใช้โค้ดหลัง Callback withFrameNanos รายการ แต่ก่อนที่จะเรียกให้ผู้โทรกลับมาทำงานอีกครั้ง โครูทีน (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 และบางส่วนของ เปลี่ยน API AnimatedVisibility รายการให้เสถียรแล้ว และ 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 เพื่อใช้ Kotlin 1.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 และ AGP 7.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, MotionValue, AnimatedValue API มี นำออกแล้ว (If27bc, b/177457083)
  • นำ AnimationEndReason.Internized ออกแล้ว 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)
  • ฟังก์ชัน infinitefiniteable แบบใหม่สำหรับการสร้าง InfiniteDuplicateableSpec (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, การเปลี่ยนเปิดใช้, blinkingCursorEnabled และ textInputServiceFactory กับ @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 เมื่อเรียกใช้การทดสอบที่ต้องใช้ ManualFrameClock TestUiDispatcher.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")
        }
    }
    

    (I0a85b, b/161247083)

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

  • เลิกใช้งาน 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 ที่ยังคงใช้ ที่อิงจากนาฬิกา Callback

    MonotonicFrameClockเทียบเท่ากับ ManualAnimationClock ในขณะนี้คือ ManualFrameClock (I111c7, b/161247083)

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

  • API สำหรับการสนับสนุนข้อความจากขวาไปซ้ายได้รับการอัปเดตแล้ว เพิ่ม LayoutDirectionAmbient แล้วซึ่งใช้เพื่ออ่านและเปลี่ยนทิศทางเลย์เอาต์ได้ นำ Modifier.rtl และ Modifier.ltr ออกแล้ว (I080b3)
  • ต้องระบุประเภท T อย่างชัดแจ้ง conversionDefinition (แก้ไขแล้ว)
  • แพ็กเกจ 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)
  • โหมดการทำซ้ำใหม่: ย้อนกลับ โหมดนี้จะย้อนกลับไปยังโหมดก่อนหน้า ทำซ้ำเมื่อภาพเคลื่อนไหวเล่นซ้ำใน "ReandableSpec" หรือ VectorizedlikeableSpec (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)