ภาพเคลื่อนไหวของ Compose

สร้างภาพเคลื่อนไหวในแอปพลิเคชัน Jetpack Compose เพื่อยกระดับประสบการณ์ของผู้ใช้
อัปเดตล่าสุด รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า รุ่นอัลฟ่า
9 กันยายน 2026 1.12.1 - - 1.13.0-alpha03

โครงสร้าง

Compose คือการรวมรหัสกลุ่ม Maven 7 รายการภายใน androidx แต่ละกลุ่ม ประกอบด้วยฟังก์ชันการทำงานย่อยที่กำหนดเป้าหมาย โดยแต่ละกลุ่มจะมีชุดหมายเหตุ ประจำรุ่นของตัวเอง

ตารางนี้อธิบายกลุ่มและลิงก์ไปยังชุดหมายเหตุประจำรุ่นแต่ละชุด

กลุ่มคำอธิบาย
compose.animationสร้างภาพเคลื่อนไหวในแอปพลิเคชัน Jetpack Compose เพื่อยกระดับประสบการณ์ของผู้ใช้
compose.compilerแปลงฟังก์ชัน @Composable และเปิดใช้การเพิ่มประสิทธิภาพด้วยปลั๊กอินคอมไพเลอร์ Kotlin
compose.foundationเขียนแอปพลิเคชัน Jetpack Compose ด้วยองค์ประกอบพื้นฐานที่พร้อมใช้งาน และขยายรากฐานเพื่อสร้างชิ้นส่วนระบบการออกแบบของคุณเอง
compose.materialสร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design ที่พร้อมใช้งาน นี่คือจุดแรกเข้าของ Compose ในระดับที่สูงขึ้น ซึ่งออกแบบมาเพื่อจัดหาคอมโพเนนต์ที่ตรงกับคอมโพเนนต์ที่อธิบายไว้ที่ www.material.io
compose.material3สร้าง UI ของ Jetpack Compose ด้วยคอมโพเนนต์ Material Design 3 ซึ่งเป็นวิวัฒนาการขั้นถัดไปของ Material Design Material 3 มีการอัปเดตการกำหนดธีมและคอมโพเนนต์ รวมถึงฟีเจอร์การปรับเปลี่ยนในแบบของคุณของ Material You เช่น สีแบบเปลี่ยนอัตโนมัติ และออกแบบมาให้สอดคล้องกับสไตล์ภาพและ UI ของระบบ Android 12 ใหม่
compose.runtimeส่วนประกอบพื้นฐานของรูปแบบการเขียนโปรแกรมและการจัดการสถานะของ Compose รวมถึงรันไทม์หลักสำหรับปลั๊กอินคอมไพเลอร์ Compose เพื่อกำหนดเป้าหมาย
compose.uiคอมโพเนนต์พื้นฐานของ UI ของ Compose ที่จำเป็นต่อการโต้ตอบกับอุปกรณ์ ซึ่งรวมถึงเลย์เอาต์ การวาด และอินพุต

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

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

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

Groovy

