Constraintlayout

จัดวางตำแหน่งและปรับขนาดวิดเจ็ตได้อย่างยืดหยุ่นด้วยการวางตำแหน่งแบบสัมพัทธ์

ตารางนี้แสดงอาร์ติแฟกต์ทั้งหมดในกลุ่ม androidx.constraintlayout

อาร์ติแฟกต์ รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า รุ่นอัลฟ่า
constraintlayout 2.2.1 - - -
constraintlayout-compose 1.1.1 - - -
constraintlayout-core 1.1.1 - - -

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

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

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

ดึงดูด

dependencies {
    implementation "androidx.constraintlayout:constraintlayout:2.2.1"
    // To use constraintlayout in compose
    implementation "androidx.constraintlayout:constraintlayout-compose:1.1.1"
}

Kotlin

dependencies {
    implementation("androidx.constraintlayout:constraintlayout:2.2.1")
    // To use constraintlayout in compose
    implementation("androidx.constraintlayout:constraintlayout-compose:1.1.1")
}

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

ความคิดเห็น

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

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

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

ConstraintLayout-compose และ ConstraintLayout-Core 1.1

เวอร์ชัน 1.1.1

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

androidx.constraintlayout:constraintlayout-compose:1.1.1 androidx.constraintlayout:constraintlayout-compose-android:1.1.1 และ androidx.constraintlayout:constraintlayout-core:1.1.1 ออกแล้ว เวอร์ชัน 1.1.1 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขปัญหาเกี่ยวกับเลย์เอาต์บางอย่างที่ในบางกรณีทำให้ระบบไม่วางเลย์เอาต์ เช่น การเปิด/ปิดระดับการแชร์ (I34e68, b/299134793)

เวอร์ชัน 1.1.0

30 ตุลาคม 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0 androidx.constraintlayout:constraintlayout-compose-android:1.1.0 และ androidx.constraintlayout:constraintlayout-core:1.1.0 ออกแล้ว เวอร์ชัน 1.1.0 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขการโต้ตอบกับ SharedTransitionLayout (b/332898040)
  • แก้ไขปัญหาเลย์เอาต์ที่เกี่ยวข้องกับการวัดผลเนื่องจากการจัดองค์ประกอบใหม่ (b/219091179, Ibfe8a)

เวอร์ชัน 1.1.0-rc01

16 ตุลาคม 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0-rc01 androidx.constraintlayout:constraintlayout-compose-android:1.1.0-rc01 และ androidx.constraintlayout:constraintlayout-core:1.1.0-rc01 ออกแล้ว เวอร์ชัน 1.1.0-rc01 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.1.0-beta01

4 กันยายน 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01 androidx.constraintlayout:constraintlayout-compose-android:1.1.0-beta01 และ androidx.constraintlayout:constraintlayout-core:1.1.0-beta01 ออกแล้ว เวอร์ชัน 1.1.0-beta01 มีการเปลี่ยนแปลงเหล่านี้

เวอร์ชัน 1.1.0-alpha14

7 สิงหาคม 2024

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha14 androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha14 และ androidx.constraintlayout:constraintlayout-core:1.1.0-alpha14 ออกแล้ว เวอร์ชัน 1.1.0-alpha14 มีการเปลี่ยนแปลงเหล่านี้

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

  • ตอนนี้เราจะระบุ Flag แยกกันผ่านออบเจ็กต์เสริม และอาจรวมกับโอเปอเรเตอร์ or ได้ (I9df53)
  • ผู้ช่วย createRow และ createColumn ที่ใช้งานง่าย ปรับปรุงcreateGridชื่อพารามิเตอร์และเอกสารประกอบเพื่อความชัดเจน (Iebc92)
  • animateChanges API ใน ConstraintLayout ที่ง่ายขึ้นเพื่อให้ต้องมีเพียง AnimationSpec ที่ไม่ใช่ค่าว่าง onIncomingConstraints ใน InvalidationStrategy เป็น Lambda ปกติแล้ว fixedWidthRate เปลี่ยนชื่อเป็น shouldInvalidateOnFixedWith เช่นเดียวกับตัวแปรความสูง (Ie59cd, b/332898040, b/336370035)
  • NestedScroll แหล่งที่มาของ Drag และ Fling จะถูกแทนที่ด้วย UserInput และ SideEffect เพื่อรองรับคำจำกัดความที่ขยายออกไปของแหล่งที่มาเหล่านี้ ซึ่งตอนนี้รวมถึงภาพเคลื่อนไหว (Side Effect) และล้อเมาส์และแป้นพิมพ์ (UserInput) (I40579)

เวอร์ชัน 1.1.0-alpha13

4 ตุลาคม 2023

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

  • การเผยแพร่นี้ช่วยให้ไลบรารี androidx.constraintlayout สามารถใช้งานร่วมกับ ABI ได้กับ Compose เวอร์ชันล่าสุด

