القيد

تحديد موضع التطبيقات المصغّرة وحجمها بطريقة مرنة مع إمكانية تحديد الموضع نسبيًا.

يسرد هذا الجدول جميع العناصر في مجموعة androidx.constraintlayout.

العناصر الإصدار المستقر إصدار مرشح الإصدار التجريبي الإصدار الأولي
تقييد 2.1.4 - - الإصدار 2.2.0 -alpha13
إنشاء-ربط 1.0.1 - - 1.1.0-alpha13
قاعدة تقييد التخطيط 1.0.4 - - 1.1.0-alpha13

تعريف التبعيات

لإضافة تبعية على ConstraintLayout، يجب إضافة مستودع Google Maven إلى مشروعك. يمكنك الاطّلاع على مستودع Maven الذي يضم أدوات Google للحصول على مزيد من المعلومات.

أضف التبعيات للعناصر التي تحتاجها في ملف build.gradle لتطبيقك أو وحدتك:

رائع

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

Kotlin

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

ولمزيدٍ من المعلومات عن التبعيات، يُرجى الاطّلاع على مقالة إضافة تبعيات الإصدار.

ملاحظات

تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إخبارنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة تصويتك إلى مشكلة حالية من خلال النقر على زر النجمة.

إنشاء عدد جديد

راجع مستندات أداة تتبُّع المشاكل للحصول على مزيد من المعلومات.

ConstraintLayout-compose، وConstraintLayout-Core 1.1

الإصدار 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 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة 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" أثناء التمرير السريع. (I56522)

تغييرات واجهة برمجة التطبيقات

  • تمت إعادة تسمية 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 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • لم تعُد واجهة برمجة التطبيقات MotionLayout تجريبية، وتمثل هذه الواجهة المجموعة الأولية من واجهة برمجة التطبيقات الثابتة في MotionLayout. (I288f4)
  • تمت إزالة MotionLayoutState. (Id3ac1)
  • يمكنك الآن استخدام DebugFlags لتصحيح الأخطاء المرئية: DebugFlags(showBounds = true). (Ic714b)
  • تم تغيير متغير الإضافة Dp.asDimension إلى طريقة: Dp.asDimension(). (I2d6ef)
  • تتم عملية التبديل الآن إلى نظام DSL MotionLayout، ويمكنك تحديد الحدّ الأقصى للتأخير باستخدام TransitionScope.staggered، ويمكنك أيضًا استخدام ConstrainScope.staggeredWeight (ضمن MotionSceneScope) للحصول على طلب مرحلي مخصّص. (I70275)
  • تم إجراء تغييرين على مساعد الشبكة: 1. paddingLeft وpaddingRight إلى paddingStart وpaddingEnd على التوالي و2. عدِّل تنسيق gridSpans وgridSkip إلى مصفوفة من كائنات Span و Escape لجعلها أكثر تنظيمًا. (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 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • لم يعُد 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)

تغييرات واجهة برمجة التطبيقات

  • تفعيل علامتَي ReverseSpanDirection وSpansOrderFirst لـ "Grid Helper" (مساعد الشبكة) في Compose
    1. ReverseSpanDirection: يمكنك عكس مواصفات العرض والارتفاع للمساحات/التخطّي.
    2. SpansOrderFirst: ستلتزم spans بترتيب التطبيقات المصغّرة. (I6ad50)
  • استخدِم Modifier.onStartEndBoundsChanged(...) للحصول على الحدود المحلية للمحتوى القابل للتركيب في MotionLayout والتي لا تتأثر بالصور المتحركة. ويكون مفيدًا لأي تفاعل مع واجهة مستخدم يتطلب معلومات تنسيق قد يؤدي أيضًا إلى تشغيل صور متحركة، مثل 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 على هذه الالتزامات.

الميزات الجديدة

  • إضافة واجهات برمجة تطبيقات جديدة لتفعيل 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 على هذه الالتزامات.

الميزات الجديدة

  • أضف واجهات برمجة التطبيقات الجديدة لتمكين Grid Helper في Compose باستخدام تمثيل JSON والذي يسمح بوضع المواد القابلة للتنفيذ في شبكة ثنائية الأبعاد. (I968ad)