dependencies {
    implementation "androidx.compose.animation:animation:1.12.1"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

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

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

ความคิดเห็น

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

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

ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของ Issue Tracker

เวอร์ชัน 1.13

เวอร์ชัน 1.13.0-alpha03

9 กันยายน 2026

androidx.compose.animation:animation-*:1.13.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.13.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้

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

  • นำ ExperimentalDeferredTransitionApi ออกแล้ว API การเปลี่ยนผ่านที่เลื่อนเวลา ไม่จำเป็นต้องเลือกใช้เวอร์ชันทดลองอีกต่อไป (Ib6430)

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

  • compileSdk สำหรับไลบรารี Compose ที่อัปเดตเป็น 37.1 ซึ่งจะต้องอัปเดต compileSdk สำหรับแอปและไลบรารีทั้งหมดที่ใช้ Compose (I05b0f)

เวอร์ชัน 1.13.0-alpha02

26 สิงหาคม 2026

androidx.compose.animation:animation-*:1.13.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.13.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.13.0-alpha01

12 สิงหาคม 2026

androidx.compose.animation:animation-*:1.13.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.13.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

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

  • คืนค่า EnterTransition.with เป็นเลิกใช้งานแล้วพร้อม DeprecationLevel.HIDDEN เพื่อความเข้ากันได้แบบไบนารี (I71214, b/535291175)
  • ใส่คำอธิบายประกอบให้กับเมธอดพื้นฐานที่ว่างเปล่าซึ่งลบล้างได้ใน Compose ด้วย @EmptySuper เพื่อระบุว่าการใช้งานที่ลบล้างไม่ควรเรียกใช้ super (Id407b)
  • เปิดตัว CapturedAnimatedVisibility ซึ่งเป็นทางเลือกแทน AnimatedVisibility ที่จะทิ้งองค์ประกอบย่อยทันทีเมื่อออก และ เคลื่อนไหวเฟรมสุดท้ายที่แสดงผลผ่าน GraphicsLayer (I6c5b3)
  • เปลี่ยนชื่อโอเวอร์โหลด rememberTransition ที่รับ DeferredTransitionState เป็น rememberDeferredTransition เพื่อ แยกความแตกต่างจากตัวแปร TransitionState มาตรฐาน (I7bb7e)
  • ตั้งค่า EnterExitTransitionConfig เป็นสาธารณะสำหรับ EnterTransition และ ExitTransition (Idd5a4, b/330152398)
  • ตอนนี้ Transition.Crossfade และ createChildTransition พร้อมใช้งานแล้ว EnterTransition.with ถูกนำออกแล้ว (ใช้ togetherWith) (I38f66)
  • ตอนนี้ createChildTransition เสถียรแล้ว (Ied832, b/261422996)
  • ตอนนี้ androidx.benchmark มีminSdk 24 รายการ (Ic2a85)
  • แสดงค่าภาพเคลื่อนไหวปัจจุบันใน DeferredTargetAnimation (Ie4f6e, b/434659224)
  • แทนที่ @AnimationToolingApi API เวอร์ชันทดลองด้วย @RestrictTo API ที่มีการรับประกันการติดตามที่เข้มงวดกว่า (Ia4fd1, b/524317805)
  • ทำให้ API unveilIn และ veilOut เสถียร (I9e3a3)

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

  • การเริ่มต้นระดับไฟล์ที่เพิ่มประสิทธิภาพของanimation พร็อพเพอร์ตี้คลาสค่าระดับบนสุดโดยใช้ตัวรับแบบไดนามิก (I88b86)
  • การเริ่มต้นออบเจ็กต์คู่ที่เพิ่มประสิทธิภาพของคลาสค่า compose:animation (StartOffsetType, ArcMode, SlideDirection) โดยใช้ ตัวรับแบบไดนามิก (I4162e)
  • ล้างข้อมูล API (Ia8066)

เวอร์ชัน 1.12

เวอร์ชัน 1.12.1

9 กันยายน 2026

androidx.compose.animation:animation-*:1.12.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.12.1 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.12.0

12 สิงหาคม 2026

androidx.compose.animation:animation-*:1.12.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.12.0 มีการเปลี่ยนแปลงเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.11.0

เวอร์ชัน 1.12.0-rc01

29 กรกฎาคม 2026

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

เวอร์ชัน 1.12.0-beta02

1 กรกฎาคม 2026

androidx.compose.animation:animation-*:1.12.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.12.0-beta02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.12.0-beta01

17 มิถุนายน 2026

androidx.compose.animation:animation-*:1.12.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.12.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

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

  • เปิดตัวพารามิเตอร์ permitTransformDuringDeferredTransition ใน SharedContentConfig เพื่อควบคุมว่าองค์ประกอบที่แชร์ควร เปลี่ยนรูปแบบตามคอนเทนเนอร์ระดับบนสุดหรือไม่ ในระยะที่เลื่อนออกไปของ DeferredTransition (I4b67b)
  • เปลี่ยนโครงสร้างภายในโค้ดการเปลี่ยนไปใช้คลาสที่ปิดผนึกและปรับปรุง DeferredTransition เอกสารประกอบเกี่ยวกับ API และความปลอดภัย (Iecb8f)
  • เพิ่ม inactiveElementColor ไปยัง LookaheadAnimationVisualDebugging" ลงใน androidx-main
  • เพิ่ม inactiveElementColor ใน LookaheadAnimationVisualDebugging (I5454b, b/501193322)
  • นำคำอธิบายประกอบ ExperimentalAnimatableApi ออกแล้ว (I4e670, b/500030165)

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

  • แก้ไขปัญหาใน LinkComposer ที่อาจทำให้ Composable ข้ามแทนที่จะทำการประกอบใหม่เมื่อไม่ถูกต้องในระหว่างการประกอบ (Ie29fe)

เวอร์ชัน 1.12.0-alpha03

19 พฤษภาคม 2026

androidx.compose.animation:animation-*:1.12.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.12.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้

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

  • DeferredTargetAnimation ไม่ใช่เวอร์ชันทดลองอีกต่อไป โปรดนำการเลือกใช้ใน androidx-main ออก
  • เพิ่มพารามิเตอร์ mutableTransform ใน AnimatedVisibility และ AnimatedContent เพื่อรองรับการดัดแปลงพร็อพเพอร์ตี้ด้วยตนเองโดยตรง (เช่น สำหรับท่าทางสัมผัสย้อนกลับแบบคาดการณ์) ในช่วงการเปลี่ยนผ่านที่เลื่อนออกไป (I236e8)
  • DeferredTargetAnimation ไม่ใช่ฟีเจอร์ทดลองอีกต่อไป โปรดนำการเลือกใช้ฟีเจอร์ออก (I1e4ae, b/500030165)
  • Enum ใหม่เพื่อรองรับทริกเกอร์ในเครื่องมือ UI (I6e198, b/478807872)

เวอร์ชัน 1.12.0-alpha02

6 พฤษภาคม 2026

androidx.compose.animation:animation-*:1.12.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.12.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.12.0-alpha01

22 เมษายน 2026

androidx.compose.animation:animation-*:1.12.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.12.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

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

  • อัปเดต Compose compileSdk เป็น API 37 ซึ่งหมายความว่าเมื่อใช้ Compose จะต้องใช้ AGP เวอร์ชัน 9.2.0 เป็นอย่างน้อย (Id45cd, b/413674743)
  • สิ้นสุดภาพเคลื่อนไหว SeekableTransitionState ก่อนการคอมโพสิต (1bf9dc, b/410055849)

เวอร์ชัน 1.11

เวอร์ชัน 1.11.4

1 กรกฎาคม 2026

androidx.compose.animation:animation-*:1.11.4 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.4 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.11.3

17 มิถุนายน 2026

androidx.compose.animation:animation-*:1.11.3 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.3 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.11.2

19 พฤษภาคม 2026

androidx.compose.animation:animation-*:1.11.2 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.2 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.11.1

6 พฤษภาคม 2026

androidx.compose.animation:animation-*:1.11.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.1 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.11.0

22 เมษายน 2026

androidx.compose.animation:animation-*:1.11.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0 มีการคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.10.0

  • androidx.compose.animation:animation-*:1.11.0 ได้รับการเผยแพร่แล้ว เวอร์ชันเสถียรนี้รวมการปรับปรุงและการแก้ไขจากวงจรการพัฒนา 1.11.0 โดยมุ่งเน้นที่ความเสถียรขององค์ประกอบที่ใช้ร่วมกัน ความน่าเชื่อถือของเธรด และเครื่องมือใหม่สำหรับนักพัฒนาซอฟต์แวร์

ฟีเจอร์ใหม่

  • การแก้ไขข้อบกพร่องด้วยภาพสำหรับ Lookahead: เปิดตัวชุดความสามารถในการแก้ไขข้อบกพร่องด้วยภาพชุดใหม่ที่ช่วยให้แสดงภาพข้อมูลที่เกี่ยวข้องกับองค์ประกอบที่แชร์และ Modifier.animatedBounds ได้ ข้อมูลดังกล่าว ได้แก่ ขอบเขตเป้าหมาย เส้นทางการเคลื่อนที่ของภาพเคลื่อนไหวของขอบเขต จำนวนการจับคู่ที่พบ สถานะการเปลี่ยนภาพ เป็นต้น

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

  • เพิ่ม API ใหม่ LookaheadAnimationVisualDebugging, CustomizedLookaheadAnimationVisualDebugging และ LookaheadAnimationVisualDebugConfig เพื่อช่วยแก้ไขข้อบกพร่องของขอบเขตภาพเคลื่อนไหวและภาพเคลื่อนไหวขององค์ประกอบที่ใช้ร่วมกัน (Id5575, b/390011686, b/466169919)

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

  • ความปลอดภัยของเธรด: SeekableTransitionState จัดการการเปลี่ยนแปลงสถานะนอกเธรดได้อย่างถูกต้องแล้ว ก่อนหน้านี้ หากมีการแก้ไขสถานะนอกเทรด UI โดยใช้ Snapshot.withMutableSnapshot() การเปลี่ยนจะพยายามจัดการการอัปเดตนอกเทรด UI อย่างไม่ถูกต้อง (0aba38)
  • ประสิทธิภาพ: ปรับปรุงประสิทธิภาพของsharedElementsการเข้าถึงแผนที่ (93f57d)
  • การรายงานสถานะ: แก้ไขisTransitionActiveเพื่อให้รายงานเป็นจริงเฉพาะเมื่อมีการเคลื่อนไหวที่ใช้งานอยู่จากองค์ประกอบที่แชร์ที่ตรงกัน (d3426a, b/474385510)
  • ความเสถียร: ต้องวางรูทการเปลี่ยนผ่านที่แชร์ก่อนขอบเขตการค้นหา (77d59c) และตรวจสอบว่าตำแหน่งสำหรับ sharedElements จะได้รับก็ต่อเมื่อแนบ SharedTransitionLayout (I2a035)
  • การจัดการการหยุดชะงัก: แก้ไขการจัดการการหยุดชะงักในกรณีที่พบได้ยากเมื่อภาพเคลื่อนไหวขาออกขององค์ประกอบย่อยสิ้นสุดลงในขณะที่การเปลี่ยนฉากขององค์ประกอบหลักยังคงทำงานอยู่ใน AnimatedContent (ad9b4f)
  • การตรวจสอบ: ระยะเวลาที่ตรวจสอบแล้วใน InfiniteRepeatableSpec เพื่อป้องกันรอบที่มีระยะเวลาเป็น 0 (151b6d)
  • การปรับแต่ง: เคารพ visibilityThreshold ใน AnimationSpec ที่กำหนดเองสำหรับ animateFloatAsState (3a1cdc)

เวอร์ชัน 1.11.0-rc01

8 เมษายน 2026

androidx.compose.animation:animation-*:1.11.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-rc01 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.11.0-beta02

25 มีนาคม 2026

androidx.compose.animation:animation-*:1.11.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-beta02 มีการเปลี่ยนแปลงเหล่านี้

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

  • ตอนนี้ SeekableTransitionState จัดการการเปลี่ยนแปลงสถานะนอกเธรดได้อย่างถูกต้องแล้ว ก่อนหน้านี้ หากมีการแก้ไขสถานะนอกเธรด UI โดยใช้ Snapshot.withMutableSnapshot() การเปลี่ยนจะพยายามจัดการการอัปเดตนอกเธรด UI อย่างไม่ถูกต้อง(0aba38)
  • ตรวจสอบระยะเวลาใน InfiniteRepeatableSpec เพื่อป้องกันรอบที่มีระยะเวลาเป็น 0 (151b6d)
  • Respect visibilityThreshold ใน AnimationSpec ที่กำหนดเองสำหรับ animateFloatAsState (3a1cdc)
  • แก้ไขการจัดการการหยุดชะงักในกรณีที่ซับซ้อนเมื่อภาพเคลื่อนไหวขาออกของบุตรหลานสิ้นสุดลงในขณะที่การเปลี่ยนฉากของผู้ปกครองยังคงทำงานอยู่ใน AnimatedContent (ad9b4f)

เวอร์ชัน 1.11.0-beta01

11 มีนาคม 2026

androidx.compose.animation:animation-*:1.11.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไข isTransitionActive เพื่อให้รายงานเฉพาะเมื่อมีภาพเคลื่อนไหวที่ใช้งานอยู่จากองค์ประกอบที่แชร์ซึ่งตรงกัน (d3426a, b/474385510)

เวอร์ชัน 1.11.0-alpha06

25 กุมภาพันธ์ 2026

androidx.compose.animation:animation-*:1.11.0-alpha06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้

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

  • ปรับปรุงประสิทธิภาพของsharedElementsการเข้าถึงแผนที่ (93f57d)

เวอร์ชัน 1.11.0-alpha05

11 กุมภาพันธ์ 2026

androidx.compose.animation:animation-*:1.11.0-alpha05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.11.0-alpha04

28 มกราคม 2026

androidx.compose.animation:animation-*:1.11.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.11.0-alpha03

14 มกราคม 2026

androidx.compose.animation:animation-*:1.11.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้

ฟีเจอร์ใหม่

  • เปิดตัวความสามารถในการแก้ไขข้อบกพร่องด้วยภาพชุดใหม่ที่ช่วยให้แสดงภาพข้อมูลที่เกี่ยวข้องกับองค์ประกอบที่แชร์และ Modifier.animatedBounds ได้ ข้อมูลดังกล่าว ได้แก่ ขอบเขตเป้าหมาย เส้นทางการเคลื่อนที่ของภาพเคลื่อนไหวของขอบเขต จำนวนการจับคู่ที่พบ สถานะการเปลี่ยนภาพ เป็นต้น

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

  • เพิ่ม API ใหม่ LookaheadAnimationVisualDebugging, CustomizedLookaheadAnimationVisualDebugging และ LookaheadAnimationVisualDebugConfig เพื่อช่วยแก้ไขข้อบกพร่องของขอบเขตภาพเคลื่อนไหวและภาพเคลื่อนไหวขององค์ประกอบที่แชร์ (Id5575, b/390011686, b/466169919)

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

  • กำหนดให้วางรูทการเปลี่ยนภาพที่แชร์ก่อนที่จะค้นหาขอบเขต (77d59c)

เวอร์ชัน 1.11.0-alpha02

17 ธันวาคม 2025

androidx.compose.animation:animation-*:1.11.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.11.0-alpha01

3 ธันวาคม 2025

androidx.compose.animation:animation-*:1.11.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.11.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

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

  • รับตำแหน่งสำหรับ sharedElements เท่านั้นหากแนบ SharedTransitionLayout ไว้ (I2a035)

เวอร์ชัน 1.10

เวอร์ชัน 1.10.6

25 มีนาคม 2026

androidx.compose.animation:animation-*:1.10.6 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.6 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.10.5

11 มีนาคม 2026

androidx.compose.animation:animation-*:1.10.5 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.5 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.10.4

25 กุมภาพันธ์ 2026

androidx.compose.animation:animation-*:1.10.4 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.4 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.10.3

11 กุมภาพันธ์ 2026

androidx.compose.animation:animation-*:1.10.3 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.3 มีการคอมมิตเหล่านี้

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

  • แก้ไขข้อขัดข้องที่เกิดจากกรณีข้อยกเว้นที่โหนดเนื้อหาที่แชร์ถูกแยกออกก่อนที่จะวางรูทการเปลี่ยนภาพที่แชร์ (121310)

เวอร์ชัน 1.10.2

28 มกราคม 2026

androidx.compose.animation:animation-*:1.10.2 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.2 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.10.1

14 มกราคม 2026

androidx.compose.animation:animation-*:1.10.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.1 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.10.0

3 ธันวาคม 2025

androidx.compose.animation:animation-*:1.10.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.0 มีการเปลี่ยนแปลงเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.9.0

  • Shared Transition API มีความเสถียรในเวอร์ชัน 1.10
  • Modifier.skipToLookaheadPosition API ใหม่สำหรับเลย์เอาต์ใน SharedTransitionScope เพื่อข้ามไปยังตำแหน่งเป้าหมายแทนที่จะเคลื่อนไหวการเปลี่ยนแปลงตำแหน่ง (9a88f4)
  • รองรับการเปิด/ปิดใช้แบบไดนามิกสำหรับองค์ประกอบที่แชร์ (07680e)
  • API ใหม่เพื่อรองรับความเร็วเริ่มต้นสำหรับการเริ่มการเปลี่ยนองค์ประกอบที่ใช้ร่วมกันด้วยการปัด (b0afe2)
  • EnterTransition และ ExitTransition ใหม่สำหรับการเคลื่อนไหวเลเยอร์ม่านสำหรับ AnimatedVisibility และ AnimatedContent (0f6e7c)

เวอร์ชัน 1.10.0-rc01

19 พฤศจิกายน 2025

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

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

  • ตอนนี้ตัวเลือก unveilIn และ veilOut พร้อมให้บริการสำหรับ EnterExitTransitions แล้ว ซึ่งจะช่วยให้คุณเคลื่อนไหวเลเยอร์ซ้อนทับด้านหน้าเนื้อหาที่เข้าหรือออกได้ (If26fe)

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

  • รองรับการติดตามขอบเขตผ่านการแยกและต่อ sharedElement อีกครั้ง (be0e9e)
  • ทำให้แผนที่องค์ประกอบที่แชร์สังเกตได้สำหรับการสังเกตการใช้งานการเปลี่ยนภาพ (1fc2ec)

เวอร์ชัน 1.10.0-beta02

5 พฤศจิกายน 2025

androidx.compose.animation:animation-*:1.10.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.0-beta02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.10.0-beta01

22 ตุลาคม 2025

androidx.compose.animation:animation-*:1.10.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

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

  • เราได้นำSharedContentConfigเมธอด Factory ที่ใช้ Lambda เพื่อระบุว่าควรเปิดใช้ Shared Element หรือไม่ ออกแล้ว lookheadScopeCoordinates API ได้รับการอัปเดตโดยมี LookaheadScope เป็นขอบเขตผู้รับ และมีพิกัดต้นทางเป็นพารามิเตอร์ (Id1fc2, b/452416806)
  • เราได้อัปเดตอินเทอร์เฟซของ BoundsTransform ให้สอดคล้องกับ SizeTransform แล้ว (Ia46f2, b/343696350)
  • นำ ScaleToBounds API ที่เลิกใช้งานแล้วออกแล้ว โปรดใช้ scaleToBounds แทน (I17296)

เวอร์ชัน 1.10.0-alpha05

8 ตุลาคม 2025

androidx.compose.animation:animation-*:1.10.0-alpha05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้

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

เวอร์ชัน 1.10.0-alpha04

24 กันยายน 2025

androidx.compose.animation:animation-*:1.10.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้

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

  • อัปเดตการตั้งชื่อสำหรับ API ที่เกี่ยวข้องกับ PlaceHolderSize (I037d8, b/343696350)
  • API การเปลี่ยนฉากขององค์ประกอบที่แชร์ใหม่เพื่อรองรับความเร็วเริ่มต้นในการรักษาความเร็วของท่าทางสัมผัสในองค์ประกอบที่แชร์ (I91be9)

เวอร์ชัน 1.10.0-alpha03

10 กันยายน 2025

androidx.compose.animation:animation-*:1.10.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้

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

  • Modifier.skipToLookaheadSize ตอนนี้ใช้ Lambda ที่เปิดใช้โดยค่าเริ่มต้นซึ่งจะเปิดใช้การข้ามขนาดเมื่อการเปลี่ยนที่แชร์ทำงานอยู่เท่านั้น เช่นเดียวกับ Modifier.skipToLookaheadPosition (Ibe0f5, b/432485585)

เวอร์ชัน 1.10.0-alpha02

27 สิงหาคม 2025

androidx.compose.animation:animation-*:1.10.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.10.0-alpha01

13 สิงหาคม 2025

androidx.compose.animation:animation-*:1.10.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.10.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

ฟีเจอร์ใหม่

  • API ใหม่ที่อนุญาตให้เปิดและปิดใช้องค์ประกอบที่แชร์แบบไดนามิก ซึ่งยังช่วยให้สามารถพิจารณาได้ว่ามีการเปลี่ยนองค์ประกอบที่แชร์ที่กำลังดำเนินการอยู่แล้วหรือไม่
  • API ใหม่เพื่อตั้งค่าขอบเขตเป้าหมายอื่นเมื่อองค์ประกอบที่แชร์เป้าหมายถูกทิ้งระหว่างการเปลี่ยน
  • API ใหม่สำหรับรับ LayoutCoordinates ของ LookaheadScope (I18dd4, b/409819304, b/395670637)
  • ตัวแก้ไขใหม่ Modifier.skipToLookaheadPosition ใน SharedTransitionScope สำหรับการยึดเลย์เอาต์ที่ตำแหน่งเป้าหมายระหว่างการเปลี่ยนฉากที่แชร์ (I88734)

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

  • renderInSharedTransitionOverlay ลดความซับซ้อนโดยนำแลมบ์ดา clipInOverlayDuringTransition ออกเนื่องจากไม่ค่อยได้ใช้งาน เปิดตัวเมธอด Factory ใหม่สำหรับ SharedContentConfig (Id01b2)
  • เพิ่มชุดค่าเริ่มต้นสำหรับองค์ประกอบที่แชร์ ขอบเขตที่แชร์ และการกำหนดค่า renderInSharedTransitionOverlay ตอนนี้ค่าเริ่มต้นเหล่านี้เข้าถึงได้ผ่าน API สาธารณะแล้ว (Id23cc)
  • ScaleToBounds เปลี่ยนชื่อ ResizeMode เป็น scaleToBounds (I5ac50)

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

เวอร์ชัน 1.9

เวอร์ชัน 1.9.5

19 พฤศจิกายน 2025

androidx.compose.animation:animation-*:1.9.5 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.5 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.9.4

22 ตุลาคม 2025

androidx.compose.animation:animation-*:1.9.4 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.4 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.9.3

8 ตุลาคม 2025

androidx.compose.animation:animation-*:1.9.3 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.3 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.9.2

24 กันยายน 2025

androidx.compose.animation:animation-*:1.9.2 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.2 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.9.1

10 กันยายน 2025

androidx.compose.animation:animation-*:1.9.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.1 มีการคอมมิตเหล่านี้

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

  • แก้ไขการเริ่มต้นภาพเคลื่อนไหวสำหรับ sharedElementWithCallerManagedVisibility (fa29de)

เวอร์ชัน 1.9.0

13 สิงหาคม 2025

androidx.compose.animation:animation-*:1.9.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.9.0-rc01

30 กรกฎาคม 2025

androidx.compose.animation:animation-*:1.9.0-rc01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0-rc01 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.9.0-beta03

16 กรกฎาคม 2025

androidx.compose.animation:animation-*:1.9.0-beta03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0-beta03 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.9.0-beta02

2 กรกฎาคม 2025

androidx.compose.animation:animation-*:1.9.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0-beta02 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.9.0-beta01

18 มิถุนายน 2025

androidx.compose.animation:animation-*:1.9.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.9.0-alpha04

4 มิถุนายน 2025

androidx.compose.animation:animation-*:1.9.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.9.0-alpha03

20 พฤษภาคม 2025

androidx.compose.animation:animation-*:1.9.0-alpha03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0-alpha03 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.9.0-alpha02

7 พฤษภาคม 2025

androidx.compose.animation:animation-*:1.9.0-alpha02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0-alpha02 มีการเปลี่ยนแปลงเหล่านี้

ฟีเจอร์ใหม่

  • ปรับปรุงการรองรับการเลื่อนหรือการลากในองค์ประกอบที่แชร์ให้ดีขึ้นมาก กล่าวอย่างเจาะจงคือ เมื่อเลื่อนองค์ประกอบแบบใช้ร่วมกันที่กำลังเปลี่ยนผ่าน ระบบจะใช้เดลต้าการเลื่อนกับองค์ประกอบแบบใช้ร่วมกันโดยตรง แทนที่จะทำให้องค์ประกอบแบบใช้ร่วมกันติดตามเป้าหมายใหม่ (cacf7b)

เวอร์ชัน 1.9.0-alpha01

23 เมษายน 2025

androidx.compose.animation:animation-*:1.9.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.9.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

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

  • การตรวจสอบ Lint ที่มาพร้อมกับ Compose ต้องใช้ AGP เวอร์ชัน 8.8.2 เป็นอย่างน้อย หากอัปเกรด AGP ไม่ได้ คุณสามารถอัปเกรด Lint ด้วยตนเองได้โดยใช้ android.experimental.lint.version=8.8.2 (หรือเวอร์ชันที่ใหม่กว่า) ใน gradle.properties คุณต้องใช้ Android Studio Ladybug หรือใหม่กว่าจึงจะเรียกใช้การตรวจสอบ Lint ของ Compose ภายใน IDE ได้

ฟีเจอร์ใหม่

  • ปรับปรุงประสิทธิภาพการเลื่อนสำหรับองค์ประกอบที่แชร์ (ea4f1f)

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

  • โปรเจ็กต์ที่เผยแพร่ด้วย Kotlin 2.0 ต้องใช้ KGP 2.0.0 ขึ้นไป (Idb6b5)
  • TabRow และ ScrollableTabRow เลิกใช้งานแล้วเพื่อรองรับตัวแปรหลักและตัวแปรรองของแต่ละรายการ แถวแท็บหลักและแถวแท็บรองมีประสิทธิภาพมากขึ้นและเป็นไปตามข้อกำหนดอย่างแม่นยำ (I918e2)
  • เพิ่มLocalResourcesองค์ประกอบเฉพาะที่เพื่อค้นหาทรัพยากร การเรียกใช้ LocalResources.current จะจัดองค์ประกอบใหม่เมื่อการกำหนดค่าเปลี่ยนแปลง ดังนั้นการเรียกใช้ API เช่น stringResource() จะแสดงค่าที่อัปเดตแล้ว (I50c13, b/274786917)

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

  • ตรวจสอบว่าได้วางองค์ประกอบที่แชร์จากภาพซ้อนทับเมื่อการเปลี่ยนผ่านเสร็จสิ้น (35f359)
  • กำจัดการจัดองค์ประกอบใหม่ที่ไม่จำเป็นในทรานซิชัน (988923)
  • แก้ไขการจัดการการหยุดชะงักของการเปลี่ยนผ่านของบัญชีเด็ก (8aed52)
  • ตรวจสอบว่าได้รีเซ็ตการเปลี่ยนผ่านเมื่อมีการระบุ TransitionState ใหม่ (57820a)

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

  • จาก Compose 1.8.1: End animations in SeekableTransitionState if already past new duration by Steven Schoen. (0c832c)

เวอร์ชัน 1.8

เวอร์ชัน 1.8.3

18 มิถุนายน 2025

androidx.compose.animation:animation-*:1.8.3 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.3 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.8.2

20 พฤษภาคม 2025

androidx.compose.animation:animation-*:1.8.2 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.2 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.8.1

7 พฤษภาคม 2025

androidx.compose.animation:animation-*:1.8.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.1 มีการคอมมิตเหล่านี้

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

  • สิ้นสุดภาพเคลื่อนไหวใน SeekableTransitionState หากเลยระยะเวลาใหม่ไปแล้ว ขอขอบคุณ Steven Schoen (fbcdf7)

เวอร์ชัน 1.8.0

23 เมษายน 2025

androidx.compose.animation:animation-*:1.8.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0 มีการเปลี่ยนแปลงเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.7.0

  • บล็อกโพสต์นี้จะกล่าวถึงการเปลี่ยนแปลงที่สำคัญในเวอร์ชัน 1.8.0
  • Modifier.animateBounds API ใหม่สำหรับการเคลื่อนไหวการเปลี่ยนแปลงขนาดและตำแหน่งภายในขอบเขตการมองไปข้างหน้า (94b939)
  • API ที่เสร็จสมบูรณ์แล้วสำหรับคีย์เฟรมที่มีส่วนโค้งและสปไลน์ (89e119)
  • รองรับการคาดคะเนใน LazyGrid และเพจเจอร์ ซึ่งรวมถึงการแยกความแตกต่างระหว่างการส่งบอลล่วงหน้ากับการส่งบอลเข้าหาในการเลื่อน การประกอบ/การทิ้งไอเทม และภาพเคลื่อนไหวของไอเทม และใช้การส่งบอลล่วงหน้าเป็นแหล่งข้อมูลที่เชื่อถือได้สำหรับการเลื่อนและเป้าหมายภาพเคลื่อนไหวของไอเทม
  • อัปเดตการตั้งชื่อพารามิเตอร์ sharedElement จากสถานะเป็น sharedContentState เพื่อให้สอดคล้องกันใน API ขององค์ประกอบที่แชร์ (9e7df5)
  • AnimatedImageVector ชุด API พร้อมใช้งานแล้ว (69d7e0)

เวอร์ชัน 1.8.0-rc03

9 เมษายน 2025

androidx.compose.animation:animation-*:1.8.0-rc03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-rc03 มีการคอมมิตเหล่านี้

เวอร์ชัน 1.8.0-rc02

26 มีนาคม 2025

androidx.compose.animation:animation-*:1.8.0-rc02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-rc02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.8.0-rc01

12 มีนาคม 2025

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

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

  • แก้ไขการเปลี่ยนผ่านของบุตรหลานที่ถูกทำเครื่องหมายอย่างไม่ถูกต้องว่าถูกขัดจังหวะ (3fa2ce)

เวอร์ชัน 1.8.0-beta03

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

androidx.compose.animation:animation-*:1.8.0-beta03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-beta03 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.8.0-beta02

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

androidx.compose.animation:animation-*:1.8.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-beta02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.8.0-beta01

29 มกราคม 2025

androidx.compose.animation:animation-*:1.8.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.8.0-alpha08

15 มกราคม 2025

androidx.compose.animation:animation-*:1.8.0-alpha08 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-alpha08 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขภาพเคลื่อนไหวของตำแหน่งที่ไม่ถูกต้องจาก animateBounds ใน LazyGrid เนื่องจากมีการรีเซ็ต MotionFrameOfReferencePlacement (16193b)
  • แก้ไขการค้นหาโดยธรรมชาติใน SharedTransitionLayout โดยเปลี่ยนเส้นทางการค้นหาโดยธรรมชาติไปยังการส่งผ่านการคาดคะเนจากรูทการคาดคะเนระดับบนสุด (a07d12)
  • เพิ่มแท็ก @param ที่ขาดหายไปในเอกสารแล้ว (e5cf67)

เวอร์ชัน 1.8.0-alpha07

11 ธันวาคม 2024

androidx.compose.animation:animation-*:1.8.0-alpha07 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-alpha07 มีการเปลี่ยนแปลงเหล่านี้

ฟีเจอร์ใหม่

  • รองรับการดูตัวอย่างใน Pager โดยแยกการส่งลูกแบบดูตัวอย่างจากการส่งลูกแบบเข้าหาเพื่อเก็บรายการและใช้การเลื่อน (b/371802474)

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

  • แก้ไขข้อขัดข้องที่พบได้ยากซึ่งเกิดขึ้นเมื่อมีการสร้างองค์ประกอบที่แชร์แต่ไม่เคยมีการวัด/วาง โดยกำหนดให้องค์ประกอบที่แชร์แสดงผลในตำแหน่งอย่างน้อย 1 ครั้งก่อนที่จะแสดงผลในภาพซ้อนทับ (b/371802474)

เวอร์ชัน 1.8.0-alpha06

13 พฤศจิกายน 2024

androidx.compose.animation:animation-*:1.8.0-alpha06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้

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

  • อัปเดตการตั้งชื่อพารามิเตอร์ sharedElement จาก state เป็น sharedContentState เพื่อให้สอดคล้องกันใน API ขององค์ประกอบที่แชร์ (I5694c, b/375351468)
  • ตอนนี้ชุด API ของ AnimatedImageVector มีความเสถียรแล้ว (I7174b, b/261436267)

เวอร์ชัน 1.8.0-alpha05

30 ตุลาคม 2024

androidx.compose.animation:animation-*:1.8.0-alpha05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-alpha05 มีการเปลี่ยนแปลงเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้ LazyGrid รองรับการดูตัวอย่างแล้ว ซึ่งรวมถึงการแยกความแตกต่างระหว่างการส่งบอลล่วงหน้ากับการส่งบอลเข้าหาในการเลื่อน การประกอบ/การทิ้งไอเทม และภาพเคลื่อนไหวของไอเทม และใช้การส่งบอลล่วงหน้าเป็นแหล่งข้อมูลที่เชื่อถือได้สำหรับการเลื่อนและเป้าหมายภาพเคลื่อนไหวของไอเทม

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

  • อัปเดตสถานะภายในสำหรับการเปลี่ยนขนาดของ AnimatedContent เมื่อสร้างการเปลี่ยนใหม่ ซึ่งจะช่วยให้มั่นใจได้ว่าข้อมูลขนาดเป้าหมายจะเป็นข้อมูลล่าสุดอยู่เสมอ (b/372512085)

เวอร์ชัน 1.8.0-alpha04

16 ตุลาคม 2024

androidx.compose.animation:animation-*:1.8.0-alpha04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-alpha04 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขข้อบกพร่องที่ทำให้เส้นโค้งการเปลี่ยนภาพบางเส้นขัดข้องในบางช่วงเวลา
  • แก้ไขข้อบกพร่องที่ทำให้ Modifier.animateContentSize จัดแนวไม่ถูกต้องในโหมด RTL (Idae6b, b/372055503)

เวอร์ชัน 1.8.0-alpha03

2 ตุลาคม 2024

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

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

  • อัปเดต Kotlin เป็นเวอร์ชัน 1.9 (I1a14c)

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

  • แก้ไขปัญหาในAnimatedContentภาพเคลื่อนไหวขนาดโดยการติดตามและเริ่มภาพเคลื่อนไหวจากขนาดปัจจุบันเสมอเพื่อให้มั่นใจว่าภาพเคลื่อนไหวจะต่อเนื่อง

เวอร์ชัน 1.8.0-alpha02

18 กันยายน 2024

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

เวอร์ชัน 1.8.0-alpha01

4 กันยายน 2024

androidx.compose.animation:animation-*:1.8.0-alpha01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.8.0-alpha01 มีการเปลี่ยนแปลงเหล่านี้

ฟีเจอร์ใหม่

  • Modifier.animateBounds API ใหม่สำหรับการเปลี่ยนขนาดและตำแหน่งภายในขอบเขตการมองไปข้างหน้า 94b9394

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

  • นำ Flag การทดสอบในคีย์เฟรมที่มีส่วนโค้งและสปริงไลน์ออก (89e1199)

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

  • ข้ามตรรกะ placeHolderSize เมื่อไม่พบรายการที่ตรงกัน (77c0160)
  • จำกัดเวลาเล่นใน AndroidFlingSpline เพื่อป้องกันไม่ให้เกิดข้อขัดข้องเนื่องจากเวลาเล่นเพิ่มขึ้นแบบไม่สม่ำเสมอ(9d47587)
  • แก้ไข SharedTransitionScope ไม่วาดรายการในบางเงื่อนไข (b41077b6)

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

  • ป้องกันการตั้งค่าการเปลี่ยนฉากที่เลื่อนได้ playTime เมื่อไม่มีการเปลี่ยนฉากโดย Steven Schoen (c2e6e7e6)

เวอร์ชัน 1.7

เวอร์ชัน 1.7.8

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

androidx.compose.animation:animation-*:1.7.8 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.8 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.7.7

29 มกราคม 2025

androidx.compose.animation:animation-*:1.7.7 ได้รับการเผยแพร่แล้ว ไม่มีการเปลี่ยนแปลงจาก 1.7.6 11 ธันวาคม 2024

androidx.compose.animation:animation-*:1.7.6 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.6 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.7.5

30 ตุลาคม 2024

androidx.compose.animation:animation-*:1.7.5 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.5 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขข้อบกพร่องที่ทำให้การจัดแนว Modifier.animateContentSize ไม่ถูกต้องภายใต้ RTL (Idae6b, b/372055503)

เวอร์ชัน 1.7.4

16 ตุลาคม 2024

androidx.compose.animation:animation-*:1.7.4 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.4 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.7.3

2 ตุลาคม 2024

androidx.compose.animation:animation-*:1.7.3 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.3 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.7.2

18 กันยายน 2024

androidx.compose.animation:animation-*:1.7.2 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.2 มีการเปลี่ยนแปลงเหล่านี้

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

  • ป้องกันการตั้งค่าการเปลี่ยนฉากที่เลื่อนได้ playTime เมื่อไม่มีการเปลี่ยนฉาก ขอขอบคุณ Steven Schoen (c2e6e7e6)

เวอร์ชัน 1.7.1

10 กันยายน 2024

  • ไม่มีการเปลี่ยนแปลงอาร์ติแฟกต์ Android ระบบได้นำอาร์ติแฟกต์ -desktop ออกแล้ว และเพิ่มอาร์ติแฟกต์ -jvmStubs และ -linuxx64Stubs เป้าหมายเหล่านี้ไม่มีไว้ให้ใช้งาน แต่เป็นตัวยึดตำแหน่งเพื่อช่วยให้ Jetbrains Compose ทำงานได้

เวอร์ชัน 1.7.0

4 กันยายน 2024

androidx.compose.animation:animation-*:1.7.0 ได้รับการเผยแพร่แล้ว

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.6.0

การเปลี่ยนแปลงที่สำคัญในเวอร์ชัน 1.7.0 จะกล่าวถึงในบล็อกโพสต์นี้

API การเปลี่ยนภาพองค์ประกอบแบบใช้ร่วมกันใหม่

  • API การเปลี่ยนภาพองค์ประกอบแบบใช้ร่วมกันใหม่พร้อมให้คุณใช้งานและแสดงความคิดเห็นแล้ว API ทดลองใหม่เหล่านี้ช่วยให้คุณติดแท็กเลย์เอาต์เป็นเลย์เอาต์ที่แชร์ในโครงสร้างเลย์เอาต์ได้โดยใช้ตัวแก้ไขที่ให้ไว้ ซึ่งจะสร้างขอบเขตที่เปลี่ยนแปลงได้อย่างราบรื่นเมื่อเนื้อหาที่แชร์ชุดหนึ่งออกไปและอีกชุดหนึ่งเข้ามา (Icb0b9)
  • scaleInSharedContentToBounds และ scaleOutSharedContentToBounds ใหม่เพื่อขยายขนาดเนื้อหาใน sharedBounds (I731c1)
  • ตอนนี้ SharedTransitionScope เวอร์ชันทดลองเป็นอินเทอร์เฟซแล้ว ไม่ใช่คลาส (Iaf856)
  • resizeModes ใหม่ (ScaleToBounds และ RemeasureToBounds) สำหรับ sharedBounds เพื่อเลือกระหว่างการปรับขนาดและการวัดผลใหม่ ตอนนี้เราเลิกใช้งาน scaleIn/OutSharedContentToBounds API ก่อนหน้าแล้ว (I0d41a)

การปรับปรุง API ที่มีอยู่

  • Modifier.animateContentSize ใหม่ที่ใช้พารามิเตอร์เพิ่มเติมสำหรับการจัดแนวเนื้อหาที่กำหนดเอง (I5623a, b/269803907)
  • DeferredTargetAnimation เวอร์ชันทดลองใหม่สำหรับการเคลื่อนไหวขนาด ตำแหน่ง หรือเป้าหมายอื่นๆ ที่ไม่รู้จักในระหว่างการสร้างอินสแตนซ์ (I60745)
  • SeekableTransitionState จะแทนที่ snapTo() ด้วย seekTo() และเพิ่ม snapTo() ที่เปลี่ยนสถานะเป็นสถานะปลายทางทันทีโดยไม่มีภาพเคลื่อนไหวใดๆ
  • ตอนนี้คุณส่งค่า periodicBias (Float) ไปยัง keyframesWithSpline ได้แล้ว ซึ่งจะทำให้ความเร็วเริ่มต้นและความเร็วสุดท้ายของสปริงเท่ากัน มีประโยชน์สำหรับภาพเคลื่อนไหวที่ทำซ้ำได้โดยใช้สปไลน์ อคติจะระบุว่าความเร็วแต่ละค่า (เริ่มต้นและสุดท้าย) ได้รับการแก้ไขมากน้อยเพียงใดเพื่อให้เกิดการวนซ้ำ (Ic1e6c, b/292114811)

API ต่อไปนี้มีสถานะเป็นแบบเสถียรหรือถูกนำออกแล้ว

  • ตอนนี้ AnimatedVisibilityScope.transition เป็น API ที่เสถียรแล้ว Modifier.animateEnterExit(..) ยังได้รับการปรับปรุงให้เสถียรยิ่งขึ้นด้วย (I6c1d1)
  • ApproachLayoutModifierNode และ Modifier.approachLayout ตอนนี้เสถียรแล้ว โดยมี isMeasurementApproachInProgress() และ isPlacementApproachInProgress() ใหม่มาแทนที่ isMeasurementApproachComplete() และ isPlacementApproachComplete() ตามลำดับ
  • นำตัวแก้ไข intermediateLayout ที่เลิกใช้งานแล้วออก (I3e91c)
  • เราได้ปรับปรุง API ของ LookaheadScope ให้เสถียรแล้ว (I21507)

เวอร์ชัน 1.7.0-rc01

21 สิงหาคม 2024

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

เวอร์ชัน 1.7.0-beta07

7 สิงหาคม 2024

androidx.compose.animation:animation-*:1.7.0-beta07 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-beta07 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขปัญหาที่ SharedTransitionScope ไม่วาดรายการซ้อนทับระหว่างการเปลี่ยนในบางเงื่อนไข ซึ่งโดยปกติจะรวมถึงการใช้งานกับการนำทาง (Id65ab, b/347520198)

เวอร์ชัน 1.7.0-beta06

24 กรกฎาคม 2024

androidx.compose.animation:animation-*:1.7.0-beta06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-beta06 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขSeekableTransitionการรั่วไหลของสถานะการเปลี่ยนโดยการล้างข้อมูลการสังเกตจาก SnapshotStateObserver อย่างเหมาะสมเมื่อมีการทิ้งการเปลี่ยน (b9c7182)
  • แก้ไขกรณีขอบที่ระบบไม่ได้ทําเครื่องหมายการเปลี่ยนฉากย่อยว่าเสร็จสมบูรณ์อย่างถูกต้องเมื่อการเปลี่ยนฉากหลักเสร็จสมบูรณ์ (dc42216)

เวอร์ชัน 1.7.0-beta05

10 กรกฎาคม 2024

androidx.compose.animation:animation-*:1.7.0-beta05 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-beta05 มีการเปลี่ยนแปลงเหล่านี้

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

  • ตอนนี้พร็อพเพอร์ตี้การเปลี่ยนภาพ totalDurationNanos สามารถอ่านได้อย่างถูกต้องภายใน snapshotFlow

เวอร์ชัน 1.7.0-beta04

26 มิถุนายน 2024

androidx.compose.animation:animation-*:1.7.0-beta04 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-beta04 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.7.0-beta03

12 มิถุนายน 2024

androidx.compose.animation:animation-*:1.7.0-beta03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-beta03 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.7.0-beta02

29 พฤษภาคม 2024

androidx.compose.animation:animation-*:1.7.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-beta02 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.7.0-beta01

14 พฤษภาคม 2024

androidx.compose.animation:animation-*:1.7.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

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

  • resizeModes ใหม่ (ScaleToBounds และ RemeasureToBounds) สำหรับ sharedBounds เพื่อเลือกระหว่างการปรับขนาดและการวัดซ้ำ ตอนนี้เราเลิกใช้งาน scaleIn/OutSharedContentToBounds API ก่อนหน้าแล้ว (I0d41a)

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

  • ตอนนี้ Experimental SharedTransitionScope เป็นอินเทอร์เฟซแทนที่จะเป็นคลาสโดย Steven Schoen (Iaf856, b/338415048, b/338414702)

เวอร์ชัน 1.7.0-alpha08

1 พฤษภาคม 2024

androidx.compose.animation:animation-*:1.7.0-alpha08 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-alpha08 มีการเปลี่ยนแปลงเหล่านี้

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

  • เราได้ปรับปรุง API ของ LookaheadScope ให้เสถียรแล้ว (I21507)

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

  • ล้างเวลาภาพเคลื่อนไหวเริ่มต้นหลังจาก SeekableTransitionState animates/snaps โดย Steven Schoen (1ca89529)

เวอร์ชัน 1.7.0-alpha07

17 เมษายน 2024

androidx.compose.animation:animation-*:1.7.0-alpha07 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-alpha07 มีการเปลี่ยนแปลงเหล่านี้

ฟีเจอร์ใหม่

  • API การเปลี่ยนภาพองค์ประกอบแบบใช้ร่วมกันใหม่พร้อมให้คุณใช้งานและแสดงความคิดเห็นแล้ว API ทดลองใหม่เหล่านี้ช่วยให้คุณติดแท็กเลย์เอาต์เป็นเลย์เอาต์ที่แชร์ในโครงสร้างเลย์เอาต์ได้โดยใช้ตัวแก้ไขที่ให้ไว้ ซึ่งจะสร้างขอบเขตที่เปลี่ยนแปลงได้อย่างราบรื่นเมื่อเนื้อหาที่แชร์ชุดหนึ่งออกไปและอีกชุดหนึ่งเข้ามา (Icb0b9)
  • scaleInSharedContentToBounds และ scaleOutSharedContentToBounds ใหม่เพื่อขยายขนาดเนื้อหาใน sharedBounds (I731c1)

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

  • ตอนนี้ AnimatedVisibilityScope.transition เป็น API ที่เสถียรแล้ว Modifier.animateEnterExit(..) ยังได้รับการปรับปรุงให้เสถียรยิ่งขึ้นด้วย (I6c1d1)
  • ApproachLayoutModifierNode และ Modifier.approachLayout ตอนนี้เสถียรแล้ว โดยมี isMeasurementApproachInProgress() และ isPlacementApproachInProgress() ใหม่มาแทนที่ isMeasurementApproachComplete() และ isPlacementApproachComplete() ตามลำดับ
  • นำตัวแก้ไข intermediateLayout ที่เลิกใช้งานแล้วออก (I3e91c)
  • ตอนนี้คุณส่งค่า periodicBias (Float) ไปยัง keyframesWithSpline ได้แล้ว ซึ่งจะทำให้ความเร็วเริ่มต้นและความเร็วสุดท้ายของสปริงเท่ากัน มีประโยชน์สำหรับภาพเคลื่อนไหวที่ทำซ้ำได้โดยใช้สปไลน์ อคติจะระบุว่าความเร็วแต่ละรายการ (เริ่มต้นและสุดท้าย) ได้รับการแก้ไขมากน้อยเพียงใดเพื่อให้เกิดความสม่ำเสมอ (Ic1e6c, b/292114811)

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

  • แก้ไขเส้นโค้งการชะลอความเร็วที่ยิงเกินและยิงไม่ถึงซึ่งก่อนหน้านี้จะถูกจำกัดไว้ที่ 0..1 (I38747)

เวอร์ชัน 1.7.0-alpha06

3 เมษายน 2024

androidx.compose.animation:animation-*:1.7.0-alpha06 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.7.0-alpha06 มีการเปลี่ยนแปลงเหล่านี้

ฟีเจอร์ใหม่

  • เพิ่มการรองรับภาพเคลื่อนไหวการปรากฏและหายไปของไอเทมใน LazyColumn และ LazyRow ก่อนหน้านี้ คุณสามารถเพิ่มModifier.animateItemPlacement()ตัวแก้ไขเพื่อรองรับภาพเคลื่อนไหวของตำแหน่ง (การจัดลำดับใหม่) เราได้เลิกใช้งานตัวแก้ไขนี้และเปิดตัวตัวแก้ไขใหม่ที่ไม่ใช่เวอร์ชันทดลองที่ชื่อ Modifier.animateItem() ซึ่งช่วยให้คุณรองรับภาพเคลื่อนไหวทั้ง 3 ประเภท ได้แก่ การปรากฏ (จางเข้า) การหายไป (จางออก) และการจัดลำดับใหม่ (I2d7f7, b/330152398, b/150812265)

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

  • ปรับปรุงประสิทธิภาพของ 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 ชั่วคราวเนื่องจากต้องใช้การคาดการณ์ล่วงหน้า โดยจะพร้อมใช้งานเมื่อเปิดใช้การคาดคะเนโดยค่าเริ่มต้นหรือเลือกใช้ในรุ่นต่อๆ ไป

เวอร์ชัน 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)
  • ใช้ equals และ hashcode สำหรับ PageSize.Fixed (Ie3ede, b/300134276)
  • แก้ไขปัญหาความเข้ากันได้ของไบนารีกับการเปลี่ยนแปลง Window Inset (Iee695)
  • นำเลเยอร์หลักของ Material ออกสำหรับชิป/ปุ่ม Material3 เนื่องจาก Microbenchmark แสดงให้เห็นว่าไม่มีเลเยอร์ดังกล่าวแล้วประสิทธิภาพจะดีกว่า (I55555)