เวอร์ชัน 1.1.0-alpha12

9 สิงหาคม 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha12 androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha12 และ androidx.constraintlayout:constraintlayout-core:1.1.0-alpha12 ออกแล้ว เวอร์ชัน 1.1.0-alpha12 มีคอมมิตต่อไปนี้

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

  • เพิ่ม LayoutScopeMarker ลงใน Transition DSL แล้ว (If54ce)

เวอร์ชัน 1.1.0-alpha11

26 กรกฎาคม 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha11 androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha11 และ androidx.constraintlayout:constraintlayout-core:1.1.0-alpha11 ออกแล้ว เวอร์ชัน 1.1.0-alpha11 มีคอมมิตเหล่านี้

ฟีเจอร์ใหม่

  • ตอนนี้คุณระบุ InvalidationStrategy เพื่อเพิ่มประสิทธิภาพการลบล้างใน MotionLayout ได้แล้ว ซึ่งมักจะเป็นสาเหตุที่ทำให้ประสิทธิภาพลดลง (Iada0c)
  • ตอนนี้คุณใช้ animateChanges = true เมื่อใช้ ConstraintLayout กับ DSL ตัวแก้ไขแบบอินไลน์ (Modifier.constrainAs) ได้แล้ว เมื่อใดก็ตามที่มีการเปลี่ยนแปลงใน DSL ข้อจำกัด ConstraintLayout จะเปลี่ยนภาพเคลื่อนไหวเป็นสถานะใหม่นั้นโดยอัตโนมัติ (I9abf1)
  • เปิดใช้ฟังก์ชันสำหรับ limitBoundsTo ใน OnSwipe (I56522)

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

  • เปลี่ยนชื่อ TransitionScope.staggered เป็น TransitionScope.maxStaggerDelay แล้ว (I0fd2d)

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

  • แก้ไขพารามิเตอร์ dragScale จาก OnSwipe ที่ไม่ทำงาน (8bef26)
  • แก้ไขปัญหา customColor ใน MotionScene ที่ทำงานไม่ถูกต้องกับสีโปร่งใส (81b2ac)
  • แก้ไขปัญหาที่ OnSwipe ไม่ประกาศอย่างถูกต้องเมื่อหยุดทำงาน และแก้ไขการคำนวณความเร็วเริ่มต้นสำหรับ touchUp (Ia5f6f)
  • อัปเดต KDoc สำหรับ ConstraintLayout Composable และ Constraintset (3bfe63)

เวอร์ชัน 1.1.0-alpha10

24 พฤษภาคม 2023

androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha10 androidx.constraintlayout:constraintlayout-compose-android:1.1.0-alpha10 และ androidx.constraintlayout:constraintlayout-core:1.1.0-alpha10 ออกแล้ว เวอร์ชัน 1.1.0-alpha10 มีคอมมิตเหล่านี้

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

  • MotionLayout API ไม่ใช่เวอร์ชันทดลองอีกต่อไป ซึ่งแสดงถึงชุด API ที่เสถียรชุดแรกสำหรับ MotionLayout (I288f4)
  • นำ MotionLayoutState ออกแล้ว (Id3ac1)
  • ตอนนี้คุณใช้ DebugFlags เพื่อแก้ไขข้อบกพร่องด้วยภาพได้แล้ว: DebugFlags(showBounds = true) (Ic714b)
  • เปลี่ยนตัวแปรส่วนขยาย Dp.asDimension เป็นเมธอด Dp.asDimension() (I2d6ef)
  • ตอนนี้ MotionLayout DSL รองรับการสลับแล้ว โดยคุณสามารถกำหนดการหน่วงเวลาสูงสุดด้วย TransitionScope.staggered นอกจากนี้ คุณยังใช้ ConstrainScope.staggeredWeight (ภายใน MotionSceneScope) เพื่อรับลำดับการสลับที่กำหนดเองได้ด้วย (I70275)
  • การเปลี่ยนแปลง 2 อย่างที่เกิดขึ้นกับตัวช่วยตารางมีดังนี้ 1. paddingLeft และ paddingRight เป็น paddingStart และ paddingEnd ตามลำดับ และ 2. อัปเดตรูปแบบของ gridSpans และ gridSkip เป็นอาร์เรย์ของออบเจ็กต์ Span และ Skip เพื่อให้มีโครงสร้างมากขึ้น (Idd1eb)

เวอร์ชัน 1.1.0-alpha09

