Constraintlayout

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

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

อาร์ติแฟกต์ รุ่นที่เสถียร รุ่นที่อาจได้รับการเผยแพร่ รุ่นเบต้า เวอร์ชันอัลฟ่า
constraintlayout 2.2.0 - - -
constraintlayout-compose 1.1.0 - - -
แกนจำกัด 1.1.0 - - -

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

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

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

ดึงดูด

dependencies {
    implementation "androidx.constraintlayout:constraintlayout:2.2.0-beta01"
    // To use constraintlayout in compose
    implementation "androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01"
}

Kotlin

dependencies {
    implementation("androidx.constraintlayout:constraintlayout:2.2.0-beta01")
    // To use constraintlayout in compose
    implementation("androidx.constraintlayout:constraintlayout-compose:1.1.0-beta01")
}

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

ความคิดเห็น

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

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

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

ConstraintLayout-compose และ ConstraintLayout-Core 1.1

เวอร์ชัน 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 ที่ไม่เท่ากับ Null onIncomingConstraints ใน InvalidationStrategy เปลี่ยนเป็น Lambda ปกติแล้ว fixedWidthRate เปลี่ยนชื่อเป็น shouldInvalidateOnFixedWith ซึ่งเหมือนกันสำหรับตัวแปรความสูง (Ie59cd, b/332898040, b/336370035)
  • แหล่งที่มาของ NestedScroll ลากและปัดจะเปลี่ยนไปใช้ UserInput และ SideEffect เพื่อรองรับคำจำกัดความที่ขยายออกไปของแหล่งที่มาเหล่านี้ ซึ่งตอนนี้รวมภาพเคลื่อนไหว (ผลข้างเคียง) และล้อเลื่อนของเมาส์และแป้นพิมพ์ (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 ซึ่งไม่ใช่เลย์เอาต์แล้ว การดำเนินการนี้จะอนุญาตให้ MeasurePolicy ของผู้ปกครองควบคุมเนื้อหาย่อยใน LookaheadScope ได้โดยตรง (Ibe2e5)
  • ตอนนี้ Easing.Cubic() สามารถใช้พารามิเตอร์ Overshoot ได้แล้ว (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 ใน Compose
    1. ReverseSpanDirection: กลับข้อกำหนดความกว้างและความสูงสำหรับระยะเวลา/การข้าม
    2. SpansOrderFirst: ช่องจะเป็นไปตามลําดับของวิดเจ็ต (I6ad50)
  • ใช้ Modifier.onStartEndBoundsChanged(...) เพื่อรับขอบเขตในท้องถิ่นของ Composable ใน MotionLayout ที่ไม่ได้รับผลกระทบจากภาพเคลื่อนไหว มีประโยชน์สำหรับการโต้ตอบ UI ใดๆ ก็ตามที่ต้องใช้ข้อมูลเลย์เอาต์ซึ่งอาจทริกเกอร์ภาพเคลื่อนไหวด้วย เช่น DragAndDrop (I6b5f9)
  • เปิดใช้การข้ามและการขยายของเครื่องมือช่วยจัดตารางกริดในเครื่องมือเขียน (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 ใหม่เพื่อเปิดใช้เครื่องมือช่วยจัดตารางกริดในเครื่องมือเขียนด้วยการแสดงผล JSON ซึ่งช่วยให้วางคอมโพสิเบิลในตารางกริด 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) ภายใน ConstrainScope ตอนนี้คุณสามารถตั้งค่ามิติข้อมูลคงที่ด้วย Dp.asDimension ได้อย่างง่ายดาย width = 10.dp.asDimension (I021ec, Ia0960)
  • ตอนนี้เมธอด MotionScene() และ Transition() เป็นฟังก์ชันที่ประกอบไม่ได้แล้ว ตอนนี้ออบเจ็กต์จากฟังก์ชันเหล่านี้ (รวมถึง ConstraintSet) ควรเปรียบเทียบกันได้ ตอนนี้ animateChanges = true ใน ConstraintLayout ใช้ได้กับข้อมูลอ้างอิง ConstraintSet รายการเดียวเท่านั้น ตราบใดที่พร็อพเพอร์ตี้ใดๆ ของ animateChanges = true เปลี่ยนแปลงเมื่อมีการคอมโพสิชันใหม่ (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)
  • ดูข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงในรุ่นก่อนหน้าในเครื่องมือเขียนได้ที่หน้า Wiki

การเปลี่ยนแปลง 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.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 มีคอมมิตเหล่านี้

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

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

  • แก้ปัญหาการรั่วไหลใน View Carousel (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 อยู่ในขั้นทดลองและต้องเลือกใช้

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

เวอร์ชัน 1.0.0-rc02

16 พฤศจิกายน 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-rc02 ได้รับการปล่อยแล้ว

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

เวอร์ชัน 1.0.0-rc01

27 กันยายน 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-rc01 ได้รับการปล่อยแล้ว

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

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

เวอร์ชัน 1.0.0-beta02

30 กรกฎาคม 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02 ได้รับการปล่อยแล้ว

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

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

เวอร์ชัน 1.0.0-beta01

22 กรกฎาคม 2021

ปล่อย androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01 แล้ว

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

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

เวอร์ชัน 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 ได้รับการปล่อยแล้ว

  • การเพิ่มประสิทธิภาพการคอมโพสิท: คอมโพสิทในบรรทัดของ Constraintlayout (#193)
  • ลดการวัดอีกครั้งในการเขียน (#210)

เวอร์ชัน 1.0.0-alpha05

15 มีนาคม 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05 ได้รับการปล่อยแล้ว

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

เวอร์ชัน 1.0.0-alpha04

11 มีนาคม 2021

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04 ได้รับการปล่อยแล้ว

อัปเดตเพื่อใช้เครื่องมือ จำกัดแบบ 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 ได้รับการปล่อยแล้ว

การอัปเดตรุ่นสำหรับรุ่น alpha12 ของ Jetpack Compose

เวอร์ชัน 1.0.0-alpha01

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

androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01 ได้รับการปล่อยแล้ว

ไลบรารีรุ่นแรกที่มี DSL ทั้งแบบแทรกและแบบภายนอกเพื่อแสดงข้อจำกัด

เวอร์ชัน 2.1

ConstraintLayout 2.1.0 มีฟีเจอร์ที่หลากหลายยิ่งขึ้นใน MotionLayout และตัวช่วยใหม่ (ภาพสไลด์ ฯลฯ)

เวอร์ชัน 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)
  • รองรับ ViewTransitions แบบลงบนใน 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 ออกในทรานซิชัน
  • การสนับสนุนแบบทดลองสำหรับการเปลี่ยนผ่านการหมุนหน้าจอ
  • รองรับอาร์กิวเมนต์ระยะเวลาของการเปลี่ยน
  • รองรับ customAttributes ที่เป็นบูลีนหรือการอ้างอิงได้ดียิ่งขึ้น

ตัวช่วย

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

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

เวอร์ชัน 2.1.0-alpha2

17 ธันวาคม 2020

androidx.constraintlayout:constraintlayout:2.1.0-alpha2 ได้รับการปล่อยแล้ว

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

ConstraintLayout

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

MotionLayout

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

ตัวช่วย

  • ตอนนี้ภาพสไลด์รองรับโหมดแบบวนซ้ำ (วนรอบ) แล้ว
  • ReactiveGuide : หลักเกณฑ์ที่จะจัดตําแหน่งโดยอัตโนมัติเมื่อมีการเปลี่ยนแปลง SharedValue
  • MotionEffect : แทรกคีย์เฟรมไปยังมุมมองอ้างอิงที่เคลื่อนไหวไปในทิศทางหนึ่งๆ
  • MotionLabel - มุมมองสำหรับการทำให้ข้อความบรรทัดเดียวเคลื่อนไหว

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

เวอร์ชัน 2.1.0-alpha1

19 พฤศจิกายน 2020

androidx.constraintlayout:constraintlayout:2.1.0-alpha1 ได้รับการปล่อยแล้ว

อัลฟ่ารุ่นแรกของรุ่น 2.1 เพิ่มการรองรับ

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

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

เวอร์ชัน 2.0

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

เวอร์ชัน 2.0.4

29 ตุลาคม 2020

ปล่อย androidx.constraintlayout:constraintlayout:2.0.4 แล้ว

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

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

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

เวอร์ชัน 2.0.3

27 ตุลาคม 2020

androidx.constraintlayout:constraintlayout:2.0.3 ได้รับการปล่อยแล้ว

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

เวอร์ชันนี้แก้ไขปัญหา 2-3 ข้อ เราขอแนะนำให้อัปเดตเป็นเวอร์ชันนี้

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

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

เวอร์ชัน 2.0.2

6 ตุลาคม 2020

ปล่อย androidx.constraintlayout:constraintlayout:2.0.2 แล้ว

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

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

  • การจัดการการแสดงผล GONE ของมุมมองใน ConstraintLayout ไม่ถูกต้องในบางสถานการณ์
  • การจัดการกับเชนที่แพ็กใน ConstraintLayout ไม่ถูกต้องในบางสถานการณ์
  • แก้ไขข้อยกเว้นเงินเฟ้อใน API 15 สำหรับตัวช่วยเลย์เอาต์เสมือนจริงของโฟลว์
  • limitsBoundsTo ใช้งานไม่ได้ใน MotionLayout
  • การข้ามไปยังส่วนท้ายใช้งานไม่ได้ใน MotionLayout ในบางสถานการณ์ (การเปลี่ยนรูปแบบแบบต่อเนื่อง)

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

เวอร์ชัน 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
  • ปัญหาเกี่ยวกับ Listener การเปลี่ยนรูปแบบของ MotionLayout
  • หน่วยความจำรั่วไหลใน MotionLayout
  • ปัญหาเกี่ยวกับ RecyclerView
  • การแสดงผลของกลุ่ม
  • ปัญหาเกี่ยวกับการเพิ่มระยะห่าง

เวอร์ชัน 2.0.0-beta6

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 แล้ว

ฟีเจอร์ใหม่

เลย์เอาต์แบบเคลื่อนไหว

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

  • layoutDuringTransition : ช่วยให้คุณกําหนดค่าวิธีที่ MotionLayout ควรตอบสนองต่อการเรียก requestLayouts ขององค์ประกอบย่อยในระหว่างการเปลี่ยนรูปแบบ ค่าที่เป็นไปได้คือ {ignoreRequest, certificationRequest}
  • pathMotionArc : เส้นทางที่องค์ประกอบเคลื่อนไหวจะใช้ส่วนโค้ง ค่าที่เป็นไปได้คือ {startVertical | startHorizontal | flip | none }

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

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

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