เวอร์ชัน 1.6.0-alpha08

18 ตุลาคม 2023

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

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

  • เลิกใช้งาน KeyframesSpecConfig#with เพื่อให้ KeyframesSpecConfig#using ซึ่งยังคงรูปแบบ Builder ไว้ (I1d769)

เวอร์ชัน 1.6.0-alpha07

4 ตุลาคม 2023

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

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

  • ตอนนี้แถบแท็บแบบคงที่และแบบเลื่อนได้มีตัวแปรหลักและตัวแปรรองแล้ว ซึ่งจะแมปกับลักษณะการทำงานของสีและตัวบ่งชี้อย่างถูกต้องตามที่กำหนดไว้ใน Material3
  • ตอนนี้ PrimaryScrollableTabRow และ SecondaryScrollableTabRow แสดงสถานะการเลื่อนแล้ว (Iec8f5, b/260572337)

เวอร์ชัน 1.6.0-alpha06

20 กันยายน 2023

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

เวอร์ชัน 1.6.0-alpha05

6 กันยายน 2023

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

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

  • เพิ่ม PathEasing เพื่อให้ระบุเส้นทางใดก็ได้ไปยังเส้นโค้งการค่อยๆ เปลี่ยน (Idb4b9)

เวอร์ชัน 1.6.0-alpha04

23 สิงหาคม 2023

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

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

  • เพิ่ม SeekableTransitionState เพื่อให้นักพัฒนาแอปควบคุมความคืบหน้าของการเปลี่ยนผ่านได้ (I8e69d)

เวอร์ชัน 1.6.0-alpha03

9 สิงหาคม 2023

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

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

  • การเปลี่ยนฉากเข้า/ออกประเภทใหม่ที่ปรับขนาดเนื้อหาตามขนาดของคอนเทนเนอร์ที่เคลื่อนไหวระหว่างภาพเคลื่อนไหวเข้าและออก LookaheadScope ตอนนี้ฟีเจอร์สนุกๆ และอินเทอร์เฟซที่ประกอบได้ก็เสถียรแล้ว (Ifb2ce)

เวอร์ชัน 1.6.0-alpha02

26 กรกฎาคม 2023

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

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

  • ExitTransition.Hold ใหม่เพื่อแสดงเนื้อหาขาออกใน AnimatedContent จนกว่าการเปลี่ยนฉากทั้งเข้าและออกจะเสร็จสิ้น (I5984f)
  • คำอธิบายประกอบเพิ่มเติมเพื่อระบุอินพุตที่อนุญาตไปยัง Composable (I51109)

เวอร์ชัน 1.6.0-alpha01

21 มิถุนายน 2023

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