22 มีนาคม 2023

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

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

  • Modifier.intermediateLayout ไม่ต้องมี LookaheadScope อย่างชัดเจนอีกต่อไป บล็อกการวัดใน intermediateLayout มี IntermediateMeasureScope เป็นตัวรับ ซึ่งให้ CoroutineScope, LookaheadScope และ MeasureScope ที่สะดวก
  • LookaheadLayout ได้แทนที่ด้วย LookaheadScope ซึ่งไม่ใช่เลย์เอาต์อีกต่อไป ซึ่งจะช่วยให้ผู้ปกครองควบคุมเนื้อหาของบุตรหลานใน LookaheadScope ได้โดยตรงจาก MeasurePolicy ของผู้ปกครอง (Ibe2e5)
  • Easing.Cubic() รับพารามิเตอร์การยิงเกินได้แล้ว (I2d826)

เวอร์ชัน 1.1.0-alpha08

8 มีนาคม 2023

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

ฟีเจอร์ใหม่

  • เพิ่มการตรวจสอบ Lint เพื่อแนะนำให้ใช้ Dimension.percent(1f) และ LayoutReference.withChainParams() ในกรณีที่รูปแบบทั่วไปอาจทำให้เกิดลักษณะการทำงานที่คาดเดาไม่ได้ (I62eb0, I03060)

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

  • เปิดใช้ฟีเจอร์ ReverseSpanDirection และ SpansOrderFirst สำหรับ Grid Helper ในฟีเจอร์เขียน
    1. ReverseSpanDirection: สลับการระบุความกว้างและความสูงสำหรับช่วง/การข้าม
    2. SpansOrderFirst: ช่วงจะเรียงตามลำดับของวิดเจ็ต (I6ad50)
  • ใช้ Modifier.onStartEndBoundsChanged(...) เพื่อรับขอบเขตภายในของ Composable ใน MotionLayout ที่ไม่ได้รับผลกระทบจากภาพเคลื่อนไหว มีประโยชน์สำหรับการโต้ตอบ UI ใดๆ ที่ต้องใช้ข้อมูลเลย์เอาต์ซึ่งอาจทริกเกอร์ภาพเคลื่อนไหวด้วย เช่น DragAndDrop (I6b5f9)
  • เปิดใช้การข้ามและการขยายของ Grid Helper ใน Compose (I917b6)

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

  • แก้ไขพร็อพเพอร์ตี้การแปลที่ไม่ได้ใช้ค่าที่คาดไว้ (I961cd)

เวอร์ชัน 1.1.0-alpha07

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

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

ฟีเจอร์ใหม่

  • เพิ่ม API ใหม่เพื่อเปิดใช้ Grid Helper ใน Compose โดยใช้ DSL (I1143b)

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

  • แก้ไข Wrap.Chain สำหรับโฟลว์ที่แสดงผลไม่ถูกต้องตามพารามิเตอร์ maxElement ที่ระบุ (e1f2ed3)
  • แก้ไขปัญหา start ConstraintSet ไม่อัปเดตเมื่อเปลี่ยนการเปลี่ยนฉากผ่าน MotionLayout(motionScene: MotionScene, progress: Float, transitionName: String) (17ffff1)
  • แก้ไขปัญหาที่ ConstraintSet ไม่แสดงการเปลี่ยนแปลงบางอย่างเมื่อรับช่วงข้อจำกัดผ่าน ConstraintSet(extendConstraintSet: ConstraintSet, description: ConstraintSetScope.() -> Unit).(740804b)

เวอร์ชัน 1.1.0-alpha06

25 มกราคม 2023

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