تغييرات واجهة برمجة التطبيقات

  • إتاحة وضعَي القوس المتّجه للأعلى والأسفل Arc.Above وArc.Below وضع القوس المستقل باتجاه MotionLayout (I184a9)
  • وأصبح من الممكن الآن وضع علامة ارتساء أساسية في الجزء العلوي/السفلي من موضع التثبيت، والعكس صحيح. (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 واحد فقط، ما دام أي من خصائصها قد تغيّرت عند إعادة التركيب. (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)
  • إضافة اختبارات قياس الأداء الكلي لـ MotionLayout في Compose (36f43bc)
  • لمزيد من المعلومات عن التغييرات في الإصدار السابق في Compose، يُرجى الاطّلاع على صفحة "ويكي".

تغييرات واجهة برمجة التطبيقات

  • قلب المعلّمتَين 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-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 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • أضِف طريقة ضبط للسماح للمطوّرين بضبط قيمة 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 wiki.

إصلاح الأخطاء

  • إصلاح التسرّب في لوحة العرض الدوّارة (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 هي الآن تجريبية وتتطلب التفعيل.

لمزيد من المعلومات، يمكنك الاطّلاع على مقالة GitHub الميزات الجديدة في الإصدار 1.0 (إنشاء).

الإصدار 1.0.0-rc02

16 تشرين الثاني (نوفمبر) 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-rc02".

لمزيد من المعلومات، يمكنك الاطّلاع على مقالة GitHub الميزات الجديدة في الإصدار 1.0 (إنشاء).

الإصدار 1.0.0-rc01

27 أيلول (سبتمبر) 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-rc01".

هذا الإصدار هو الإصدار التجريبي الثاني. يتم اعتبارها ميزة مكتملة، حيث توفّر ConstraintLayout وMotionLayout لميزة Compose.

لمزيد من المعلومات، يمكنك الاطّلاع على مقالة GitHub الميزات الجديدة في الإصدار 1.0 (إنشاء).

الإصدار 1.0.0-beta02

30 تموز (يوليو) 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02".

هذا الإصدار هو الإصدار التجريبي الثاني. يتم اعتبارها ميزة مكتملة، حيث توفّر ConstraintLayout وMotionLayout لميزة Compose.

لمزيد من المعلومات، يمكنك الاطّلاع على مقالة GitHub الميزات الجديدة في الإصدار 1.0 (إنشاء).

الإصدار 1.0.0-beta01

22 تموز (يوليو) 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01".

هذا الإصدار هو الإصدار التجريبي الأول. يتم اعتبارها ميزة مكتملة، حيث توفّر ConstraintLayout وMotionLayout لميزة Compose.

لمزيد من المعلومات، يمكنك الاطّلاع على مقالة GitHub الميزات الجديدة في الإصدار 1.0 (إنشاء).

الإصدار 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 inline القابل للإنشاء (رقم 193)
  • تقليل عمليات إعادة القياس في Compose (#210)

الإصدار 1.0.0-alpha05

15 آذار (مارس) 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha05".

  • يتضمن إصلاحًا لمحرك التحسين (b/182657720)
  • إضافة مَعلمة OptimizeLevel إلى البيانات القابلة للمشاركة في ConstraintLayout

الإصدار 1.0.0-alpha04

11 آذار (مارس) 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha04".

يُرجى التحديث لاستخدام أحدث محرّك أساسي للتنسيق المقيّد

الإصدار 1.0.0-alpha03

24 شباط (فبراير) 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha03".

تحديث إصدار الإصدار التجريبي 01 من Jetpack Compose

الإصدار 1.0.0-alpha02

10 شباط (فبراير) 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha02".

تحديث إصدار الإصدار الأولي 12 من Jetpack Compose

الإصدار 1.0.0-alpha01

2 فبراير 2021

تم إصدار "androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01".

الإصدار الأول من المكتبة، توفير DSLs مضمنة وخارجية للتعبير عن القيود.

الإصدار 2.1

يوفر الإصدار 2.1.0 من 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:

  • تحسين ميزة Onالتمرير السريع، بما في ذلك النوابض (الصلابة والتخميد والكتلة وما إلى ذلك) وعدم اكتمالها مطلقًا
  • الدالة sendToState
  • عرض وضع "الانتقال لأسفل" حيث يتم تشغيله إلى 100 والعكس عند النقر عليه من الأعلى إلى 0

إصلاحات متنوعة، ومنها:

  • حلّ مشكلة MotionLayout عند التمرير الرأسي (#173)
  • تحسينات على الأداء على MotionLayout المتداخل (#189)
  • الانتقال السريع باستخدام Nested ScrollView في MotionLayout (#189).
  • استخدام ConstraintSet في MotionLayout (#189)
  • دعم الانتقالات لأسفل الصفحة ViewTransitions في MotionLayout (#190)
  • إصلاح في ImageFilter عند إعادة استخدام العناصر القابلة للرسم (#192)
  • إضافة توافق الربيع في MotionLayout (#199)
  • تحسين الأداء إلى CircularFlow (#200)
  • إصلاحات القيود المشتقّة / تجاوز القيد (#212)

الإصدار 2.1.0-beta01

11 آذار (مارس) 2021

تم إصدار "androidx.constraintlayout:constraintlayout:2.1.0-beta01".

ConstraintLayout

أصبح android:lookup_width وandroid:Layout_height غير اختياريين بسبب مشاكل التوافق.

MotionLayout

  • دعم آلي للإدراج والإزالة عند التمرير بسرعة وonClick on Transitions
  • الدعم التجريبي للانتقال من خلال تدوير الشاشة
  • وسيطة مدة الدعم للانتقال
  • توافق أفضل مع السمات المخصّصة التي تكون منطقية أو المراجع

المساعدة

  • أضاف طريقة لتحريك أو الانتقال مباشرة إلى عنصر معين في لوحة العرض الدوّارة
  • مساعد جديد CircularFlow

يمكنك الاطّلاع على معلومات إضافية حول هذا الإصدار هنا وتم إغلاق الأخطاء.

الإصدار 2.1.0-alpha2

17 كانون الأول (ديسمبر) 2020

تم إصدار "androidx.constraintlayout:constraintlayout:2.1.0-alpha2".

يضيف هذا الإصدار الأولي الثاني العديد من الميزات الجديدة:

ConstraintLayout

  • أصبح كل من android:format_width وandroid:Layout_height اختياريًا الآن، مع ضبط wrap_content كسلوك تلقائي.
  • السمتان الحاليتان Format_restricttالعرض وLayout_restricttHeight للتعبير عن قيود الأبعاد
  • يدعم الهوامش السالبة للقيود
  • تدعم القيود من خط الأساس إلى الأعلى والخط القاعدي إلى الأسفل
  • يتوافق مع قيود هامش الربح الأساسي
  • تسمح القيم المشتركة بإدخال قيم خارجية في ConstraintLayout

MotionLayout

  • دعم مخترقين تجاوز الهدف (توقع، تجاوز الهدف)
  • دعم MotionHelper المحسَّن
  • إضافة تحديث متحرك لـ ConstraintSet إلى MotionLayout updateStateAnimate(id,cset,duration);
  • ViewTransition المستند إلى القيمة المشتركة
  • scheduleTransitonTo للسماح لك بتشغيل انتقال ليتم تشغيله عند اكتمال الانتقال الحالي.

المساعدة

  • تتوافق لوحة العرض الدوّارة الآن مع وضع لا نهائي (التفاف دائري)
  • 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".

إصلاح الأخطاء

يعالج هذا الإصدار بعض المشاكل. ننصحك بالتحديث إلى هذا الإصدار.

  • معالجة الإدخالات في Windows
  • التعامل مع نسبة الأبعاد في بعض الحالات
  • تعطُّل بعض التنسيقات من اليمين إلى اليسار

يمكنك الاطّلاع على قائمة المشاكل التي تم إغلاقها هنا.

الإصدار 2.0.2

6 تشرين الأول (أكتوبر) 2020

تم إصدار "androidx.constraintlayout:constraintlayout:2.0.2".

إصلاح الأخطاء

يحسّن هذا الإصدار الأداء ويحلّ بعض المشاكل. ننصحك بالتحديث إلى هذا الإصدار.

  • كانت معالجة إمكانية رؤية "GONE" في ConstraintLayout غير صحيحة في بعض المواقف
  • التعامل مع السلاسل المعبّأة في ConstraintLayout غير صحيح في بعض الحالات
  • تم إصلاح استثناء التضخم على واجهة برمجة التطبيقات 15 لمساعد التنسيق الافتراضي للتدفق
  • تم كسر الحد الخاص بـlimitBoundsTo في MotionLayout
  • كانت ميزة الانتقال إلى النهاية معطّلة في MotionLayout في بعض المواقف (تسلسل الانتقالات)

يمكنك الاطّلاع على قائمة المشاكل التي تم إغلاقها هنا.

الإصدار 2.0.1

25 آب (أغسطس) 2020

تم إصدار "androidx.constraintlayout:constraintlayout:2.0.1".

هذا تحديث ثانوي يتيح استخدام MotionEditor في "استوديو Android".

الإصدار 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-تجريبي7

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-الإصدار التجريبي4

16 كانون الأول (ديسمبر) 2019

تم إصدار "androidx.constraintlayout:constraintlayout:2.0.0-beta4".

الميزات الجديدة

تنسيق الحركة

السمات الجديدة في عملية النقل:

  • integrationDring Transition : يتيح لك تهيئة الطريقة التي يجب أن تتفاعل بها MotionLayout مع استدعاءات requestLayouts للأطفال أثناء الانتقال. القيم المحتملة هي {ignoreRequest, orRequestRequest}
  • pathMotionArc : سيستخدم المسار الذي تسلكه العناصر المتحركة قوسًا. القيم المحتملة هي {startVertical | startHorizontal | قلب | لا شيء }

يمكن الآن تحديد عملية انتقال افتراضية، وذلك ببساطة عن طريق حذف ConstraintSets في البداية والنهاية. سيتم استخدام هذا الانتقال التلقائي إذا لم يتم العثور على أي انتقال حالي آخر يتطابق مع حالات البدء/الانتهاء الحالية.

إصلاح الأخطاء

يمكنك الاطّلاع هنا على قائمة بالمشاكل التي تم إغلاقها.