ฟีเจอร์ใหม่

  • เปิดใช้ Modifier.animateContentSize และ AnimatedVisibility เพื่อผสานรวมเข้ากับระบบการมองไปข้างหน้าอย่างเต็มรูปแบบโดยการรายงานขนาดเป้าหมายในพาสการมองไปข้างหน้า

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

  • พร็อพเพอร์ตี้ใหม่ใน IntrinsincMeasureScope และการติดตั้งใช้งาน (เช่น MeasureScope) เพื่อระบุว่าการวัดปัจจุบันเป็นการวัดแบบมองไปข้างหน้าหรือไม่ (I7a812)

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

  • นำการจัดสรรออกจากภาพเคลื่อนไหวของสปริง (Ie9431)
  • เปลี่ยนชื่อพารามิเตอร์ค่าสำหรับ Enum.valueOf (Ia9b89)
  • ข้อยกเว้นที่เกิดขึ้นเพิ่มเติมจาก enum valueOf (I818fe)

รุ่น 1.5

เวอร์ชัน 1.5.4

18 ตุลาคม 2023

androidx.compose.animation:animation-*:1.5.4 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.4 มีคอมมิตเหล่านี้

เวอร์ชัน 1.5.3

4 ตุลาคม 2023

androidx.compose.animation:animation-*:1.5.3 ได้รับการเผยแพร่แล้ว เวอร์ชันนี้ไม่มีการเปลี่ยนแปลง

รุ่น 1.5.2

27 กันยายน 2023

androidx.compose.animation:animation-*:1.5.2 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.2 มีคอมมิตต่อไปนี้

รุ่น 1.5.1

6 กันยายน 2023

androidx.compose.foundation:foundation-*:1.5.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.1 มีคอมมิตต่อไปนี้

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

  • แก้ไขช่องข้อความแบบคงที่ที่แสดงแป้นพิมพ์และแก้ไขได้เมื่อ readOnly เป็นจริง นอกจากนี้ ยังแก้ไขปัญหาที่แป้นพิมพ์ไม่แสดงเมื่อเปลี่ยน readOnly จากจริงเป็นเท็จขณะโฟกัส (I34a19, b/246909589)

รุ่น 1.5.1

6 กันยายน 2023

androidx.compose.animation:animation-*:1.5.1 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.1 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.5.0

9 สิงหาคม 2023

androidx.compose.animation:animation-*:1.5.0 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.5.0-rc01

26 กรกฎาคม 2023

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

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

  • แก้ไขปัญหาที่การเรียก .value ในประเภทสถานะดั้งเดิม (เช่น MutableIntState) จะรายงานคำเตือนของ Lint พร้อมการแก้ไขที่ไม่ถูกต้อง ตอนนี้การตรวจสอบจะแนะนำให้ย้ายข้อมูลไปยังพร็อพเพอร์ตี้ที่ถูกต้อง (Iba953, b/287279257)

  • คุณสามารถเลือกตรวจสอบเพื่อแนะนำให้ย้ายข้อมูลการเรียก mutableStateOf() ไปยังประเภทเฉพาะทางที่เกี่ยวข้องสำหรับ Primitive ได้ รหัสการตรวจสอบคือ AutoboxingStateCreation ก่อนหน้านี้ การตรวจสอบนี้จะเปิดใช้โดยค่าเริ่มต้นสำหรับทุกโปรเจ็กต์ หากต้องการดูคำเตือนนี้ในเอดิเตอร์ของ Android Studio และเอาต์พุต Lint ของโปรเจ็กต์ ให้เปลี่ยนระดับความรุนแรงจากข้อมูลเป็นคำเตือน (หรือสูงกว่า) โดยประกาศ warning "AutoboxingStateCreation" ภายในbuild.gradleหรือการกำหนดค่า build.gradle.kts ของโมดูลตามที่แสดง (I34f7e)

        android {
            lint {
                warning "AutoboxingStateCreation"
            }
            ...
        }
    

เวอร์ชัน 1.5.0-beta03

28 มิถุนายน 2023

androidx.compose.animation:animation-*:1.5.0-beta03 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta03 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.5.0-beta02

7 มิถุนายน 2023

androidx.compose.animation:animation-*:1.5.0-beta02 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta02 มีคอมมิตเหล่านี้

เวอร์ชัน 1.5.0-beta01

24 พฤษภาคม 2023

androidx.compose.animation:animation-*:1.5.0-beta01 ได้รับการเผยแพร่แล้ว เวอร์ชัน 1.5.0-beta01 มีคอมมิตต่อไปนี้

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

  • นำการจัดสรรในการจัดองค์ประกอบใหม่ ภาพเคลื่อนไหวสี และ AndroidComposeView (Ib2bfa) ออกแล้ว

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

  • นำการจัดสรรออกจากภาพเคลื่อนไหวสปริง (Ie9431)

เวอร์ชัน 1.5.0-alpha04

10 พฤษภาคม 2023

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

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

  • ตอนนี้ ContentKey รองรับใน AnimatedContent แล้วเพื่อให้ควบคุมได้มากขึ้นว่าจะเปลี่ยนเมื่อใด (Ic069b)

เวอร์ชัน 1.5.0-alpha03

19 เมษายน 2023

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

ฟีเจอร์ใหม่

  • ลักษณะการทำงานเริ่มต้นใหม่สำหรับ SubcomposeLayout ใน LookaheadScope ซึ่งช่วยให้ SubcomposeLayouts ที่ไม่มีช่องแบบมีเงื่อนไข (เช่น TabRow, Scaffold, BoxWithConstraints ฯลฯ) ทำงานร่วมกับภาพเคลื่อนไหวแบบคาดการณ์ได้อย่างราบรื่น

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

  • intermediateMeasurePolicy เริ่มต้นใหม่ที่ใช้ซ้ำนโยบายการวัดจาก Lookahead Pass ช่วยให้SubcomposeLayoutประเภทต่างๆ ที่ไม่มีช่องแบบมีเงื่อนไข เช่น Scaffold, TabRow และ BoxWithConstraints ทำงานร่วมกับ Lookahead ได้โดยค่าเริ่มต้น (Id84c8)
  • เปลี่ยนชื่อฟังก์ชัน Infix Fun With เป็น togetherWith เพื่อรวมการเปลี่ยนฉากเข้าและออก AnimatedContentScope ใหม่เป็นตัวรับสำหรับ Lambda ของเนื้อหา (Ic39ae)

เวอร์ชัน 1.5.0-alpha02

5 เมษายน 2023

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

ฟีเจอร์ใหม่

  • API เวอร์ชันทดลองใหม่เพื่อรองรับการคาดคะเนใน SubcomposeLayout ซึ่งจะช่วยให้ SubcomposeLayout ทำงานได้อย่างถูกต้องใน LookaheadScope เราจะเพิ่มการรองรับ SubcomposeLayout ประเภทเฉพาะย่อยๆ อื่นๆ ในเร็วๆ นี้

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

  • SubcomposeLayout API ใหม่ที่ใช้นโยบายการวัดผลระดับกลางเพิ่มเติมสำหรับการจัดการตรรกะการวัด/เลย์เอาต์ระหว่างภาพเคลื่อนไหวที่อิงตามการคาดการณ์ล่วงหน้า (I017d3)

เวอร์ชัน 1.5.0-alpha01

22 มีนาคม 2023

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

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

  • ตอนนี้ AnimatedContent API เสถียรแล้ว และได้เปลี่ยนชื่อ AnimatedContentScope เป็น AnimatedContentTransitionScope แล้ว ตอนนี้ scaleIn และ scaleOut เป็น API ที่เสถียรแล้ว (Iaf54e)

เวอร์ชัน 1.4

เวอร์ชัน 1.4.3

3 พฤษภาคม 2023

androidx.compose.animation:animation:1.4.3, androidx.compose.animation:animation-core:1.4.3 และ androidx.compose.animation:animation-graphics:1.4.3 จะเปิดตัวโดยไม่มีการเปลี่ยนแปลง (มีการอัปเดตเวอร์ชันเท่านั้น)

เวอร์ชัน 1.4.2

19 เมษายน 2023

androidx.compose.animation:animation:1.4.2, androidx.compose.animation:animation-core:1.4.2 และ androidx.compose.animation:animation-graphics:1.4.2 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.2 มีคอมมิตเหล่านี้

เวอร์ชัน 1.4.1

5 เมษายน 2023

androidx.compose.animation:animation:1.4.1, androidx.compose.animation:animation-core:1.4.1 และ androidx.compose.animation:animation-graphics:1.4.1 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.1 มีคอมมิตเหล่านี้

เวอร์ชัน 1.4.0

22 มีนาคม 2023