ฟีเจอร์ใหม่

  • เพิ่ม API ใหม่เพื่อเปิดใช้ Grid Helper ใน Compose ด้วยการแสดง JSON ซึ่งช่วยให้วาง Composable ในตารางกริด 2 มิติได้ (I968ad)

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

  • เพิ่มการรองรับโหมดโค้งขึ้นและโค้งลง Arc.Above และโหมดโค้งอิสระจากทิศทาง Arc.Below ไปยัง MotionLayout (I184a9)
  • ตอนนี้คุณสามารถจำกัดโฆษณา Anchor พื้นฐานให้แสดงที่โฆษณา Anchor ด้านบน/ด้านล่าง และในทางกลับกันได้แล้ว (I54628)
  • เปลี่ยนชื่อ MotionLayoutScope#motionProperties (รวมถึงผลงานดัดแปลง) เป็น MotionLayoutScope#customProperties เพื่อให้สอดคล้องกันเมื่อตั้งค่าพร็อพเพอร์ตี้ที่กำหนดเอง (Ib34c9)
  • ตอนนี้คุณสามารถสร้างการอ้างอิงหลายรายการใน ConstraintSet และ MotionScene ได้แล้ว val (box, text, button) = createRefsFor("box", "text","button") ใช้ข้อจำกัดกับหลายองค์ประกอบด้วย constrain(box, button, text) ตอนนี้คุณสามารถตั้งค่ามิติข้อมูลคงที่ด้วย Dp.asDimension ได้อย่างง่ายดายภายใน ConstrainScope: width = 10.dp.asDimension (I021ec, Ia0960)
  • ตอนนี้เมธอด MotionScene() และ Transition() เป็นฟังก์ชันที่ไม่สามารถประกอบกันได้แล้ว ตอนนี้คุณควรเปรียบเทียบออบเจ็กต์จากฟังก์ชันเหล่านี้ (รวมถึง ConstraintSet) กับออบเจ็กต์อื่นๆ ได้อย่างถูกต้อง animateChanges = true ใน ConstraintLayout สามารถใช้ได้กับการอ้างอิง ConstraintSet เพียงรายการเดียว ตราบใดที่พร็อพเพอร์ตี้มีการเปลี่ยนแปลงในการจัดองค์ประกอบใหม่ (I7d22e)

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

  • แก้ไขปัญหาที่ ConstraintLayout ทริกเกอร์การจัดองค์ประกอบใหม่ที่ไม่จำเป็นเสมอเมื่อมีการเปลี่ยนแปลงตัวช่วย (Id83ad, b/222093277)
  • แก้ไขลักษณะการทำงานเมื่อใช้ Intrinsics กับ ConstraintLayout และ MotionLayout (I487ae, b/220527863)
  • แก้ไขการวัดผลซ้ำไม่ได้เมื่อเนื้อหาเปลี่ยนแปลง (Ibfe8a, b/219091179)

เวอร์ชัน 1.1.0-alpha05

7 ธันวาคม 2022

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

ฟีเจอร์ใหม่

  • รองรับ KeyAttributes ที่กำหนดเองใน DSL (b94e748)
  • พร็อพเพอร์ตี้การเอนเอียงของพื้นผิวใน ConstrainScope (32625d0)
  • รองรับพารามิเตอร์ที่กำหนดเองในเชน (72a2e9e)
  • เพิ่มการทดสอบ Macrobenchmark สำหรับ MotionLayout ใน Compose (36f43bc)
  • ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงในรุ่นก่อนหน้าใน Compose ได้ที่หน้าวิกิ

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

  • พารามิเตอร์พลิก addConstraintSet และ addTransition (152facc)

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

  • แก้ไขเชนแนวนอน (ed5f56e)

เวอร์ชัน 1.1.0-alpha01

20 พฤษภาคม 2022

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha01

โปรดทราบว่า MotionLayout API เป็นเวอร์ชันทดลองและต้องเลือกใช้

ดูข้อมูลเพิ่มเติมได้ที่หัวข้อมีอะไรใหม่ใน Compose 1.1.0-alpha01 ใน GitHub

เวอร์ชัน 2.2

เวอร์ชัน 2.2.1

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

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.1 เวอร์ชัน 2.2.1 มีการเปลี่ยนแปลงเหล่านี้

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

  • แก้ไขปัญหาเกี่ยวกับความเข้ากันได้ของไบนารีจากไลบรารี constraintlayout-core ขอขอบคุณ Carlo Marinangeli (I8952e, b/376718273)

เวอร์ชัน 2.2.0

30 ตุลาคม 2024

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0 เวอร์ชัน 2.2.0 มีการเปลี่ยนแปลงเหล่านี้

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

  • การเปิดตัวที่เทียบเท่ากับไลบรารี constraintlayout-core ที่เกี่ยวข้อง

เวอร์ชัน 2.2.0-rc01

16 ตุลาคม 2024

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-rc01 เวอร์ชัน 2.2.0-rc01 มีการคอมมิตเหล่านี้

เวอร์ชัน 2.2.0-beta01

4 กันยายน 2024

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-beta01 เวอร์ชัน 2.2.0-beta01 มีการคอมมิตเหล่านี้

เวอร์ชัน 2.2.0-alpha14

7 สิงหาคม 2024

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha14 เวอร์ชัน 2.2.0-alpha14 มีการคอมมิตเหล่านี้

เวอร์ชัน 2.2.0-alpha13

4 ตุลาคม 2023

androidx.constraintlayout:constraintlayout:2.2.0-alpha13 จะเผยแพร่โดยไม่มีการเปลี่ยนแปลง เวอร์ชัน 2.2.0-alpha13 มีคอมมิตต่อไปนี้

เวอร์ชัน 2.2.0-alpha12

9 สิงหาคม 2023

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha12 เวอร์ชัน 2.2.0-alpha12 มีคอมมิตเหล่านี้

เวอร์ชัน 2.2.0-alpha11

26 กรกฎาคม 2023

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha11 เวอร์ชัน 2.2.0-alpha11 มีคอมมิตต่อไปนี้

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

  • เพิ่มเมธอด Setter เพื่อให้นักพัฒนาแอปตั้งค่าสำหรับ mInfiniteCarousel (I0a8ca) โดยอัตโนมัติได้