androidx.compose.animation:animation:1.4.0, androidx.compose.animation:animation-core:1.4.0 และ androidx.compose.animation:animation-graphics:1.4.0 จะเปิดตัว เวอร์ชัน 1.4.0 มีคอมมิตต่อไปนี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.3.0

  • รองรับป้ายกำกับเครื่องมือใน rememberInfiniteTransition และฟังก์ชันส่วนขยายทั้งหมดใน InfiniteTransition และ Transition (เช่น InfiniteTransition#animateColor) (I56ef7)

เวอร์ชัน 1.4.0-rc01

8 มีนาคม 2023

androidx.compose.animation:animation:1.4.0-rc01, androidx.compose.animation:animation-core:1.4.0-rc01 และ androidx.compose.animation:animation-graphics:1.4.0-rc01 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.0-rc01 มีคอมมิตเหล่านี้

เวอร์ชัน 1.4.0-beta02

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

androidx.compose.animation:animation:1.4.0-beta02, androidx.compose.animation:animation-core:1.4.0-beta02 และ androidx.compose.animation:animation-graphics:1.4.0-beta02 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.0-beta02 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.4.0-beta01

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

androidx.compose.animation:animation:1.4.0-beta01, androidx.compose.animation:animation-core:1.4.0-beta01 และ androidx.compose.animation:animation-graphics:1.4.0-beta01 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 1.4.0-beta01 มีคอมมิตเหล่านี้

เวอร์ชัน 1.4.0-alpha05

25 มกราคม 2023

androidx.compose.animation:animation:1.4.0-alpha05, androidx.compose.animation:animation-core:1.4.0-alpha05 และ androidx.compose.animation:animation-graphics:1.4.0-alpha05 จะเปิดตัว เวอร์ชัน 1.4.0-alpha05 มีคอมมิตเหล่านี้

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

  • ไม่มีการเปลี่ยนแปลงในไลบรารีภาพเคลื่อนไหวตั้งแต่เวอร์ชันอัลฟ่าล่าสุด มีเพียงการอัปเดตเวอร์ชันเท่านั้น

เวอร์ชัน 1.4.0-alpha04

11 มกราคม 2023

androidx.compose.animation:animation:1.4.0-alpha04, androidx.compose.animation:animation-core:1.4.0-alpha04 และ androidx.compose.animation:animation-graphics:1.4.0-alpha04 จะเปิดตัว เวอร์ชัน 1.4.0-alpha04 มีคอมมิตต่อไปนี้

ฟีเจอร์ใหม่

  • รองรับป้ายกำกับเครื่องมือใน rememberInfiniteTransition และฟังก์ชันส่วนขยายทั้งหมดใน InfiniteTransition และ Transition (เช่น InfiniteTransition#animateColor) (I56ef7)

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

  • ตอนนี้ API ของ InfiniteTransition#TransitionAnimationState และ InfiniteTransition#animations พร้อมให้บริการแก่สาธารณะแล้ว (I36682)

เวอร์ชัน 1.4.0-alpha03

7 ธันวาคม 2022

androidx.compose.animation:animation:1.4.0-alpha03, androidx.compose.animation:animation-core:1.4.0-alpha03 และ androidx.compose.animation:animation-graphics:1.4.0-alpha03 จะเปิดตัว เวอร์ชัน 1.4.0-alpha03 มีคอมมิตเหล่านี้

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

  • ในการทดสอบ UI โดยใช้กฎ Compose ระบบจะไม่ส่งต่อการดำเนินการต่อที่กลับมาทำงานอีกครั้งในระหว่างการเรียกกลับ withFrameNanos จนกว่าการเรียกกลับของเฟรมทั้งหมดจะทำงานเสร็จ ซึ่งจะตรงกับลักษณะการทำงานของ Compose เมื่อเรียกใช้ตามปกติ อย่างไรก็ตาม การทดสอบที่อิงตามลักษณะการทำงานแบบเก่าอาจล้มเหลว การเปลี่ยนแปลงนี้ควรส่งผลต่อโค้ดที่เรียกใช้ withFrameNanos หรือ withFrameMillis โดยตรงเท่านั้น และมีตรรกะภายนอก Callback ที่ส่งไปยังฟังก์ชันเหล่านั้น ซึ่งอาจต้องย้ายไปไว้ภายใน Callback ดูการเปลี่ยนแปลงการทดสอบภาพเคลื่อนไหวได้ใน CL นี้เพื่อดูตัวอย่าง
  • เพิ่มพารามิเตอร์ onPerformTraversals: (Long) -> Unit ที่ไม่บังคับลงในตัวสร้าง TestMonotonicFrameClock และฟังก์ชัน Factory เพื่อเรียกใช้โค้ดหลังจาก Callback ของ withFrameNanos แต่ก่อนที่จะกลับมาใช้ Coroutine ของผู้โทร (Idb413, b/254115946, b/222093277, b/255802670)
  • พารามิเตอร์ใหม่ใน AnimatedContent สำหรับป้ายกำกับเครื่องมือ (Iebe2d)

เวอร์ชัน 1.4.0-alpha02

9 พฤศจิกายน 2022

androidx.compose.animation:animation:1.4.0-alpha02, androidx.compose.animation:animation-core:1.4.0-alpha02 และ androidx.compose.animation:animation-graphics:1.4.0-alpha02 จะเปิดตัว เวอร์ชัน 1.4.0-alpha02 มีคอมมิตเหล่านี้

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

  • เพิ่ม ToolingState เพื่ออนุญาตให้เครื่องมือเปลี่ยนสถานะภายในของ Composable (Ie6614)

เวอร์ชัน 1.4.0-alpha01

24 ตุลาคม 2022

androidx.compose.animation:animation:1.4.0-alpha01, androidx.compose.animation:animation-core:1.4.0-alpha01 และ androidx.compose.animation:animation-graphics:1.4.0-alpha01 จะเปิดตัว เวอร์ชัน 1.4.0-alpha01 มีคอมมิตเหล่านี้

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

  • แก้ไขภาพเคลื่อนไหวการขัดจังหวะที่ไม่ถูกต้องใน AnimatedContent (b/238662479)

เวอร์ชัน 1.3

เวอร์ชัน 1.3.3

11 มกราคม 2023

androidx.compose.animation:animation:1.3.3, androidx.compose.animation:animation-core:1.3.3 และ androidx.compose.animation:animation-graphics:1.3.3 จะเปิดตัว เวอร์ชัน 1.3.3 มีคอมมิตต่อไปนี้

  • ไม่มีการเปลี่ยนแปลงตั้งแต่เวอร์ชัน 1.3.2

เวอร์ชัน 1.3.2

7 ธันวาคม 2022

androidx.compose.animation:animation:1.3.2, androidx.compose.animation:animation-core:1.3.2 และ androidx.compose.animation:animation-graphics:1.3.2 จะเปิดตัว เวอร์ชัน 1.3.2 มีคอมมิตเหล่านี้

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

  • อัปเดตเพื่อรองรับ androidx.compose.ui 1.3.2

เวอร์ชัน 1.3.1

9 พฤศจิกายน 2022

androidx.compose.animation:animation:1.3.1, androidx.compose.animation:animation-core:1.3.1 และ androidx.compose.animation:animation-graphics:1.3.1 จะเปิดตัว เวอร์ชัน 1.3.1 มีคอมมิตเหล่านี้

เวอร์ชัน 1.3.0

24 ตุลาคม 2022

androidx.compose.animation:animation:1.3.0, androidx.compose.animation:animation-core:1.3.0 และ androidx.compose.animation:animation-graphics:1.3.0 จะเปิดตัว เวอร์ชัน 1.3.0 มีคอมมิตต่อไปนี้

การเปลี่ยนแปลงสำคัญตั้งแต่เวอร์ชัน 1.2.0

  • ทำให้ฟังก์ชันการเปลี่ยนภาพชุดใหม่เสถียร

เวอร์ชัน 1.3.0-rc01

5 ตุลาคม 2022

androidx.compose.animation:animation:1.3.0-rc01, androidx.compose.animation:animation-core:1.3.0-rc01 และ androidx.compose.animation:animation-graphics:1.3.0-rc01 จะเปิดตัว เวอร์ชัน 1.3.0-rc01 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.3.0-beta03

21 กันยายน 2022

androidx.compose.animation:animation:1.3.0-beta03, androidx.compose.animation:animation-core:1.3.0-beta03 และ androidx.compose.animation:animation-graphics:1.3.0-beta03 จะเปิดตัว เวอร์ชัน 1.3.0-beta03 มีคอมมิตเหล่านี้

  • ไม่มีการเปลี่ยนแปลงตั้งแต่ 1.3.0-beta02

เวอร์ชัน 1.3.0-beta02

7 กันยายน 2022

androidx.compose.animation:animation:1.3.0-beta02, androidx.compose.animation:animation-core:1.3.0-beta02 และ androidx.compose.animation:animation-graphics:1.3.0-beta02 จะเปิดตัว เวอร์ชัน 1.3.0-beta02 มีคอมมิตเหล่านี้

  • นำ Kotlin.experimental ออกจากตัวเลือกคอมไพเลอร์เนื่องจากเลิกใช้งานแล้ว

เวอร์ชัน 1.3.0-beta01

24 สิงหาคม 2022

androidx.compose.animation:animation:1.3.0-beta01, androidx.compose.animation:animation-core:1.3.0-beta01 และ androidx.compose.animation:animation-graphics:1.3.0-beta01 จะเปิดตัว เวอร์ชัน 1.3.0-beta01 มีคอมมิตเหล่านี้

เวอร์ชัน 1.3.0-alpha03

10 สิงหาคม 2022

androidx.compose.animation:animation:1.3.0-alpha03, androidx.compose.animation:animation-core:1.3.0-alpha03 และ androidx.compose.animation:animation-graphics:1.3.0-alpha03 จะเปิดตัว เวอร์ชัน 1.3.0-alpha03 มีคอมมิตเหล่านี้

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

  • พารามิเตอร์ใหม่ใน Crossfade, animateAsState และ Animatable สำหรับป้ายกำกับเครื่องมือ (Iac08a)
  • เพิ่มฟังก์ชัน atFraction สำหรับกำหนดคีย์เฟรมเป็นเศษส่วนแทนที่จะเป็นระยะเวลาที่เฉพาะเจาะจง (I20c76, b/232059455)

เวอร์ชัน 1.3.0-alpha02

27 กรกฎาคม 2022

androidx.compose.animation:animation:1.3.0-alpha02, androidx.compose.animation:animation-core:1.3.0-alpha02 และ androidx.compose.animation:animation-graphics:1.3.0-alpha02 จะเปิดตัว เวอร์ชัน 1.3.0-alpha02 มีคอมมิตเหล่านี้

เวอร์ชัน 1.3.0-alpha01

29 มิถุนายน 2022

androidx.compose.animation:animation:1.3.0-alpha01, androidx.compose.animation:animation-core:1.3.0-alpha01 และ androidx.compose.animation:animation-graphics:1.3.0-alpha01 จะเปิดตัว เวอร์ชัน 1.3.0-alpha01 มีคอมมิตเหล่านี้

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

  • LookaheadLayout ใหม่ที่รองรับการส่งผ่านล่วงหน้าก่อนการวัด/เลย์เอาต์จริง ซึ่งจะช่วยให้คำนวณเลย์เอาต์ล่วงหน้าได้เมื่อมีการเปลี่ยนแปลง ขณะเดียวกันก็อนุญาตให้การวัด/เลย์เอาต์หลังการมองไปข้างหน้าใช้ขนาด/ตำแหน่งที่คำนวณไว้ล่วงหน้าเพื่อเคลื่อนไหวขนาดและตำแหน่งไปยังเป้าหมาย SubcomposeLayouts ยังไม่รองรับ แต่จะรองรับในรุ่นที่จะเปิดตัวเร็วๆ นี้ (I477f5)

เวอร์ชัน 1.2

เวอร์ชัน 1.2.1

10 สิงหาคม 2022

androidx.compose.animation:animation:1.2.1, androidx.compose.animation:animation-core:1.2.1 และ androidx.compose.animation:animation-graphics:1.2.1 จะเปิดตัว เวอร์ชัน 1.2.1 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.2.0

27 กรกฎาคม 2022

androidx.compose.animation:animation:1.2.0, androidx.compose.animation:animation-core:1.2.0 และ androidx.compose.animation:animation-graphics:1.2.0 จะเปิดตัว เวอร์ชัน 1.2.0 มีคอมมิตเหล่านี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.1.0

  • ตอนนี้ Compose Animation รองรับการตั้งค่า "Animator duration scale" จากตัวเลือกสำหรับนักพัฒนาแอปแล้ว
  • มีเส้นโค้งการผ่อนคลายแบบทดลองใหม่ๆ ให้เลือกมากมาย
  • AnimatedImageVector รองรับ repeatCount และ repeatMode แล้วในขณะนี้

เวอร์ชัน 1.2.0-rc03

29 มิถุนายน 2022

androidx.compose.animation:animation:1.2.0-rc03, androidx.compose.animation:animation-core:1.2.0-rc03 และ androidx.compose.animation:animation-graphics:1.2.0-rc03 จะเปิดตัว เวอร์ชัน 1.2.0-rc03 มีคอมมิตต่อไปนี้

  • ไม่มีการเปลี่ยนแปลงตั้งแต่ 1.2.0-rc02

เวอร์ชัน 1.2.0-rc02

22 มิถุนายน 2022

androidx.compose.animation:animation:1.2.0-rc02, androidx.compose.animation:animation-core:1.2.0-rc02 และ androidx.compose.animation:animation-graphics:1.2.0-rc02 จะเปิดตัว เวอร์ชัน 1.2.0-rc02 มีคอมมิตต่อไปนี้

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

  • นำคำอธิบายประกอบ ExperimentalEasingApi ออกจากฟังก์ชันการค่อยๆ เปลี่ยน (Ied441)

เวอร์ชัน 1.2.0-rc01

15 มิถุนายน 2022

androidx.compose.animation:animation:1.2.0-rc01, androidx.compose.animation:animation-core:1.2.0-rc01 และ androidx.compose.animation:animation-graphics:1.2.0-rc01 จะเปิดตัว เวอร์ชัน 1.2.0-rc01 มีคอมมิตเหล่านี้

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

  • ตอนนี้อินเทอร์เฟซในไลบรารี Compose สร้างขึ้นโดยใช้เมธอดอินเทอร์เฟซเริ่มต้นของ jdk8 (I5bcf1)

เวอร์ชัน 1.2.0-beta03

1 มิถุนายน 2022

androidx.compose.animation:animation:1.2.0-beta03, androidx.compose.animation:animation-core:1.2.0-beta03 และ androidx.compose.animation:animation-graphics:1.2.0-beta03 จะเปิดตัว เวอร์ชัน 1.2.0-beta03 มีคอมมิตเหล่านี้

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

  • เพิ่มเส้นโค้งการค่อยๆ เปลี่ยนเวอร์ชันทดลองสำหรับภาพเคลื่อนไหว (I64a38)

เวอร์ชัน 1.2.0-beta02

18 พฤษภาคม 2022

androidx.compose.animation:animation:1.2.0-beta02, androidx.compose.animation:animation-core:1.2.0-beta02 และ androidx.compose.animation:animation-graphics:1.2.0-beta02 จะเปิดตัว เวอร์ชัน 1.2.0-beta02 มีคอมมิตเหล่านี้

เวอร์ชัน 1.2.0-beta01

11 พฤษภาคม 2022

androidx.compose.animation:animation:1.2.0-beta01, androidx.compose.animation:animation-core:1.2.0-beta01 และ androidx.compose.animation:animation-graphics:1.2.0-beta01 จะเปิดตัว เวอร์ชัน 1.2.0-beta01 มีคอมมิตเหล่านี้

  • นี่คือเวอร์ชันเบต้า 1.2 รุ่นแรก ไม่มีการเปลี่ยนแปลงใดๆ นับตั้งแต่เวอร์ชันอัลฟ่าล่าสุด

เวอร์ชัน 1.2.0-alpha08

20 เมษายน 2022

androidx.compose.animation:animation:1.2.0-alpha08, androidx.compose.animation:animation-core:1.2.0-alpha08 และ androidx.compose.animation:animation-graphics:1.2.0-alpha08 จะเปิดตัว เวอร์ชัน 1.2.0-alpha08 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.2.0-alpha07

6 เมษายน 2022

androidx.compose.animation:animation:1.2.0-alpha07, androidx.compose.animation:animation-core:1.2.0-alpha07 และ androidx.compose.animation:animation-graphics:1.2.0-alpha07 จะเปิดตัว เวอร์ชัน 1.2.0-alpha07 มีคอมมิตเหล่านี้

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

  • AnimatedImageVector รองรับ repeatCount และ repeatMode แล้ว (Ia3e75, b/199304067)

เวอร์ชัน 1.2.0-alpha06

23 มีนาคม 2022

androidx.compose.animation:animation:1.2.0-alpha06, androidx.compose.animation:animation-core:1.2.0-alpha06 และ androidx.compose.animation:animation-graphics:1.2.0-alpha06 จะเปิดตัว เวอร์ชัน 1.2.0-alpha06 มีคอมมิตต่อไปนี้

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

  • อัปเดตการแยกวิเคราะห์ Vector Drawable เพื่อรองรับการมิเรอร์อัตโนมัติเพื่อพลิกเนื้อหาของ VectorPainter หากทิศทางเลย์เอาต์ปัจจุบันเป็น RTL (I79cd9, b/185760237)

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

  • อัปเดต API กราฟิกแบบเวกเตอร์ให้ใช้คำอธิบายประกอบที่ประกอบได้ที่เหมาะสม @VectorComposable แทน @UiComposable (I942bc)

เวอร์ชัน 1.2.0-alpha05

9 มีนาคม 2022

androidx.compose.animation:animation:1.2.0-alpha05, androidx.compose.animation:animation-core:1.2.0-alpha05 และ androidx.compose.animation:animation-graphics:1.2.0-alpha05 จะเปิดตัว เวอร์ชัน 1.2.0-alpha05 มีคอมมิตต่อไปนี้

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

  • ไชโย! ตอนนี้ฟีเจอร์ Compose Animation รองรับการตั้งค่า "สเกลระยะเวลาของ Animator" จากตัวเลือกสำหรับนักพัฒนาแอปแล้ว (I5a4fc, b/161675988)

เวอร์ชัน 1.2.0-alpha04

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

androidx.compose.animation:animation:1.2.0-alpha04, androidx.compose.animation:animation-core:1.2.0-alpha04 และ androidx.compose.animation:animation-graphics:1.2.0-alpha04 จะเปิดตัว เวอร์ชัน 1.2.0-alpha04 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.2.0-alpha03

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

androidx.compose.animation:animation:1.2.0-alpha03, androidx.compose.animation:animation-core:1.2.0-alpha03 และ androidx.compose.animation:animation-graphics:1.2.0-alpha03 จะเปิดตัว เวอร์ชัน 1.2.0-alpha03 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.2.0-alpha02

26 มกราคม 2022

androidx.compose.animation:animation:1.2.0-alpha02, androidx.compose.animation:animation-core:1.2.0-alpha02 และ androidx.compose.animation:animation-graphics:1.2.0-alpha02 จะเปิดตัว เวอร์ชัน 1.2.0-alpha02 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.2.0-alpha01

12 มกราคม 2022

androidx.compose.animation:animation:1.2.0-alpha01, androidx.compose.animation:animation-core:1.2.0-alpha01 และ androidx.compose.animation:animation-graphics:1.2.0-alpha01 จะเปิดตัว เวอร์ชัน 1.2.0-alpha01 มีคอมมิตเหล่านี้

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

  • ใช้ AnimatedImageVector.animatedVectorResource แทน animatedVectorResource เพื่อโหลดไฟล์ทรัพยากร <animated-vector>
    • ใช้ rememberAnimatedVectorResource แทน AnimatedImageVector#painterFor เพื่อแสดงผล AnimatedImageVector (I9c300)

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

  • เพิ่มเมธอด toString ลงใน Animatable และ AnimationResult (Icd3a6)

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

  • ตอนนี้ขึ้นอยู่กับ Kotlin 1.6.10

เวอร์ชัน 1.1

เวอร์ชัน 1.1.1

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

androidx.compose.animation:animation:1.1.1, androidx.compose.animation:animation-core:1.1.1 และ androidx.compose.animation:animation-graphics:1.1.1 จะเปิดตัว เวอร์ชัน 1.1.1 มีคอมมิตต่อไปนี้

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

  • แก้ไข NullPointerException ที่ androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList (aosp/1947059, b/206677462)
  • แก้ไขข้อขัดข้องที่เกิดจากเนื้อหาในคลิปบอร์ดขณะอ่านจาก คลิปบอร์ดใน Android (I06020, b/197769306)
  • แก้ไข RTL ใน LazyVerticalGrid (aosp/1931080, b/207510535)

เวอร์ชัน 1.1.0

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

androidx.compose.animation:animation:1.1.0, androidx.compose.animation:animation-core:1.1.0 และ androidx.compose.animation:animation-graphics:1.1.0 จะเปิดตัว เวอร์ชัน 1.1.0 มีคอมมิตต่อไปนี้

การเปลี่ยนแปลงที่สำคัญตั้งแต่เวอร์ชัน 1.0.0

  • การรองรับเอฟเฟกต์การเลื่อนเกินของ Android 12 อย่างเสถียร
  • การปรับปรุงการกำหนดขนาดเป้าหมายการสัมผัส
  • โปรดทราบว่าใน Compose 1.0 คอมโพเนนต์ Material จะขยายพื้นที่เลย์เอาต์เพื่อให้เป็นไปตามหลักเกณฑ์ด้านการช่วยเหลือพิเศษของ Material สำหรับขนาดเป้าหมายการสัมผัส ตัวอย่างเช่น เป้าหมายการสัมผัสของปุ่มจะขยายเป็นขนาดขั้นต่ำ 48x48dp แม้ว่าคุณจะตั้งค่าขนาดของปุ่มให้เล็กลงก็ตาม ซึ่งจะทําให้ Compose Material มีลักษณะการทํางานเหมือนกับคอมโพเนนต์ Material Design และทําให้มีลักษณะการทํางานที่สอดคล้องกันหากคุณใช้ทั้ง View และ Compose การเปลี่ยนแปลงนี้ยังช่วยให้มั่นใจได้ว่าเมื่อคุณสร้าง UI โดยใช้คอมโพเนนต์ Material ของ Compose ระบบจะปฏิบัติตามข้อกำหนดขั้นต่ำสำหรับการช่วยเหลือพิเศษของเป้าหมายการสัมผัส
  • การรองรับ Navigation Rail อย่างเสถียร
  • เปลี่ยน API แบบทดลองก่อนหน้านี้หลายรายการให้เป็น API ที่เสถียร
  • การรองรับ Kotlin เวอร์ชันใหม่กว่า

เวอร์ชัน 1.1.0-rc03

26 มกราคม 2022

androidx.compose.animation:animation:1.1.0-rc03, androidx.compose.animation:animation-core:1.1.0-rc03 และ androidx.compose.animation:animation-graphics:1.1.0-rc03 จะเปิดตัว เวอร์ชัน 1.1.0-rc03 มีคอมมิตเหล่านี้

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

  • อัปเดตเพื่อรองรับ Compose Material 1.1.0-rc03

เวอร์ชัน 1.1.0-rc01

15 ธันวาคม 2021

androidx.compose.animation:animation:1.1.0-rc01 และ androidx.compose.animation:animation-core:1.1.0-rc01 เปิดตัวแล้ว เวอร์ชัน 1.1.0-rc01 มีคอมมิตต่อไปนี้

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

  • ใช้ AnimatedImageVector.animatedVectorResource แทน animatedVectorResource เพื่อโหลดไฟล์ทรัพยากร <animated-vector>
    • ใช้ rememberAnimatedVectorResource แทน AnimatedImageVector#painterFor เพื่อแสดงผล AnimatedImageVector (I9c300)

เวอร์ชัน 1.1.0-beta04

1 ธันวาคม 2021

androidx.compose.animation:animation:1.1.0-beta04, androidx.compose.animation:animation-core:1.1.0-beta04 และ androidx.compose.animation:animation-graphics:1.1.0-beta04 จะเปิดตัว เวอร์ชัน 1.1.0-beta04 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • อัปเดตให้เข้ากันได้กับ Kotlin 1.6.0

เวอร์ชัน 1.1.0-beta03

17 พฤศจิกายน 2021

androidx.compose.animation:animation:1.1.0-beta03, androidx.compose.animation:animation-core:1.1.0-beta03 และ androidx.compose.animation:animation-graphics:1.1.0-beta03 จะเปิดตัว เวอร์ชัน 1.1.0-beta03 มีคอมมิตเหล่านี้

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

  • เพิ่มตัวแก้ไข Modifier.onPlaced ใหม่เพื่อให้สังเกตการเปลี่ยนแปลงการวางได้ ดังนั้นจึงสามารถทำการเปลี่ยนแปลงเพิ่มเติมในออฟเซ็ตของตัวปรับแต่งย่อยได้ตาม การเปลี่ยนแปลงตำแหน่งที่สังเกตได้ (I558fd)
  • รองรับ contentKey ใหม่ในครอสเฟด ระบบภาพเคลื่อนไหวจะใช้ ContentKey เพื่อตรวจสอบความเท่าเทียม ดังนั้น คุณจึงทำการเปรียบเทียบที่กำหนดเองในสถานะได้โดยการระบุ contentKey ที่เหมาะสมสำหรับสถานะต่างๆ

    นอกจากนี้ ระบบจะใช้ ContentKey เป็นคีย์สำหรับบันทึกและกู้คืนเนื้อหาด้วย (I2e055, b/197907070)

เวอร์ชัน 1.1.0-beta02

3 พฤศจิกายน 2021

androidx.compose.animation:animation:1.1.0-beta02, androidx.compose.animation:animation-core:1.1.0-beta02 และ androidx.compose.animation:animation-graphics:1.1.0-beta02 จะเปิดตัว เวอร์ชัน 1.1.0-beta02 มีคอมมิตเหล่านี้

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

  • API ภาพเคลื่อนไหวใหม่สำหรับการรองรับเครื่องมือ กล่าวคือ อนุญาตให้เครื่องมือตรวจสอบภาพเคลื่อนไหวและการกำหนดค่าใน ทรานซิชัน (I4116e)

เวอร์ชัน 1.1.0-beta01

27 ตุลาคม 2021

androidx.compose.animation:animation:1.1.0-beta01, androidx.compose.animation:animation-core:1.1.0-beta01 และ androidx.compose.animation:animation-graphics:1.1.0-beta01 จะเปิดตัว เวอร์ชัน 1.1.0-beta01 มีการคอมมิตต่อไปนี้

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

  • API ภาพเคลื่อนไหวใหม่สำหรับการรองรับเครื่องมือ กล่าวคือ อนุญาตให้เครื่องมือตรวจสอบภาพเคลื่อนไหวและการกำหนดค่าใน ทรานซิชัน (I4116e)

เวอร์ชัน 1.1.0-alpha06

13 ตุลาคม 2021

androidx.compose.animation:animation:1.1.0-alpha06, androidx.compose.animation:animation-core:1.1.0-alpha06 และ androidx.compose.animation:animation-graphics:1.1.0-alpha06 จะเปิดตัว เวอร์ชัน 1.1.0-alpha06 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.1.0-alpha05

29 กันยายน 2021

androidx.compose.animation:animation:1.1.0-alpha05, androidx.compose.animation:animation-core:1.1.0-alpha05 และ androidx.compose.animation:animation-graphics:1.1.0-alpha05 จะเปิดตัว เวอร์ชัน 1.1.0-alpha05 มีคอมมิตต่อไปนี้

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

  • EnterTransition, ExitTransition และ API บางส่วนของ AnimatedVisibility ได้รับการอัปเดตให้เสถียรแล้ว MutableTransitionState.isIdle ไม่ใช่ฟีเจอร์ทดลองอีกต่อไป (I5072d)

  • การเปลี่ยนแปลงที่ทำให้เกิดข้อขัดข้อง: ระบบได้ย้าย Lambda ในโรงงาน Enter/ExitTransition ไปยังตำแหน่งสุดท้ายในรายการพารามิเตอร์แล้ว (I5072d)

เวอร์ชัน 1.1.0-alpha04

15 กันยายน 2021

androidx.compose.animation:animation:1.1.0-alpha04, androidx.compose.animation:animation-core:1.1.0-alpha04 และ androidx.compose.animation:animation-graphics:1.1.0-alpha04 จะเปิดตัว เวอร์ชัน 1.1.0-alpha04 มีคอมมิตต่อไปนี้

เวอร์ชัน 1.1.0-alpha03

1 กันยายน 2021

androidx.compose.animation:animation:1.1.0-alpha03, androidx.compose.animation:animation-core:1.1.0-alpha03 และ androidx.compose.animation:animation-graphics:1.1.0-alpha03 จะเปิดตัว เวอร์ชัน 1.1.0-alpha03 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • อัปเดต Compose 1.1.0-alpha03 ให้ขึ้นอยู่กับ 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 รองรับใน repeatable และ infiniteRepeatable แล้ว ซึ่งเป็นวิธีหน่วงเวลาเริ่มต้นหรือ กรอไปข้างหน้าของภาพเคลื่อนไหวก่อนที่ภาพเคลื่อนไหวจะเริ่ม ออฟเซ็ตการเริ่มต้นนี้จะไม่ซ้ำกัน (Ic679f, b/195079908)
  • การเปลี่ยนฉากเข้า/ออกใหม่สำหรับมาตราส่วน โดยใช้ร่วมกับ Enter/ExitTransition ประเภทอื่นๆ ได้ (I372da, b/191325593)

เวอร์ชัน 1.1.0-alpha01

4 สิงหาคม 2021

androidx.compose.animation:animation:1.1.0-alpha01, androidx.compose.animation:animation-core:1.1.0-alpha01 และ androidx.compose.animation:animation-graphics:1.1.0-alpha01 จะเปิดตัว เวอร์ชัน 1.1.0-alpha01 มีคอมมิตต่อไปนี้

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

  • AnimatedImageVector และ API ที่เกี่ยวข้องอยู่ในโมดูลใหม่ androidx.compose.animation:animation-graphics แล้ว (I60873)

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

  • ย้าย InfiniteAnimationPolicy ไปยัง :compose:ui (I5eb09, b/160602714)

รุ่น 1.0

เวอร์ชัน 1.0.5

3 พฤศจิกายน 2021

androidx.compose.animation:animation:1.0.5 และ androidx.compose.animation:animation-core:1.0.5 เปิดตัวแล้ว เวอร์ชัน 1.0.5 มีคอมมิตเหล่านี้

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

  • แก้ไขข้อขัดข้องในการติดตามอินสแตนซ์ derivedStateOf (aosp/1792247)

เวอร์ชัน 1.0.4

13 ตุลาคม 2021

androidx.compose.animation:animation:1.0.4 และ androidx.compose.animation:animation-core:1.0.4 เปิดตัวแล้ว เวอร์ชัน 1.0.4 มีคอมมิตเหล่านี้

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

  • อัปเดตให้ขึ้นอยู่กับ Kotlin 1.5.31

เวอร์ชัน 1.0.3

29 กันยายน 2021

androidx.compose.animation:animation:1.0.3 และ androidx.compose.animation:animation-core:1.0.3 เปิดตัวแล้ว เวอร์ชัน 1.0.3 มีคอมมิตต่อไปนี้

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

  • อัปเดตให้ขึ้นอยู่กับ Kotlin 1.5.30

เวอร์ชัน 1.0.2

1 กันยายน 2021

androidx.compose.animation:animation:1.0.2 และ androidx.compose.animation:animation-core:1.0.2 เปิดตัวแล้ว เวอร์ชัน 1.0.2 มีคอมมิตต่อไปนี้

อัปเดตเพื่อรองรับการเปิดตัว Compose 1.0.2 Compose 1.0.2 ยังคงใช้ได้กับ Kotlin 1.5.21

เวอร์ชัน 1.0.1

4 สิงหาคม 2021

androidx.compose.animation:animation:1.0.1 และ androidx.compose.animation:animation-core:1.0.1 เปิดตัวแล้ว เวอร์ชัน 1.0.1 มีคอมมิตต่อไปนี้

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

  • อัปเดตให้ขึ้นอยู่กับ Kotlin 1.5.21

เวอร์ชัน 1.0.0

28 กรกฎาคม 2021

androidx.compose.animation:animation:1.0.0 และ androidx.compose.animation:animation-core:1.0.0 เปิดตัวแล้ว เวอร์ชัน 1.0.0 มีคอมมิตเหล่านี้

ฟีเจอร์หลักของเวอร์ชัน 1.0.0

นี่คือ Compose เวอร์ชันเสถียรเวอร์ชันแรก โปรดดูรายละเอียดเพิ่มเติมในบล็อกการเปิดตัว Compose อย่างเป็นทางการ

ปัญหาที่ทราบ

  • หากคุณใช้ Android Studio Bumblebee Canary 4 หรือ AGP 7.1.0-alpha04/7.1.0-alpha05 คุณอาจพบข้อขัดข้องต่อไปนี้

      java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"
    

    หากต้องการแก้ไข ให้เพิ่ม minSdkVersion เป็น 24 ขึ้นไปชั่วคราวในไฟล์ build.gradle ปัญหานี้จะได้รับการแก้ไขใน Android Studio Bumblebee และ 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

  • Composable AnimatedContent ใหม่ โดยจะจัดการการเปลี่ยนแปลงเนื้อหาโดยใช้ ContentTransform ที่ปรับแต่งได้เมื่อเนื้อหาเป้าหมายใหม่เข้ามาและเนื้อหาเริ่มต้นออกไป คุณสามารถใช้การเปลี่ยนฉากเข้า และออกร่วมกันในรูปแบบต่างๆ เพื่อสร้างรูปลักษณ์และความรู้สึกที่กำหนดเองได้ AnimatedContent จะปรับขนาดโดยอัตโนมัติให้ตรงกับเนื้อหาที่เข้ามา ซึ่งเป็นส่วนหนึ่งของการเปลี่ยนรูปแบบเนื้อหา (I2c3df)
  • นำ ManualFrameClock ออกแล้ว หากต้องการควบคุมภาพเคลื่อนไหว ให้ใช้ composeTestRule.mainClock แทน (I3c3e8, b/189951065)

กฎโปรไฟล์ที่เพิ่ม

การเปิดตัวนี้จะเพิ่มกฎโปรไฟล์ลงในโมดูลการเขียนต่อไปนี้ (I14ed6)

  • androidx.compose.animation
  • androidx.compose.animation-core
  • androidx.compose.foundation
  • androidx.compose.foundation-layout
  • androidx.compose.material
  • androidx.compose.material-ripple
  • androidx.compose.runtime
  • androidx.compose.ui
  • androidx.compose.ui.geometry
  • androidx.compose.ui.graphics
  • androidx.compose.ui.text
  • androidx.compose.ui.text
  • androidx.compose.ui.unit
  • androidx.compose.ui.util

กฎของโปรไฟล์คืออะไร

  • กฎโปรไฟล์สำหรับไลบรารีจะระบุไว้ในไฟล์ข้อความ baseline-prof.txt ซึ่งอยู่ในไดเรกทอรี src/main หรือไดเรกทอรีที่เทียบเท่า ไฟล์จะระบุกฎต่อบรรทัด โดยในกรณีนี้กฎคือรูปแบบสำหรับการจับคู่กับเมธอดหรือคลาสในไลบรารี ไวยากรณ์ของกฎเหล่านี้เป็นซูเปอร์เซ็ตของรูปแบบโปรไฟล์ ART ที่มนุษย์อ่านได้ ซึ่งใช้เมื่อใช้ adb shell profman --dump-classes-and-methods ... กฎเหล่านี้มี 2 รูปแบบเพื่อกำหนดเป้าหมายไปยังเมธอดหรือคลาส

  • กฎของเมธอดจะมีรูปแบบต่อไปนี้

    <FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
    
  • และกฎของชั้นเรียนจะมีรูปแบบดังนี้

    <CLASS_DESCRIPTOR>
    
  • โดย <FLAGS> คืออักขระ H, S และ P อย่างน้อย 1 ตัวเพื่อระบุว่าควรติดป้ายกำกับเมธอดนี้เป็น "มาแรง" "สตาร์ทอัป" หรือ "หลังสตาร์ทอัป" หรือไม่

  • <CLASS_DESCRIPTOR> คือตัวอธิบายสำหรับคลาสที่เมธอดเป้าหมายเป็นของ เช่น คลาส androidx.compose.runtime.SlotTable จะมีตัวอธิบายเป็น Landroidx/compose/runtime/SlotTable;

  • <METHOD_SIGNATURE> คือลายเซ็นของเมธอด ซึ่งรวมถึงชื่อ ประเภทพารามิเตอร์ และประเภทการคืนค่าของเมธอด เช่น เมธอด fun isPlaced(): Boolean ใน LayoutNode มีลายเซ็น isPlaced()Z

  • รูปแบบเหล่านี้มีไวลด์การ์ด (**, * และ ?) ได้เพื่อให้กฎเดียวครอบคลุมหลายวิธีหรือหลายคลาส

กฎมีไว้ทำอะไร

  • เมธอดที่มีแฟล็ก H แสดงว่าเมธอดนี้เป็นเมธอด "ยอดนิยม" และควรคอมไพล์ล่วงหน้า

  • เมธอดที่มีแฟล็ก S แสดงว่าเป็นเมธอดที่เรียกใช้เมื่อเริ่มต้น และควรคอมไพล์ล่วงหน้าเพื่อหลีกเลี่ยงค่าใช้จ่ายในการคอมไพล์และการตีความเมธอดเมื่อเริ่มต้น

  • เมธอดที่มีแฟล็ก P แสดงว่าเป็นเมธอดที่เรียกใช้หลังจากเริ่มต้น

  • คลาสที่มีอยู่ในไฟล์นี้บ่งชี้ว่ามีการใช้คลาสในระหว่างการเริ่มต้นระบบ และควรจัดสรรล่วงหน้าในฮีปเพื่อหลีกเลี่ยงค่าใช้จ่ายในการโหลดคลาส

ระบบนี้ทำงานอย่างไร

  • โดยไลบรารีสามารถกำหนดกฎเหล่านี้ซึ่งจะรวมอยู่ในอาร์ติแฟกต์ AAR เมื่อสร้างแอปที่มีอาร์ติแฟกต์เหล่านี้ ระบบจะผสานกฎเหล่านี้เข้าด้วยกันและใช้กฎที่ผสานแล้วเพื่อสร้างโปรไฟล์ ART แบบไบนารีขนาดกะทัดรัดที่เฉพาะเจาะจงสำหรับแอปนั้นๆ จากนั้น ART จะใช้ประโยชน์จากโปรไฟล์นี้เมื่อติดตั้งแอปในอุปกรณ์เพื่อคอมไพล์ล่วงหน้าซึ่งเป็นชุดย่อยที่เฉพาะเจาะจงของแอปพลิเคชันเพื่อปรับปรุงประสิทธิภาพของแอปพลิเคชัน โดยเฉพาะอย่างยิ่งการเรียกใช้ครั้งแรก โปรดทราบว่าการดำเนินการนี้จะไม่มีผลกับแอปพลิเคชันที่แก้ไขข้อบกพร่องได้

เวอร์ชัน 1.0.0-beta08

2 มิถุนายน 2021

androidx.compose.animation:animation:1.0.0-beta08 และ androidx.compose.animation:animation-core:1.0.0-beta08 เปิดตัวแล้ว เวอร์ชัน 1.0.0-beta08 มีคอมมิตเหล่านี้

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

  • ตอนนี้ detectDragGesures, detectVerticalGestures และ detectHorizontalGestures จะใช้การเปลี่ยนแปลงตำแหน่งโดยอัตโนมัติ ไม่จำเป็นต้องเรียกใช้ change.consumePositionChange ในการเรียกกลับ onDrag (I42fc4, b/185096350, b/187320697)
  • Modifier.onGloballyPositioned() เปลี่ยนเป็นรายงานพิกัดของตัวแก้ไขนี้ในเชนตัวแก้ไข ไม่ใช่พิกัดเลย์เอาต์หลังจากใช้ตัวแก้ไขทั้งหมด ซึ่งหมายความว่าตอนนี้ลำดับของตัวแก้ไขจะส่งผลต่อพิกัดที่จะรายงาน (Ieb67d, b/177926591)

เวอร์ชัน 1.0.0-beta07

18 พฤษภาคม 2021

androidx.compose.animation:animation:1.0.0-beta07 และ androidx.compose.animation:animation-core:1.0.0-beta07 เปิดตัวแล้ว เวอร์ชัน 1.0.0-beta07 มีคอมมิตเหล่านี้

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

  • AnimatedVisibility API ใหม่ที่รองรับการระบุระดับการมองเห็นใน MutableTransitionState นอกจากนี้ยังช่วยให้สังเกตสถานะภาพเคลื่อนไหวภายนอก AnimatedVisibility ผ่าน currentState และ isIdle ได้ด้วย
    • การสนับสนุนการเปลี่ยนเพศของบุตรหลานใน Transition
    • รองรับภาพเคลื่อนไหวของการเปลี่ยนฉากเข้า/ออกที่กำหนดเองใน AnimatedVisibility โดยใช้ AnimationScope.transition
    • ตัวแก้ไข animateEnterExit ใหม่ที่เข้าถึงได้สำหรับองค์ประกอบย่อยทั้งหมดของ AnimatedVisibility
    • เลิกใช้งาน API ของ AnimatedVisibility ที่ใช้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() }
    • แทนที่จะเป็น: Interaction.Pressed in interactionState คุณควรใช้ฟังก์ชันส่วนขยายใน InteractionSource แทน เช่น InteractionSource.collectIsPressedAsState()
    • สำหรับกรณีการใช้งานที่ซับซ้อน คุณสามารถใช้ InteractionSource.interactions เพื่อสังเกตสตรีมของการโต้ตอบได้ ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบและตัวอย่าง InteractionSource
    • (I85965, b/152525426, b/171913923, b/171710801, b/174852378)
  • เปลี่ยนแพ็กเกจของเมธอด smoothScrollBy และ scrollBy เป็น androidx.compose.foundation.gestures.* (I3f7c1, b/175294473)
  • มีการเปลี่ยนชื่อตัวปรับขนาด เปลี่ยนชื่อ Modifier.width/height/size เป็น requiredWidth/requiredHeight/requiredSize เปลี่ยนชื่อ Modifier.preferredWidth/preferredHeight/preferredSize เป็น width/height/size (I5b414)
  • ย้ายการปฐมนิเทศไปไว้ในแพ็กเกจพื้นฐานแล้ว 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 APIs have been removed (If27bc, b/177457083)
  • นำ AnimationEndReason.Interrupted ออกแล้ว ระบบจะส่ง CancellationException หากภาพเคลื่อนไหวถูกขัดจังหวะ (I2cbbc, b/179695417)
  • นำ TargetAnimation API ออกแล้ว (If47d1, b/177457083)

เวอร์ชัน 1.0.0-alpha12

10 กุมภาพันธ์ 2021

androidx.compose.animation:animation:1.0.0-alpha12 และ androidx.compose.animation:animation-core:1.0.0-alpha12 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha12 มีคอมมิตต่อไปนี้

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

  • Modifier.pointerInput ตอนนี้ต้องใช้คีย์ remember เพื่อระบุ เมื่อควรเริ่มโครูทีนการตรวจหาอินพุตของเคอร์เซอร์ใหม่สำหรับ การอ้างอิงใหม่ (I849cd)
  • เปลี่ยนชื่อ Bounds เป็น DpRect (I4b32a) แล้ว
  • รวมชื่อพารามิเตอร์สำหรับ AnimationSpec เป็น animationSpec ในระบบภาพเคลื่อนไหว นอกจากนี้ ให้จำกัด Enter/ExitTransition ให้ยอมรับ FiniteAnimationSpec ด้วย (Ie47c5, b/177457083)
  • ตอนนี้ Animatable.snapTo และ Animatable.stop เป็นฟังก์ชันระงับแล้ว (If4288)
  • เช่นเดียวกับที่เราเคยนำ state { 0 } ที่ใช้ร่วมกันได้ออกไปก่อนหน้านี้ และตอนนี้เรากำลังส่งเสริมการใช้งานอย่าง remember { mutableStateOf(0) } เราจะนำ 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)
  • เปลี่ยนชื่อ RestorableStateHolder เป็น SaveableStateHolder และย้ายไปยังแพ็กเกจ androidx.compose.runtime.saveable เปลี่ยนชื่อเมธอดภายใน RestorableStateProvider เป็น SaveableStateProvider ระบบนำประเภททั่วไปออกเพื่อให้คุณส่ง Any เป็นคีย์ได้ ไม่จำเป็นต้องใช้คำอธิบายประกอบเวอร์ชันทดลองอีกต่อไป (I0902e, b/174598702)
  • อัปเดต Modifier.animateContentSize API ให้สอดคล้องกัน กับระบบภาพเคลื่อนไหวที่เหลือ (I0bf75, b/177457083)
  • ตอนนี้เราเลิกใช้งาน AnimatedValue/Float แล้ว โปรดใช้ Animatable แทน (I71345, b/177457083)
  • เลิกใช้งาน tapGestureFilter, doubleTapGestureFilter, longPressGestureFilter และ pressIndicaitonGestureFilter แล้ว โปรดใช้ Modifier.clickable หรือ Modifier.pointerInput กับฟังก์ชัน detectTapGestures แทน (I6baf9, b/175294473)
  • เพิ่มองค์ประกอบ InfiniteAnimationPolicy CoroutineContext ที่จะใช้ในภาพเคลื่อนไหวแบบวนซ้ำ โดยค่าเริ่มต้น ระบบจะไม่ติดตั้งนโยบายใดๆ ยกเว้นเมื่อเรียกใช้การทดสอบด้วย ComposeTestRule (I50ec4, b/151940543)
  • ระบบได้นำเมธอด Destructuring และ copy() ออกจาก หลายๆ คลาสที่ไม่ได้ใช้บ่อย (I26702, b/178659281)
  • ตอนนี้เวลาในการเล่นในภาพเคลื่อนไหวจะรวมเป็นหน่วยนาโนวินาที (If776a)
  • ตอนนี้เราเลิกใช้งานอาร์ติแฟกต์ compose:runtime-dispatch แล้ว ตอนนี้คุณจะเห็น MonotonicFrameClock ใน compose:runtime และ AndroidUiDispatcher ใน compose:ui (Ib5c36)
  • เพิ่ม Animation.isInfinite และ VectorizedAnimationSpec.isInfinite ที่ส่งสัญญาณว่าภาพเคลื่อนไหวเป็น แบบวนซ้ำหรือไม่ ซึ่งสามารถใช้ในการติดตั้งใช้งานภาพเคลื่อนไหวเพื่อ จัดการภาพเคลื่อนไหวดังกล่าวเป็นพิเศษ เช่น อาจแสดงข้อความพิเศษ "เวลา ที่เหลือ" หรือในระหว่างการทดสอบ อาจยกเลิกภาพเคลื่อนไหว เพื่อป้องกันไม่ให้รอการไม่มีการใช้งานอย่างไม่มีกำหนด (Iebb05, b/151940543)
  • ใช้ Long แทน Uptime เป็นประเภทเวลาของภาพเคลื่อนไหว (Ie3aa7, b/177420019)

เวอร์ชัน 1.0.0-alpha11

28 มกราคม 2021

androidx.compose.animation:animation:1.0.0-alpha11 และ androidx.compose.animation:animation-core:1.0.0-alpha11 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha11 มีคอมมิตต่อไปนี้

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

  • เลิกใช้งานการเปลี่ยนตาม TransitionDefinition แล้ว (I0ac57)
  • เพิ่มฟิลด์ป้ายกำกับสำหรับการเปลี่ยนภาพ และภาพเคลื่อนไหวขององค์ประกอบย่อยเพื่อแสดงในเครื่องมือ (I619fb)
  • ตอนนี้ animateAsState คือ animateFooAsState โดยที่ Foo คือ ประเภทของตัวแปรที่กำลังเคลื่อนไหว เช่น Float, Dp, Offset ฯลฯ (Ie7e25)
  • InfiniteTransition ใหม่ที่เรียกใช้ภาพเคลื่อนไหวของ องค์ประกอบย่อยได้ไม่จำกัด (I1da81)
  • เปลี่ยนอินเทอร์เฟซพารามิเตอร์ที่มีสถานะของ Material ให้มีฟังก์ชัน @Composable ที่แสดงผล State<T> เพิ่ม Animatable.asState() เพื่อให้แปลง Animatable เป็น State ได้ง่ายขึ้น นอกจากนี้ยังเปลี่ยน animateElevation ให้เป็นส่วนขยายระงับใน Animatable (If613c)

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

  • onCommit, onDispose และ onActive ถูกเลิกใช้งานแล้วเพื่อรองรับ SideEffect และ DisposableEffect API (If760e)
  • ตอนนี้รองรับสถานะเริ่มต้นใน updateTransition แล้ว (Ifd51d)
  • เพิ่มพารามิเตอร์คำอธิบายเนื้อหาลงในรูปภาพและไอคอนแล้ว ใช้เพื่ออธิบายบริการการช่วยเหลือพิเศษ (I2ac4c)
  • ตอนนี้เราเลิกใช้งาน invalidate และ compositionReference() แล้ว และแนะนำให้ใช้ currentRecomposeScope และ rememberCompositionReference แทนตามลำดับ (I583a8)
  • ระบบจะแทนที่ระยะเวลาและระยะเวลาทำงานด้วยมิลลิวินาทีแบบยาว และขั้นตอนนี้จะนำทรัพยากร Dependency ของอินพุตของ Pointer ในคลาสเหล่านั้นออก (Ia33b2, b/175142755, b/177420019)
  • ตอนนี้คุณสร้างองค์ประกอบที่คลิกได้ เปิด/ปิดได้ และเลือกได้ภายนอก Composition ได้แล้ว (I0a130, b/172938345, b/175294473)
  • เปลี่ยนการค่อยๆ เปลี่ยนเป็นการลดความเร็วแบบฟังก์ชัน (Ib14e5)
  • items(count: Int) วิธีการจากโรงงานใหม่สำหรับขอบเขตของ LazyColumn/LazyRow/LazyVerticalGrid ตอนนี้ items(items: List) และ itemsIndexed(items: List) เป็นฟังก์ชันส่วนขยายแล้ว คุณจึงต้องนำเข้าด้วยตนเองเมื่อใช้งาน การโอเวอร์โหลดส่วนขยายใหม่สำหรับอาร์เรย์: items(items: Array) และ itemsIndexed(Array) (I803fc, b/175562574)
  • ใช้ประโยชน์จาก TestCoroutineDispatcher ในการทดสอบ (I532b6)
  • นำ PointerInputData ออกและแก้ไข PointerInputChange เพื่อให้มีช่องทั้งหมดของ PointerInputData ทำให้ PointerInputEvent และ PointerInputEventData เป็นแบบภายในเนื่องจากไม่ได้ใช้ใน API สาธารณะใดๆ (Ifff97, b/175142755)