เวอร์ชัน 2.2.0-alpha10

24 พฤษภาคม 2023

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha10 เวอร์ชัน 2.2.0-alpha10 มีคอมมิตต่อไปนี้

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

  • แก้ไขลิงก์ที่เสียของเอกสาร MotionLayout (51cbe88)

เวอร์ชัน 2.2.0-alpha09

22 มีนาคม 2023

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha09 เวอร์ชัน 2.2.0-alpha09 มีคอมมิตเหล่านี้

เวอร์ชัน 2.2.0-alpha08

8 มีนาคม 2023

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha08 เวอร์ชัน 2.2.0-alpha08 มีคอมมิตต่อไปนี้

เวอร์ชัน 2.2.0-alpha07

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

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha07 เวอร์ชัน 2.2.0-alpha07 มีคอมมิตเหล่านี้

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

  • แก้ไขปัญหาConstraintLayoutเนื้อหาหน้าเว็บขาดหายไป (I82e25)

เวอร์ชัน 2.2.0-alpha05

7 ธันวาคม 2022

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha05 เวอร์ชัน 2.2.0-alpha05 มีคอมมิตต่อไปนี้

  • ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงในรุ่นก่อนหน้าได้ที่หน้าวิกิของ Github

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

  • แก้ไขการรั่วไหลในภาพสไลด์ (eb67b82)

เวอร์ชัน 2.2.0-alpha01

20 พฤษภาคม 2022

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.2.0-alpha01

รวมถึงตัวอย่างGridผู้ช่วยใหม่

ดูข้อมูลเพิ่มเติมได้ที่หัวข้อมีอะไรใหม่ใน 2.2.0-alpha01 ใน GitHub

ConstraintLayout-compose 1.0

ConstraintLayout-compose 1.0 มีฟังก์ชันการทำงานของ ConstraintLayout ใน Jetpack Compose

เวอร์ชัน 1.0.1

20 พฤษภาคม 2022

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.1

โปรดทราบว่า MotionLayout API เป็นเวอร์ชันทดลองและต้องเลือกใช้

ดูข้อมูลเพิ่มเติมได้ที่หัวข้อมีอะไรใหม่ใน Compose 1.0.1 ใน GitHub

เวอร์ชัน 1.0.0

13 มกราคม 2022

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0

โปรดทราบว่าตอนนี้ MotionLayout API อยู่ในเวอร์ชันทดลองและต้องเลือกใช้

ดูข้อมูลเพิ่มเติมได้ที่บทความมีอะไรใหม่ใน 1.0 (Compose) ของ GitHub

เวอร์ชัน 1.0.0-rc02

16 พฤศจิกายน 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-rc02

ดูข้อมูลเพิ่มเติมได้ที่บทความมีอะไรใหม่ใน 1.0 (Compose) ของ GitHub

เวอร์ชัน 1.0.0-rc01

27 กันยายน 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-rc01

รุ่นนี้เป็นรุ่นเบต้าที่ 2 โดยถือว่าเป็นฟีเจอร์ที่สมบูรณ์แล้ว ซึ่งมีConstraintLayout และ MotionLayout สำหรับฟีเจอร์ช่วยเขียน

ดูข้อมูลเพิ่มเติมได้ที่บทความมีอะไรใหม่ใน 1.0 (Compose) ของ GitHub

เวอร์ชัน 1.0.0-beta02

30 กรกฎาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02

รุ่นนี้เป็นรุ่นเบต้าที่ 2 โดยถือว่าเป็นฟีเจอร์ที่สมบูรณ์แล้ว ซึ่งมีConstraintLayout และ MotionLayout สำหรับฟีเจอร์ช่วยเขียน

ดูข้อมูลเพิ่มเติมได้ที่บทความมีอะไรใหม่ใน 1.0 (Compose) ของ GitHub

เวอร์ชัน 1.0.0-beta01

22 กรกฎาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01

รุ่นนี้เป็นรุ่นเบต้าแรก โดยถือว่าเป็นฟีเจอร์ที่สมบูรณ์แล้ว ซึ่งมีConstraintLayout และ MotionLayout สำหรับฟีเจอร์ช่วยเขียน

ดูข้อมูลเพิ่มเติมได้ที่บทความมีอะไรใหม่ใน 1.0 (Compose) ของ GitHub

เวอร์ชัน 1.0.0-alpha07

18 พฤษภาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07

  • อัปเดตให้ใช้ได้กับ Compose เวอร์ชัน 1.0.0-beta07

เวอร์ชัน 1.0.0-alpha06