เวอร์ชัน 1.0.0-alpha10

13 มกราคม 2021

androidx.compose.animation:animation:1.0.0-alpha10 และ androidx.compose.animation:animation-core:1.0.0-alpha10 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha10 มีคอมมิตต่อไปนี้

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

  • แก้ไขความเร็วให้มีส่วนประกอบและ การดำเนินการทางคณิตศาสตร์ (Ib0447)
  • เปลี่ยนชื่อ @ExperimentalTesting เป็น @ExperimentalTestApi เพื่อให้ สอดคล้องกับคำอธิบายประกอบ API ทดลองที่คล้ายกัน (Ia4502, b/171464963)
  • เปลี่ยนชื่อตำแหน่งเป็น DpOffset และนำ getDistance() ออก (Ib2dfd)
  • นำ Any.identityHashCode() API สาธารณะออก (I025d7)

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

  • API ใหม่ที่ใช้โครูทีน Animatable ซึ่งรับประกันการแยกกันโดยเด็ดขาด ระหว่างภาพเคลื่อนไหว DecayAnimationSpec ใหม่เพื่อรองรับภาพเคลื่อนไหวแบบลดทอนหลายมิติ (I820f2, b/168014930)
  • ตอนนี้ animate() ถูกแทนที่ด้วย animateAsState() ซึ่งจะแสดงผลเป็น State<T> แทน T ซึ่งจะช่วยให้ประสิทธิภาพดีขึ้น เนื่องจากสามารถจำกัดขอบเขตการลบล้างให้แคบลง ในตำแหน่งที่อ่านค่าสถานะ (Ib179e)

เวอร์ชัน 1.0.0-alpha09

16 ธันวาคม 2020

androidx.compose.animation:animation:1.0.0-alpha09 และ androidx.compose.animation:animation-core:1.0.0-alpha09 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha09 มีคอมมิตต่อไปนี้

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

  • ย้าย Dp.VectorConverter, Position.VectorConverter ฯลฯ ไปยัง animation-core และเลิกใช้งาน VectorConveters เก่า (If0c4b)
  • เปิดตัวชุด API การเปลี่ยนฉากใหม่ทั้งหมดพร้อมด้วย ความสะดวกในการใช้งานที่ดียิ่งขึ้น รวมถึงรองรับภาพเคลื่อนไหวที่เพิ่มแบบไดนามิกและเป้าหมายภาพเคลื่อนไหวที่ คำนวณแบบไดนามิก เราทำเครื่องหมาย API นี้เป็นแบบทดลองเพื่อให้แยกความแตกต่างจาก API ที่อิงตาม TransitionDefinition ได้ง่าย (Ia7fe3)

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

  • ตอนนี้ Lambda ในตัวปรับออฟเซ็ตจะแสดงผล IntOffset แทน Float (Ic9ee5, b/174137212, b/174146755)
  • เลิกใช้งาน LazyColumnFor, LazyRowFor, LazyColumnForIndexed และ LazyRowForIndexed ใช้ LazyColumn และ LazyRow แทน (I5b48c)
  • สำหรับ API การป้อนข้อมูลพอยน์เตอร์ที่ระงับแล้ว เราได้เปลี่ยนชื่อ HandlePointerInputScope เป็น AwaitPointerEventScope และ handlePointerInput() เป็น awaitPointerEventScope() (Idf0a1, b/175142755)
  • ฟังก์ชัน infiniteRepeatable ใหม่สำหรับสร้าง InfiniteRepeatableSpec (I668e5)
  • นำคำอธิบายประกอบ ExperimentalPointerInput ออกแล้ว (Ia7a24)

เวอร์ชัน 1.0.0-alpha08

2 ธันวาคม 2020

androidx.compose.animation:animation:1.0.0-alpha08 และ androidx.compose.animation:animation-core:1.0.0-alpha08 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha08 มีคอมมิตต่อไปนี้

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

  • เพิ่มการตรวจสอบ Lint สำหรับการตั้งชื่อและตำแหน่งของพารามิเตอร์ Lambda ที่ใช้ร่วมกันได้ เพื่อตรวจสอบความสอดคล้องกับหลักเกณฑ์ของ Compose นอกจากนี้ เรายังย้ายข้อมูล API บางรายการโดยใช้ children เป็นชื่อของ Lambda ต่อท้ายไปยัง content ตามการตรวจสอบและคำแนะนำของ Lint (Iec48e)
  • ระบบได้นำ API ที่เลิกใช้งานไปก่อนหน้านี้ออกแล้ว ดังนี้
    • Modifier.onPositioned ถูกนำออกแล้ว ให้ใช้ Modifier.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 APIs เพื่ออำนวยความสะดวกในการใช้ drawLayer
    • เปลี่ยนชื่อ Modifier.drawOpacity เป็น Modifier.alpha
    • เปลี่ยนชื่อ Modifier.drawShadow เป็น Modifier.shadow (I264ca, b/173208140)
  • ทำให้ฟิลด์เวลาทำงานและตำแหน่งของ PointerInputData ไม่เป็นค่าว่าง (Id468a)
  • เปลี่ยนชื่อตัวแก้ไข offsetPx เป็น offset ตอนนี้ฟังก์ชันเหล่านี้รับพารามิเตอร์ Lambda แทน State แล้ว (Ic3021, b/173594846)
  • API ใหม่สำหรับการเรียกใช้ภาพเคลื่อนไหวในโครูทีน (Ied662)
  • เลิกใช้งาน Ambient ที่มี Ambient เป็นคำต่อท้าย และแทนที่ด้วยพร็อพเพอร์ตี้ใหม่ที่ขึ้นต้นด้วย Ambient ตามหลักเกณฑ์อื่นๆ ของ Ambient และ Compose API (I33440)
  • การควบคุมเวลาในการทดสอบ (TestAnimationClock และการใช้งาน) อยู่ในระยะทดลองแล้ว (I6ef86, b/171378521)
  • Remove old ui-test module and its stubs (I3a7cb)
  • เปลี่ยนชื่อฟังก์ชัน RestorableStateHolder.withRestorableState เป็น RestorableStateProvider (I66640)
  • เราได้อัปเดตอินเทอร์เฟซการจัดแนวและทำให้ใช้งานได้ (I46a07, b/172311734)

เวอร์ชัน 1.0.0-alpha07

11 พฤศจิกายน 2020

androidx.compose.animation:animation:1.0.0-alpha07 และ androidx.compose.animation:animation-core:1.0.0-alpha07 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha07 มีคอมมิตต่อไปนี้

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

  • เลิกใช้งาน AmbientTextStyle, ProvideTextStyle และ AmbientContentColor แล้ว แต่ให้ใช้เวอร์ชันใหม่ที่มีอยู่ในคลัง Material แทน สำหรับแอปพลิเคชันที่ไม่ใช่ Material คุณควรสร้างระบบการออกแบบของคุณเองแทน โดยเฉพาะอย่างยิ่งธีมแอมเบียนต์ที่สามารถใช้ในคอมโพเนนต์ของคุณเองได้ (I74acc, b/172067770)
  • เลิกใช้งาน foundation.Text แล้วและแทนที่ด้วย material.Text หากต้องการใช้ API ข้อความพื้นฐานที่ไม่แสดงความคิดเห็นซึ่งไม่ได้ใช้ค่าจากธีม โปรดดู androidx.compose.foundation.BasicText (If64cb)
  • ย้าย MeasureResult ออกจาก MeasureScope (Ibf96d, b/171184002)
  • เราได้ย้ายสัญลักษณ์ที่เกี่ยวข้องกับเลย์เอาต์หลายรายการจาก androidx.compose.ui ไปยัง androidx.compose.layout.ui (I0fa98, b/170475424)

เวอร์ชัน 1.0.0-alpha06

28 ตุลาคม 2020

androidx.compose.animation:animation:1.0.0-alpha06 และ androidx.compose.animation:animation-core:1.0.0-alpha06 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha06 มีคอมมิตเหล่านี้

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

  • เปิดใช้การเปลี่ยนฉากใน ComposeTestRule และนำตัวเลือกในการ เปิดใช้เคอร์เซอร์กะพริบออกจาก ComposeTestRule (If0de3)

เวอร์ชัน 1.0.0-alpha05

14 ตุลาคม 2020

androidx.compose.animation:animation:1.0.0-alpha05 และ androidx.compose.animation:animation-core:1.0.0-alpha05 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha05 มีคอมมิตต่อไปนี้

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

  • อินเทอร์เฟซและคลาสย่อยของภาพเคลื่อนไหวใหม่: คลาสเหล่านี้ จัดเก็บเงื่อนไขเริ่มต้นและสิ้นสุดสำหรับภาพเคลื่อนไหว ดังนั้น จึงอนุญาตให้ค้นหามูลค่าและความเร็วผ่านเวลาเล่นเท่านั้น (Ie95bd, b/163329867)

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

  • เปลี่ยนชื่อ OnPositionedModifier เป็น OnGloballyPositionedModifier และเปลี่ยนชื่อ onPositioned() เป็น onGloballyPositioned() (I587e8, b/169083903)
  • เลิกใช้งาน API contentColor() และ currentTextStyle() แล้วแทนที่ด้วย AmbientContentColor และ AmbientTextStyle ตามลำดับ คุณเข้าถึงค่าปัจจุบันได้โดยใช้ .current ในพร็อพเพอร์ตี้โดยรอบ เช่นเดียวกับพร็อพเพอร์ตี้โดยรอบอื่นๆ การเปลี่ยนแปลงนี้มีขึ้นเพื่อความสอดคล้องและหลีกเลี่ยงการมีหลายวิธีในการทำสิ่งเดียวกัน นอกจากนี้ ยังเปลี่ยนชื่อพร็อพเพอร์ตี้โดยรอบบางรายการเพื่ออธิบายวัตถุประสงค์ได้ดียิ่งขึ้น ดังนี้

    • ContentColorAmbient -> AmbientContentColor
    • TextStyleAmbient -> AmbientTextStyle
    • IndicationAmbient -> AmbientIndication
    • EmphasisAmbient -> AmbientEmphasisLevels
    • RippleThemeAmbient -> AmbientRippleTheme (I37b6d)

เวอร์ชัน 1.0.0-alpha04

1 ตุลาคม 2020

androidx.compose.animation:animation:1.0.0-alpha04 และ androidx.compose.animation:animation-core:1.0.0-alpha04 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha04 มีคอมมิตต่อไปนี้

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

  • ใส่คำอธิบายประกอบ rootAnimationClockFactory, transitionsEnabled, blinkingCursorEnabled และ textInputServiceFactory ด้วย @VisibleForTesting เพื่อให้เป็น API ภายในและซ่อน KDoc (I554eb, b/168308412)

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

  • อัปเดต Graphics API หลายรายการ
    • อัปเดต API การเปลี่ยนรูปแบบการปรับขนาดและการหมุน เพื่อใช้พารามิเตอร์ออฟเซ็ตเดียว เพื่อแสดงพิกัดจุดหมุน แทนพารามิเตอร์ลอยตัวแยกกัน สำหรับพิกัด x/y ใน DrawScope และ DrawTransform
    • นำเมธอด Rect.expandToInclude และ Rect.join ออกแล้ว
    • อัปเดตเอกสารประกอบเกี่ยวกับรัศมีให้ระบุว่าวงรี นอกเหนือจากวงกลม
    • เพิ่มเอกสารเพื่อระบุว่าไม่ควรเรียกใช้ ตัวสร้างสาธารณะสําหรับคลาส Radius แบบอินไลน์โดยตรง แต่ควรสร้างอินสแตนซ์ออบเจ็กต์ Radius ผ่านตัวสร้างฟังก์ชัน แทน
    • นำ API RoundRect ออกเพื่อค้นหา topRight, bottomRight, bottomCenter ฯลฯ
    • เลิกใช้ Rect.shift เพื่อใช้ Rect.translate แทน
    • นำ API RoundRect.grow และ Rect.shrink ออกแล้ว
    • เปลี่ยนชื่อ RoundRect.outerRect เป็น Rect.boundingRect
    • นำเมธอด RoundRect.middleRect/tallMiddleRect/wideMiddleRect และ Rect.isStadium ออก
    • เปลี่ยนชื่อ RoundRect.longestSide เป็น RoundRect.maxDimension
    • เปลี่ยนชื่อ RoundRect.shortestSide เป็น RoundRect.minDimension
    • เปลี่ยน RoundRect.center ให้เป็นพร็อพเพอร์ตี้แทนที่จะเป็นฟังก์ชัน
    • อัปเดตตัวสร้าง RoundRect เพื่อใช้พร็อพเพอร์ตี้ Radius แทนพารามิเตอร์แต่ละรายการสำหรับค่ารัศมี x/y
    • นำ API ขนาดที่ถือว่าเป็นสี่เหลี่ยมผืนผ้าที่มี ต้นทางที่ 0,0 ออกแล้ว
    • เพิ่ม API ที่ทำลายตัวเองลงใน Radius
    • ย้ายฟังก์ชันส่วนขยาย RoundRect ต่างๆ ไปเป็น พร็อพเพอร์ตี้แทน
    • (I8f5c7, b/168762961)
  • เลิกใช้งาน foundation.Box แล้ว โปรดใช้ foundation.layout.Box แทน (Ie5950, b/167680279)
  • เปลี่ยนชื่อ Stack เป็น Box แล้ว ระบบจะเลิกใช้งาน Box ที่มีอยู่ก่อนหน้านี้เพื่อรองรับ Box ใหม่ใน compose.foundation.layout ลักษณะการทำงานของ Box ใหม่คือการวางองค์ประกอบย่อยซ้อนกันเมื่อมีองค์ประกอบย่อยหลายรายการ ซึ่งแตกต่างจาก Box ก่อนหน้าซึ่งทำงานคล้ายกับคอลัมน์ (I94893, b/167680279)
  • เลิกใช้งานพารามิเตอร์การตกแต่งกรอบแล้ว หากต้องการมีการตกแต่ง/การเว้นที่ว่างในช่อง ให้ใช้ตัวแก้ไขแทน (Modifier.background, Modifier.border, Modifier.padding) (Ibae92, b/167680279)
  • เราป้องกันการนำเข้าแบบคงที่ของเนื้อหาขอบเขตเลย์เอาต์ (เช่น alignWithSiblings ใน RowScope) ควรใช้ขอบเขตที่ชัดเจนแทน: with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) } (I216be, b/166760797)

เวอร์ชัน 1.0.0-alpha03

16 กันยายน 2020

androidx.compose.animation:animation:1.0.0-alpha03 และ androidx.compose.animation:animation-core:1.0.0-alpha03 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha03 มีคอมมิตต่อไปนี้

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

  • การใช้งานแรงโน้มถ่วงได้รับการเปลี่ยนชื่ออย่างสม่ำเสมอเป็น "การจัดแนว" หรือ "การจัดตำแหน่ง" ใน Layout API (I2421a, b/164077038)

เวอร์ชัน 1.0.0-alpha02

2 กันยายน 2020

androidx.compose.animation:animation:1.0.0-alpha02 และ androidx.compose.animation:animation-core:1.0.0-alpha02 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha02 มีคอมมิตเหล่านี้

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

  • เพิ่ม ManualFrameClock.hasAwaiters เพื่อดูว่ามีอะไรที่รอเฟรมจากนาฬิกานั้นหรือไม่ runWithManualClock เป็นตัวแทนของ runBlocking เมื่อเรียกใช้การทดสอบที่ต้องใช้ 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 มีลักษณะการทำงานของ onPreCommit

    ตอนนี้ onCommit และ onActive จะทํางานในเฟรม Choreographer เดียวกันกับที่ การเปลี่ยนแปลงองค์ประกอบได้รับการคอมมิตแล้ว แทนที่จะเป็นที่จุดเริ่มต้น ของเฟรม Choreographer ถัดไป (I70403)

เวอร์ชัน 1.0.0-alpha01

26 สิงหาคม 2020

androidx.compose.animation:animation:1.0.0-alpha01 และ androidx.compose.animation:animation-core:1.0.0-alpha01 เปิดตัวแล้ว เวอร์ชัน 1.0.0-alpha01 มีคอมมิตต่อไปนี้

เวอร์ชัน 0.1.0-dev

เวอร์ชัน 0.1.0-dev17

19 สิงหาคม 2020

androidx.compose.animation:animation:0.1.0-dev17 และ androidx.compose.animation:animation-core:0.1.0-dev17 เปิดตัวแล้ว เวอร์ชัน 0.1.0-dev17 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

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

  • Offset กลายเป็นคลาสอินไลน์ (Iaec70)
  • ตอนนี้ IntOffset เป็นคลาสอินไลน์ (Iac0bf) แล้ว
  • ตอนนี้ IntSize เป็นคลาสแบบอินไลน์ (I2bf42) แล้ว
  • Composable AnimatedVisibilty จะเคลื่อนไหวการปรากฏ และการหายไปของเนื้อหาลูก

    เราได้เปิดตัว EnterTransition และ ExitTransition เพื่อทำงานร่วมกับ Composable ของ AnimatedVisibilty เพื่อให้ภาพเคลื่อนไหวการปรากฏและการหายไป 3 ประเภท ได้แก่ เฟด สไลด์ และขยาย/ย่อเนื้อหา คุณสามารถรวมภาพเคลื่อนไหวประเภทต่างๆ เพื่อสร้างรูปลักษณ์และความรู้สึกที่ปรับแต่งได้มากขึ้น (Idda11)

  • เลิกใช้ PxBounds ใน Rect อัปเดตการใช้งานทั้งหมด ของ PxBounds ด้วย rect และเพิ่ม คำอธิบายประกอบที่เลิกใช้งาน/แทนที่อย่างเหมาะสม เพื่อช่วยในการ ย้ายข้อมูล (I37038, b/162627058)

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

  • PlacementScope.placeAbsolute() เปลี่ยนชื่อเป็น PlacementScope.place() และ PlacementScope.place() ก่อนหน้าเปลี่ยนชื่อเป็น PlacementScope.placeRelative() ด้วยเหตุนี้ วิธี PlacementScope.place() จะไม่สะท้อนตำแหน่งในบริบทจากขวาไปซ้ายโดยอัตโนมัติอีกต่อไป หากต้องการใช้ฟีเจอร์นี้ โปรดใช้ PlacementScope.placeRelative() แทน (I873ac, b/162916675)
  • ตอนนี้เราเลิกใช้งาน state { ... } ที่ใช้ร่วมกันได้แล้วเพื่อ เรียกใช้ 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)
  • รองรับ Listener ที่สิ้นสุดใน Modifier.animateContentSize() เพื่อให้เมื่อภาพเคลื่อนไหวการเปลี่ยนขนาดเสร็จสิ้น ระบบจะแจ้งเตือน Listener พร้อมกับขนาดเริ่มต้น/สิ้นสุดของภาพเคลื่อนไหว (I277b2)
  • ตัวแก้ไข animateContentSize ใหม่ที่เคลื่อนไหว การเปลี่ยนแปลงขนาดเลย์เอาต์ของตัวแก้ไขย่อย (Ieffdc)
  • เพิ่ม MonotonicFrameAnimationClock ที่ช่วยให้คุณใช้ MonotonicFrameClock เป็น AnimationClockObservable เพื่อเชื่อมช่องว่าง ระหว่างนาฬิกาและ API ที่อิงตามโครูทีนใหม่กับนาฬิกาที่ยังใช้แบบเก่า ที่อิงตามการเรียกกลับ

    ตอนนี้ MonotonicFrameClock เทียบเท่ากับ ManualAnimationClock ManualFrameClock (I111c7, b/161247083)

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

  • เราได้อัปเดต API สำหรับการรองรับจากขวาไปซ้ายแล้ว เพิ่ม LayoutDirectionAmbient ซึ่งใช้เพื่ออ่านและเปลี่ยนทิศทางเลย์เอาต์ได้ นำ Modifier.rtl และ Modifier.ltr ออกแล้ว (I080b3)
  • ต้องระบุประเภท T อย่างชัดแจ้ง สำหรับ transitionDefinition (I1aded)
  • แพ็กเกจ foundation.shape.corner ถูกทำให้แบนเป็น foundation.share (I46491, b/161887429)
  • เลิกใช้งาน Modifier.plus แล้ว โปรดใช้ Modifier.then แทน "จากนั้น" มีสัญญาณที่ชัดเจนกว่าในการเรียงลำดับ และยังห้ามพิมพ์ Modifier.padding().background() + anotherModifier ซึ่งจะทำให้การอ่านยากขึ้น (Iedd58, b/161529964)
  • เปลี่ยนชื่อ Modifier.drawBackground เป็น Modifier.background (I13677)

เวอร์ชัน 0.1.0-dev15

22 กรกฎาคม 2020

androidx.compose.animation:animation:0.1.0-dev15 และ androidx.compose.animation:animation-core:0.1.0-dev15 เปิดตัวแล้ว เวอร์ชัน 0.1.0-dev15 มีคอมมิตต่อไปนี้

การอัปเดตการขึ้นต่อกัน

  • หากต้องการใช้ Compose เวอร์ชัน 0.1.0-dev15 คุณจะต้องอัปเดตการอ้างอิง ตามข้อมูลโค้ดใหม่ที่แสดงด้านบนในส่วนการประกาศการอ้างอิง

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

  • มีการเปลี่ยนแปลง Transition API เพื่อให้แสดงผล TransitionState แทนการส่ง TransitionState ไปยังองค์ประกอบย่อย ซึ่งจะทำให้ API สอดคล้องกับ API ของ animate() มากขึ้น (I24e38)
  • เพิ่มพารามิเตอร์ตัวแก้ไขสำหรับครอสเฟด (I87cfe, b/159706180)
  • ใช้ AnimationSpec แทน AnimationBuilder ใน API ระดับบนสุด เพื่ออธิบายแนวคิดของการระบุภาพเคลื่อนไหวแบบคงที่
    • ปรับปรุง DSL การเปลี่ยนโดยการนำข้อกำหนดของ Lambda สำหรับ การสร้าง AnimationSpec เช่น Tween, Spring ออก แต่จะใช้พารามิเตอร์ของเครื่องมือสร้างโดยตรงแทน
    • ปรับปรุงความสะดวกในการใช้งาน AnimationSpec โดยรวมด้วยการเปิดตัว ตัวสร้างแทนการใช้ตัวสร้าง
    • เปลี่ยนระยะเวลาและความล่าช้าสำหรับคีย์เฟรมและ Tween เป็น Int ซึ่งจะช่วย ลดการแคสต์ประเภทและโอเวอร์โหลดเมธอดที่ไม่จำเป็น (เพื่อ รองรับทั้ง Long และ Int) (Ica0b4)
  • แทนที่การใช้งาน IntPx ด้วย Int แทนที่ IntPxPosition ด้วย IntOffset แทนที่ IntPxSize ด้วย IntSize (Ib7b44)
  • เพื่อรวมจำนวนคลาสที่ใช้เพื่อแสดงข้อมูลการปรับขนาด ให้ใช้คลาส Size แทน PxSize ซึ่งจะให้ประโยชน์ ของคลาสอินไลน์เพื่อใช้ประโยชน์จาก Long ในการแพ็กค่า Float 2 ค่าเพื่อแสดง ความกว้างและความสูงที่แสดงเป็น Float (Ic0191)
  • เพื่อรวมจำนวนคลาสที่ใช้เพื่อแสดงข้อมูลการวางตำแหน่ง ให้ใช้คลาส Offset แทน PxPosition ซึ่งจะให้ประโยชน์ ของคลาสอินไลน์เพื่อใช้ประโยชน์จาก long ในการแพ็กค่าลอยตัว 2 ค่าเพื่อแสดงออฟเซ็ต x และ y ที่แสดงเป็นค่าลอยตัว (I3ad98)
  • แทนที่การใช้งานคลาส Px ในคลาส Compose ต่างๆ ซึ่งเป็นส่วนหนึ่งของความพยายามในการปรับโครงสร้างโค้ดครั้งใหญ่ เพื่อใช้เฉพาะ Dp และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล (I086f4)
  • เพิ่มการรองรับ animate() สำหรับ Dp, Px, Size, Position, Bounds, PxPosition, PxSize, PxBounds, IntPx, IntPxSize, IntPxPosition, IntPxBounds และ AnimationVector (Ib7518)
  • ตอนนี้ Crossfade ยอมรับพารามิเตอร์ AnimationBuilder ที่ไม่บังคับเพื่อให้กำหนดค่าภาพเคลื่อนไหวได้แล้ว (I6d6e0)
  • แทนที่การใช้ Color ที่อนุญาตให้เป็น Null ทั้งหมดใน API ด้วย ที่ไม่ใช่ Null และใช้ Color.Unset แทน Null (Iabaa7)
  • นำคลาส ValueHolder ออกแล้ว ปรับโครงสร้างคลาส AnimatedValue, AnimatedFloat เพื่อ ทำให้ฟิลด์ค่าภาพเคลื่อนไหวเป็นนามธรรมเพื่อให้คลาสย่อยสามารถดูการอัปเดตค่าได้
    • เพิ่มคลาสโมเดลสำหรับ AnimatedValue, AnimatedFloat ฯลฯ
    • เพิ่มชุด API @Composable แบบ Lightweight ใหม่สำหรับการเปลี่ยนค่าแบบเคลื่อนไหว (I79530)
  • การเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบของ Ambient API ดูรายละเอียดได้ในบันทึกและเอกสาร Ambient<T> (I4c7ee, b/143769776)
  • โหมดเล่นซ้ำใหม่: ย้อนกลับ โหมดนี้จะย้อนกลับการทำซ้ำก่อนหน้าเมื่อภาพเคลื่อนไหวซ้ำใน RepeatableSpec หรือ VectorizedRepeatableSpec (Ibe0f5)
  • การเพิ่ม API ลงใน ManualAnimationClock: hasObservers: Boolean และพารามิเตอร์ของเครื่องมือสร้าง dispatchOnSubscribe: Boolean (Iaa134)
  • เพิ่ม API สำหรับรับขอบเขตต่ำสุด/สูงสุดใน AnimatedFloat (Icd9cc)

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

  • runOnIdleComposeเปลี่ยนชื่อเป็น runOnIdle (I83607)
  • เราได้เปลี่ยนชื่อ API การทดสอบหลายรายการเพื่อให้ใช้งานง่ายขึ้น เปลี่ยนชื่อ API ทั้งหมดที่ขึ้นต้นด้วย findXYZ เป็น onNodeXYZ เราได้เปลี่ยนชื่อ API ทั้งหมดที่ขึ้นต้นด้วย doXYZ เป็น performXYZ (I7f164)
  • เปิดตัว API ภาพเคลื่อนไหวแบบไม่มีสถานะระดับต่ำ API เหล่านี้ (I63bf7)
  • Composable ของ Recompose ไม่ใช่การแยกส่วนที่มีประโยชน์อีกต่อไป การจัดองค์ประกอบใหม่ส่วนใหญ่ควรเกิดขึ้นจากการกำหนด MutableState หากต้องการดำเนินการอื่นๆ นอกเหนือจากนี้ เราขอแนะนำให้คุณใช้ฟังก์ชัน invalidate เพื่อทริกเกอร์การจัดองค์ประกอบใหม่ของขอบเขตปัจจุบัน (Ifc992)
  • แทนที่การใช้งานคลาส Px ในคลาส Compose ต่างๆ ซึ่งเป็นส่วนหนึ่งของความพยายามในการ ปรับโครงสร้างครั้งใหญ่เพื่อใช้เฉพาะ Dp และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล ลบคลาส Px ทั้งหมด (I3ff33)
  • แทนที่การใช้คลาส Px ในคลาส Compose ต่างๆ ซึ่งเป็นส่วนหนึ่งของความพยายามในการปรับโครงสร้างโค้ดครั้งใหญ่ เพื่อใช้เฉพาะ Dp และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล (Id3434)
  • ตอนนี้ครอสเฟดใช้ค่าเริ่มต้นเป็น Null ได้แล้ว (Iad6a4, b/155947711)
  • แทนที่การใช้งานคลาส Px ในคลาส Compose ต่างๆ ซึ่งเป็นส่วนหนึ่งของความพยายามในการปรับโครงสร้างขนาดใหญ่เพื่อใช้เฉพาะ Dp และประเภทดั้งเดิมสำหรับพารามิเตอร์พิกเซล (I19d02)
  • การใช้งาน CanvasScope ที่รวมกัน ตอนนี้จึงมีเพียง DrawScope และ ContentDrawScope เปลี่ยนชื่อ CanvasScope เป็น DrawScope อัปเดต DrawScope เพื่อใช้ Density interface และระบุ LayoutDirection อัปเดตคลาสย่อย DrawScope ที่ลบแล้วใน ContentDrawScope Painter และ PainterModifier เพื่อไม่ให้รักษาพร็อพเพอร์ตี้ RTL ด้วยตนเองอีกต่อไป เนื่องจาก DrawScope มีพร็อพเพอร์ตี้นี้อยู่แล้ว โดยไม่ต้องระบุด้วยตนเอง (I1798e)
  • อัปเดต API Compose ระดับสูงขึ้น ซึ่งแสดง Canvas เพื่อ แสดง CanvasScope แทน ซึ่งจะช่วยให้ผู้บริโภคไม่ต้องดูแลออบเจ็กต์ Paint ของตนเอง สำหรับผู้บริโภคที่ยังคงต้องเข้าถึง Canvas สามารถใช้วิธี drawCanvas extension ซึ่งมีฟังก์ชันเรียกกลับเพื่อออกคำสั่งวาดด้วย Canvas พื้นฐาน (I80afd)
  • เพิ่มพารามิเตอร์ verticalGravity และ horizontalGravity ลงใน Row และ Column ตามลำดับ (I7dc5a)
  • เปลี่ยนชื่อโมดูล ui-text เป็น ui-text-core (I57dec)
  • ปรับปรุง DrawModifier API
    • สร้างขอบเขตตัวรับสำหรับ draw() ContentDrawScope
    • นำพารามิเตอร์ทั้งหมดใน draw() ออกแล้ว
    • DrawScope มีอินเทอร์เฟซเหมือนกับ CanvasScope รุ่นก่อน
    • ContentDrawScope มีเมธอด drawContent() (Ibaced, b/152919067)
  • runOnIdleCompose และ runOnUiThread ตอนนี้เป็นฟังก์ชันส่วนกลางแล้ว แทนที่จะเป็นเมธอดใน ComposeTestRule (Icbe8f)
  • [Mutable]State property delegate operators moved to extensions to support Kotlin 1.4 property delegate optimizations. ผู้โทรต้องเพิ่ม imports เพื่อใช้ by state { ... } หรือ by mutableStateOf(...) ต่อไป (I5312c)
  • เลิกใช้งาน ColoredRect แล้ว ให้ใช้ Box(Modifier.preferredSize(width, height).drawBackground(color)) แทน (I499fa, b/152753731)
  • แทนที่ตัวแก้ไขและตัวดำเนินการด้วยฟังก์ชันส่วนขยายของโรงงาน (I225e4)
  • เลิกใช้งาน Composable ของ Center แล้ว ควรแทนที่ด้วยตัวแก้ไข LayoutSize.Fill + LayoutAlign.Center หรือด้วย Composable Box หรือ Stack รายการใดรายการหนึ่งที่มีตัวแก้ไขที่เหมาะสม (Idf5e0)
  • เปลี่ยนชื่อ LayoutFlexible เป็น LayoutWeight เปลี่ยนชื่อพารามิเตอร์ "แน่น" เป็น "เติม" (If4738)
  • ฟังก์ชันที่ประกอบกันได้ Opacity ถูกแทนที่ ด้วยตัวแก้ไข drawOpacity (I5fb62)
  • การทดสอบที่ใช้ AndroidComposeTestRule จะมีนาฬิกาภาพเคลื่อนไหวที่รูทของ Composition ซึ่งช่วยให้หยุดชั่วคราว กลับมาทำงานต่อ และเลื่อนไปข้างหน้าด้วยตนเองได้ (Id54c5)
  • รองรับทิศทางจากขวาไปซ้ายในตัวแก้ไข LayoutPadding (I9e8da)
  • เราได้รวม Density และ DensityScope ไว้ในอินเทอร์เฟซเดียว ตอนนี้คุณใช้ DensityAmbient.current แทน ambientDensity() ได้แล้ว แทนที่จะใช้ withDensity(density) ให้ใช้ with(density) (I11cb1)
  • เพิ่มวิธีการคัดลอกไปยัง คลาสประเภทต่างๆ ในบรรทัด ซึ่งรวมถึง
    • ออฟเซ็ต
    • ขนาด
    • รัศมี
    • การเคลื่อนไหว
    • TransformOrigin
    • เลิกใช้งานเมธอด Size.copy companion object เพื่อใช้เมธอดการคัดลอกอินสแตนซ์แทน (Ife290, b/159905651)
  • ย้าย androidx.compose.ViewComposer ไปยัง androidx.ui.node.UiComposer แล้ว นำ androidx.compose.Emittable ออกแล้ว เนื่องจากซ้ำกับ ComponentNode. androidx.compose.ViewAdapters จึงถูกนำออก และไม่ได้เป็นกรณีการใช้งานที่รองรับอีกต่อไป เลิกใช้งาน Compose.composeInto แล้ว โปรดใช้ setContent หรือ setViewContent แทน เลิกใช้งาน Compose.disposeComposition แล้ว โปรดใช้เมธอด dispose ใน Composition ที่ setContent ส่งคืนแทน androidx.compose.Compose.subcomposeInto ย้ายไปที่ androidx.ui.core.subcomposeInto แล้ว เปลี่ยนชื่อ ComponentNode#emitInsertAt เป็น ComponentNode#insertAt แล้ว เปลี่ยนชื่อ ComponentNode#emitRemoveAt เป็น ComponentNode#removeAt แล้ว เปลี่ยนชื่อ ComponentNode#emitMode เป็น ComponentNode#move แล้ว (Idef00)