4 พฤษภาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha06

  • การเพิ่มประสิทธิภาพการเขียน: Composable แบบอินไลน์ Constraintlayout (#193)
  • ลดการวัดซ้ำใน Compose (#210)

เวอร์ชัน 1.0.0-alpha05

15 มีนาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05

  • รวมการแก้ไขเครื่องมือเพิ่มประสิทธิภาพ (b/182657720)
  • เพิ่มพารามิเตอร์ optimizationLevel ลงใน Composable ของ ConstraintLayout

เวอร์ชัน 1.0.0-alpha04

11 มีนาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04

อัปเดตเพื่อใช้เครื่องมือ constraintlayout-core เวอร์ชันล่าสุด

เวอร์ชัน 1.0.0-alpha03

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

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha03

การอัปเดตการเผยแพร่สำหรับ Jetpack Compose รุ่นเบต้า 01

เวอร์ชัน 1.0.0-alpha02

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

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02

การอัปเดตการเผยแพร่สำหรับ Jetpack Compose เวอร์ชันอัลฟ่า 12

เวอร์ชัน 1.0.0-alpha01

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

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01

เปิดตัวไลบรารีเป็นครั้งแรก โดยมี DSL แบบอินไลน์และภายนอกเพื่อแสดงข้อจำกัด

เวอร์ชัน 2.1

ConstraintLayout 2.1.0 มีฟีเจอร์ที่สมบูรณ์ยิ่งขึ้นใน MotionLayout และตัวช่วยใหม่ (Carousel ฯลฯ)

เวอร์ชัน 2.1.4

20 พฤษภาคม 2022

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.4

ดูข้อมูลเพิ่มเติมได้ที่หัวข้อมีอะไรใหม่ใน 2.1.4 ใน GitHub

เวอร์ชัน 2.1.3

13 มกราคม 2022

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.3

ดูข้อมูลเพิ่มเติมได้ที่บทความของ GitHub เรื่อง มีอะไรใหม่ใน 2.1

เวอร์ชัน 2.1.2

16 พฤศจิกายน 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.2

ดูข้อมูลเพิ่มเติมได้ที่บทความของ GitHub เรื่อง มีอะไรใหม่ใน 2.1

เวอร์ชัน 2.1.1

27 กันยายน 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.1

รุ่นนี้เป็นรุ่นสุดท้ายสำหรับ 2.1.1

ดูข้อมูลเพิ่มเติมได้ที่บทความของ GitHub เรื่อง มีอะไรใหม่ใน 2.1

เวอร์ชัน 2.1.0

30 กรกฎาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.0

รุ่นนี้เป็นรุ่นสุดท้ายสำหรับ 2.1.0

ดูข้อมูลเพิ่มเติมได้ที่บทความของ GitHub เรื่อง มีอะไรใหม่ใน 2.1

เวอร์ชัน 2.1.0-rc01

22 กรกฎาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.0-rc01

นี่คือรุ่นที่พร้อมเผยแพร่สำหรับ 2.1.0 ซึ่งมีการปรับปรุงและการแก้ไขเล็กน้อยจากเวอร์ชันเบต้าล่าสุด ดูข้อมูลเพิ่มเติมได้ที่บทความของ GitHub เรื่อง มีอะไรใหม่ใน 2.1

เวอร์ชัน 2.1.0-beta02

4 พฤษภาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.0-beta02

ฟีเจอร์ใหม่บางอย่างใน MotionLayout มีดังนี้

  • การเพิ่มประสิทธิภาพ OnSwipe รวมถึงสปริง (ความแข็ง การหน่วง มวล ฯลฯ) และไม่เคยเสร็จสมบูรณ์
  • ฟังก์ชัน jumpToState
  • โหมด ViewTransition downUp ซึ่งจะเล่นไปที่ 100 เมื่อแตะลง และจะย้อนกลับไปที่ 0 เมื่อแตะขึ้น

การแก้ไขต่างๆ โดยเฉพาะ

  • แก้ไขปัญหาใน MotionLayout ด้วยการเลื่อนแนวตั้ง (#173)
  • การปรับปรุงประสิทธิภาพใน MotionLayout ที่ซ้อนกัน (#189)
  • การเปลี่ยนฉากอย่างรวดเร็วด้วย NestedScrollView ใน MotionLayout (#189)
  • ConstraintSet หายไปใน MotionLayout (#189)
  • รองรับ ViewTransition แบบลงขึ้นใน MotionLayout (#190)
  • แก้ไขใน ImageFilter เมื่อนำ Drawable กลับมาใช้ซ้ำ (#192)
  • เพิ่มการรองรับสปริงใน MotionLayout (#199)
  • การปรับปรุงประสิทธิภาพของ CircularFlow (#200)
  • การแก้ไขข้อจำกัดที่ได้มา / การลบล้างข้อจำกัด (#212)

เวอร์ชัน 2.1.0-beta01

11 มีนาคม 2021

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.0-beta01

ConstraintLayout

android:layout_width และ android:layout_height กลับมาเป็นแอตทริบิวต์ที่ต้องระบุอีกครั้งเนื่องจากปัญหาความเข้ากันได้

MotionLayout

  • การรองรับแบบเป็นโปรแกรมสำหรับการแทรกและนำ onSwipe และ onClick ออกใน Transitions
  • การรองรับการเปลี่ยนฉากผ่านการหมุนหน้าจอในเวอร์ชันทดลอง
  • อาร์กิวเมนต์ระยะเวลาการรองรับการเปลี่ยน
  • รองรับแอตทริบิวต์ที่กำหนดเองซึ่งเป็นบูลีนหรือการอ้างอิงได้ดียิ่งขึ้น

ผู้ช่วยเหลือ

  • เพิ่มวิธีทำให้ภาพเคลื่อนไหวหรือข้ามไปยังรายการที่ต้องการในภาพสไลด์โดยตรง
  • ผู้ช่วย CircularFlow ใหม่

ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปิดตัวนี้ได้ที่นี่ และข้อบกพร่องที่ปิดแล้ว

เวอร์ชัน 2.1.0-alpha2

17 ธันวาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.0-alpha2

เวอร์ชันอัลฟ่าที่ 2 นี้มาพร้อมฟีเจอร์ใหม่ๆ หลายอย่าง ดังนี้

ConstraintLayout

  • ตอนนี้ android:layout_width และ android:layout_height เป็นตัวเลือกแล้ว โดยมี wrap_content เป็นลักษณะการทำงานเริ่มต้น
  • แอตทริบิวต์ layout_constraintWidth และ layout_constraintHeight ใหม่สำหรับการแสดงข้อจำกัดของมิติข้อมูล
  • รองรับมาร์จิ้นติดลบสำหรับข้อจำกัด
  • รองรับข้อจำกัดจากบรรทัดฐานถึงด้านบนและจากบรรทัดฐานถึงด้านล่าง
  • รองรับข้อจำกัดด้านมาร์จิ้นพื้นฐาน
  • SharedValues ช่วยให้คุณแทรกค่าภายนอกลงใน ConstraintLayout ได้

MotionLayout

  • รองรับตัวประมาณค่าการยิงเกิน (คาดการณ์ ยิงเกิน)
  • การรองรับ MotionHelper ที่ดียิ่งขึ้น
  • เพิ่มการอัปเดต ConstraintSet แบบเคลื่อนไหวไปยัง MotionLayout updateStateAnimate(id,cset,duration);
  • ViewTransition ตามมูลค่าที่แชร์
  • scheduleTransitonTo ช่วยให้คุณจัดคิวการเปลี่ยนฉากให้ทำงานเมื่อการเปลี่ยนฉากปัจจุบันเสร็จสมบูรณ์

ผู้ช่วยเหลือ

  • ตอนนี้ภาพสไลด์รองรับโหมดไม่สิ้นสุด (วนรอบ) แล้ว
  • ReactiveGuide : แนวทางที่กำหนดตำแหน่งของตัวเองโดยอัตโนมัติเมื่อ SharedValue เปลี่ยนแปลง
  • MotionEffect : inject Keyframes to referenced views moving in a given direction
  • MotionLabel - มุมมองสำหรับการเคลื่อนไหวข้อความบรรทัดเดียว

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

เวอร์ชัน 2.1.0-alpha1

19 พฤศจิกายน 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.1.0-alpha1

อัลฟ่ารุ่นแรกของเวอร์ชัน 2.1 เพิ่มการรองรับสำหรับ

  • ตัวช่วยการเคลื่อนไหวของภาพสไลด์เพื่อสร้างมุมมองภาพสไลด์ที่กำหนดเอง
  • การรองรับฉาก MotionLayout รวมถึงการแทนที่ข้อจำกัด
  • MotionLayout เพิ่มการรองรับการหมุน (อินพุตและเอาต์พุต) ที่ดียิ่งขึ้น
  • MotionLayout เพิ่ม ViewTransitions ซึ่งช่วยให้การเปลี่ยนมุมมองเดียวสำหรับการ เปลี่ยนแปลง ConstraintSet

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

เวอร์ชัน 2.0

ConstraintLayout 2.0 เพิ่มฟีเจอร์ใหม่สำหรับเลย์เอาต์ (เลย์เอาต์เสมือนจริง ฯลฯ) และ คลาสใหม่เพื่อลดความซับซ้อนของภาพเคลื่อนไหวของ View ซึ่งก็คือ MotionLayout

เวอร์ชัน 2.0.4

29 ตุลาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.4

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

การเผยแพร่ครั้งนี้แก้ไข NPE ที่อาจเกิดขึ้นเมื่อนำมุมมองย่อยออก ในรันไทม์ เราขอแนะนำให้อัปเดตเป็นเวอร์ชันนี้

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่

เวอร์ชัน 2.0.3

27 ตุลาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.3

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

รุ่นนี้มีการแก้ไขปัญหาบางอย่าง เราขอแนะนำให้อัปเดตเป็นเวอร์ชันนี้

  • การจัดการขอบของหน้าต่าง
  • การจัดการสัดส่วนมิติข้อมูลในบางสถานการณ์
  • แอปขัดข้องเมื่อใช้เลย์เอาต์ RTL บางรายการ

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่

เวอร์ชัน 2.0.2

6 ตุลาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.2

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

รุ่นนี้ปรับปรุงประสิทธิภาพและแก้ไขปัญหาบางอย่าง เราขอแนะนำให้อัปเดตเป็นเวอร์ชันนี้

  • การจัดการระดับการมองเห็นของมุมมอง GONE ใน ConstraintLayout ไม่ถูกต้องในบางสถานการณ์
  • การจัดการเชนที่แพ็กใน ConstraintLayout ไม่ถูกต้องในบางสถานการณ์
  • แก้ไขข้อยกเว้นเงินเฟ้อคงที่ใน API 15 สำหรับตัวช่วยเลย์เอาต์เสมือนของ Flow
  • limitsBoundsTo ถูกแบ่งใน MotionLayout
  • jump to end was broken in MotionLayout in some situations (chaining transitions)

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่

เวอร์ชัน 2.0.1

25 สิงหาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.1

การอัปเดตนี้เป็นการอัปเดตเล็กๆ ที่ช่วยให้ใช้ MotionEditor ใน Android Studio ได้

เวอร์ชัน 2.0.0

21 สิงหาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.0

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

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่

การแก้ไขที่สำคัญมีดังนี้

  • การแก้ไขความล่าช้าในการเปลี่ยน MotionLayout และ TransitionListener
  • การแก้ไขโฟลว์และแบริเออร์ของ ConstraintLayout

เวอร์ชัน 2.0.0-rc1

29 กรกฎาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.0-rc1

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

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่

การแก้ไขที่สำคัญมีดังนี้

  • การแก้ไขโฟลว์
  • การแก้ไข RecyclerView (เราขอแนะนำให้อัปเดตเป็น RecyclerView 1.2.0 Alpha 5 ขึ้นไป)
  • แก้ไข MotionLayout TransitionListener
  • แก้ไขปัญหาหน่วยความจำรั่วไหลใน MotionLayout

เวอร์ชัน 2.0.0-beta8

7 กรกฎาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.0-beta8

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

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่

การแก้ไขที่สำคัญมีดังนี้

  • ลักษณะการทำงานของตัวยึดตำแหน่ง
  • การแสดงผลเลเยอร์
  • แก้ไขโฟลว์และอุปสรรค
  • แก้ไข TransitionListener

เวอร์ชัน 2.0.0-beta7

12 มิถุนายน 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.0-beta7

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

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่

การแก้ไขที่สำคัญมีดังนี้

  • ปัญหาเกี่ยวกับมุมมองการเลื่อนที่ซ้อนกันใน MotionLayout
  • ปัญหาเกี่ยวกับเครื่องมือฟังการเปลี่ยนฉากด้วย MotionLayout
  • หน่วยความจำรั่วใน MotionLayout
  • ปัญหาเกี่ยวกับ RecyclerView
  • การแสดงผลของกลุ่ม
  • ปัญหาเกี่ยวกับการเว้นวรรค

เวอร์ชัน 2.0.0-เบต้า 6

13 พฤษภาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.0-beta6

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

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่ การแก้ไขที่สำคัญคือการจัดการระดับการมองเห็นของกลุ่มและปัญหาข้อจำกัดที่ได้มาใน MotionLayout

เวอร์ชัน 2.0.0-beta5

7 พฤษภาคม 2020

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.0-beta5

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

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่

เวอร์ชัน 2.0.0-beta4

16 ธันวาคม 2019

ระบบจะถอนการอ้างสิทธิ์androidx.constraintlayout:constraintlayout:2.0.0-beta4

ฟีเจอร์ใหม่

MotionLayout

แอตทริบิวต์ใหม่ในการเปลี่ยนผ่าน

  • layoutDuringTransition : let you configure how MotionLayout should react to children's requestLayouts calls during a transition. ค่าที่เป็นไปได้คือ {ignoreRequest, honorRequest}
  • pathMotionArc : เส้นทางที่องค์ประกอบเคลื่อนที่จะใช้ส่วนโค้ง ค่าที่เป็นไปได้คือ {startVertical | startHorizontal | flip | none }

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

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

ดูรายการปัญหาที่ปิดแล้วได้ที่นี่