Constraintlayout
androidx.constraintlayout.widget
يسرد هذا الجدول جميع العناصر في المجموعة androidx.constraintlayout.
| العناصر | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأولي |
|---|---|---|---|---|
| constraintlayout | 2.2.1 | - | - | - |
| constraintlayout-compose | 1.1.1 | - | - | - |
| constraintlayout-core | 1.1.1 | - | - | - |
تحديد الاعتماديات
لإضافة اعتمادية على ConstraintLayout، يجب تضمين مستودع Google Maven في مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف الاعتماديات الخاصة بالعناصر التي تحتاج إليها في ملف build.gradle لتطبيقك أو وحدتك:
Groovy
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. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.
يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.
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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- يتم الآن توفير العلامات بشكل فردي من خلال العنصر المرافق ويمكن دمجها مع عامل التشغيل
or. (I9df53) - أدوات مساعدة مبسطة في
createRowوcreateColumnتحسين أسماء المَعلماتcreateGridوالمستندات لتوضيحها بشكل أكبر (Iebc92) - تم تبسيط واجهة برمجة التطبيقات
animateChangesفيConstraintLayoutلتتطلّب فقط قيمةAnimationSpecغير فارغة. أصبحتonIncomingConstraintsفيInvalidationStrategyالآن دالة lambda عادية. تمت إعادة تسميةfixedWidthRateإلىshouldInvalidateOnFixedWith، وينطبق الأمر نفسه على خيار المنتج "الارتفاع". (Ie59cd، b/332898040، b/336370035) - سيتم استبدال مصادر
NestedScroll"السحب والإفلات" بمصادر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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة
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مع لغة النطاق الخاص بمعدِّل العرض المضمّن (Modifier.constrainAs)، وعند إجراء تغيير على لغة النطاق الخاص بالقيود، سيتم تلقائيًا تحريكConstraintLayoutإلى تلك الحالة الجديدة. (I9abf1) - تم تفعيل وظيفة
limitBoundsToعلى OnSwipe. (I56522)
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية "
TransitionScope.staggered" إلى "TransitionScope.maxStaggerDelay". (I0fd2d)
إصلاح الأخطاء
- تم إصلاح مشكلة عدم عمل المَعلمة
dragScaleمنOnSwipe. (8bef26) - تم إصلاح مشكلة عدم عمل
customColorفيMotionSceneبشكل صحيح مع الألوان الشفافة. (81b2ac) - تم إصلاح مشكلة عدم إعلان
OnSwipeبشكل صحيح عند توقّفه، وتم أيضًا إصلاح عملية احتساب السرعة الأولية لـtouchUp. (Ia5f6f) - تم تعديل KDoc لكل من
ConstraintLayoutComposable و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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لم يعُد
MotionLayoutApi تجريبيًا، ويمثّل هذا الإصدار المجموعة الأولية من واجهة برمجة التطبيقات الثابتة لـMotionLayout. (I288f4) - تمت إزالة جهة الاتصال "
MotionLayoutState". (Id3ac1) - يمكنك الآن استخدام
DebugFlagsلتصحيح الأخطاء المرئية:DebugFlags(showBounds = true). (Ic714b) - تم تغيير متغيّر الإضافة
Dp.asDimensionإلى طريقة:Dp.asDimension(). (I2d6ef) - أصبحت ميزة "التحريك المتداخل" متاحة الآن في لغة
MotionLayout، ويمكنك تحديد الحد الأقصى للتأخير باستخدامTransitionScope.staggered، كما يمكنك استخدامConstrainScope.staggeredWeight(ضمنMotionSceneScope) للحصول على ترتيب مخصّص للتحريك المتداخل. (I70275) - تم إجراء تغييران على أداة Grid المساعدة: 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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لم يعُد
Modifier.intermediateLayoutيتطلّبLookaheadScopeصريحًا. يحتوي حظر القياس فيintermediateLayoutعلىIntermediateMeasureScopeكمستقبِل، ما يوفّرCoroutineScopeوLookaheadScopeوMeasureScopeبسهولة. - تم استبدال
LookaheadLayoutبـLookaheadScope، ولم يعُد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لـ "أداة الشبكة" في Compose.ReverseSpanDirection: لعكس مواصفات العرض والارتفاع للنطاقات/عمليات التخطّي- ستلتزم
SpansOrderFirstبالترتيب الذي تظهر به التطبيقات المصغّرة. (I6ad50)
- استخدِم
Modifier.onStartEndBoundsChanged(...)للحصول على الحدود المحلية لعناصر Composables فيMotionLayoutلا تتأثر بالرسوم المتحركة. مفيدة لأي تفاعل مع واجهة المستخدم يتطلّب معلومات التنسيق التي قد تؤدي أيضًا إلى تشغيل الرسوم المتحركة، مثلDragAndDrop. (I6b5f9) - تفعيل عمليات التخطّي والنطاقات في "أداة مساعدة الشبكة" في 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الذي كان يتسبّب في عدم عرض Flow بشكلٍ سليم وفقًا للمَعلمةmaxElementالمحدّدة. (e1f2ed3) - تم إصلاح مشكلة عدم تعديل
startConstraintSetعند تغيير "الانتقال" من خلال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)
- إضافة اختبارات Macrobenchmark لـ
MotionLayoutفي Compose (36f43bc) - لمزيد من المعلومات حول التغييرات في الإصدار السابق من Compose، اطّلِع على صفحة Wiki.
تغييرات واجهة برمجة التطبيقات
- المَعلمتان Flip
addConstraintSetوaddTransition(152facc)
إصلاح الأخطاء
- إصلاح السلاسل الأفقية (ed5f56e)
الإصدار 1.1.0-alpha01
20 مايو 2022
تم طرح androidx.constraintlayout:constraintlayout-compose:1.1.0-alpha01.
يُرجى العِلم أنّ واجهة برمجة التطبيقات MotionLayout تجريبية وتتطلّب الموافقة على استخدامها.
لمزيد من المعلومات، اطّلِع على الميزات الجديدة في الإصدار 1.1.0-alpha01 من Compose على GitHub.
الإصدار 2.2
الإصدار 2.2.1
26 فبراير 2025
تم طرح androidx.constraintlayout:constraintlayout:2.2.1. يتضمّن الإصدار 2.2.1 هذه التعديلات.
المساهمة الخارجية
- إصلاح مشكلة في التوافق الثنائي من مكتبة
constraintlayout-coreشكرًا "كارلو مارينانجيلي". (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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضِف طريقة 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 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
يوفّر الإصدار 1.0 من ConstraintLayout-compose وظائف ConstraintLayout في Jetpack Compose.
الإصدار 1.0.1
20 مايو 2022
تم طرح androidx.constraintlayout:constraintlayout-compose:1.0.1.
يُرجى العِلم أنّ واجهة برمجة التطبيقات MotionLayout تجريبية وتتطلّب الموافقة على استخدامها.
لمزيد من المعلومات، اطّلِع على الميزات الجديدة في Compose 1.0.1 على GitHub.
الإصدار 1.0.0
13 يناير 2022
تم طرح androidx.constraintlayout:constraintlayout-compose:1.0.0.
يُرجى العِلم أنّ واجهة برمجة التطبيقات MotionLayout أصبحت تجريبية الآن وتتطلّب الموافقة على استخدامها.
لمزيد من المعلومات، يُرجى الاطّلاع على مقالة 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.
هذا الإصدار هو الإصدار التجريبي الثاني. ويُعدّ هذا الإصدار متوافقًا تمامًا مع الميزة، إذ يوفّر ConstraintLayout وMotionLayout في "الكتابة السحرية".
لمزيد من المعلومات، يُرجى الاطّلاع على مقالة GitHub الميزات الجديدة في الإصدار 1.0 (Compose).
الإصدار 1.0.0-beta02
30 تموز (يوليو) 2021
تم طرح androidx.constraintlayout:constraintlayout-compose:1.0.0-beta02.
هذا الإصدار هو الإصدار التجريبي الثاني. ويُعدّ هذا الإصدار متوافقًا تمامًا مع الميزة، إذ يوفّر ConstraintLayout وMotionLayout في "الكتابة السحرية".
لمزيد من المعلومات، يُرجى الاطّلاع على مقالة GitHub الميزات الجديدة في الإصدار 1.0 (Compose).
الإصدار 1.0.0-beta01
22 تموز (يوليو) 2021
تم طرح androidx.constraintlayout:constraintlayout-compose:1.0.0-beta01.
هذا الإصدار هو الإصدار التجريبي الأول. ويُعدّ هذا الإصدار متوافقًا تمامًا مع الميزة، إذ يوفّر ConstraintLayout وMotionLayout في "الكتابة السحرية".
لمزيد من المعلومات، يُرجى الاطّلاع على مقالة GitHub الميزات الجديدة في الإصدار 1.0 (Compose).
الإصدار 1.0.0-alpha07
18 أيار (مايو) 2021
تم طرح androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha07.
- تم تعديلها لتكون متوافقة مع الإصدار
1.0.0-beta07من Compose.
الإصدار 1.0.0-alpha06
4 أيار (مايو) 2021
تم طرح androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha06.
- تحسين Compose: دالة مركّبة مضمّنة في Constraintlayout (#193)
- تقليل عمليات إعادة القياس في Compose (#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.
التحديث لاستخدام أحدث إصدار من محرّك 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 alpha12
الإصدار 1.0.0-alpha01
2 شباط (فبراير) 2021
تم طرح androidx.constraintlayout:constraintlayout-compose:1.0.0-alpha01.
الإصدار الأول من المكتبة، الذي يوفّر لغات خاصة بالمجال (DSL) مضمّنة وخارجية للتعبير عن القيود
الإصدار 2.1
يوفر الإصدار 2.1.0 من ConstraintLayout ميزات أكثر ثراءً في 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)
- إتاحة downUp 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:layout_width وandroid:layout_height غير اختياريتَين مرة أخرى بسبب مشاكل التوافق.
MotionLayout
- إتاحة إدراج وإزالة onSwipe وonClick في عمليات الانتقال آليًا
- إتاحة ميزة "الانتقالات" بشكل تجريبي عند تدوير الشاشة
- إضافة وسيطة مدة الدعم إلى عمليات الانتقال
- تحسين التوافق مع customAttributes التي تكون قيمتها منطقية أو مراجع
المساعدون
- تمت إضافة طريقة لتحريك عنصر معيّن في "لوحة العرض الدوّارة" أو الانتقال إليه مباشرةً
- أداة مساعدة جديدة في CircularFlow
يمكنك الاطّلاع على معلومات إضافية حول هذا الإصدار هنا والأخطاء التي تم إصلاحها.
الإصدار 2.1.0-alpha2
17 كانون الأول (ديسمبر) 2020
تم طرح androidx.constraintlayout:constraintlayout:2.1.0-alpha2.
يضيف الإصدار الأوّلي الثاني عدة ميزات جديدة:
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 : إدراج إطارات مفتاحية في طرق العرض المُشار إليها التي تتحرّك في اتجاه معيّن
- MotionLabel - A View for animating single line text
يمكنك الاطّلاع على معلومات إضافية عن هذا الإصدار هنا.
الإصدار 2.1.0-alpha1
19 تشرين الثاني (نوفمبر) 2020
تم طرح androidx.constraintlayout:constraintlayout:2.1.0-alpha1.
الإصدار الأوّل من الإصدار التجريبي 2.1. تتضمّن هذه الإصدارات ما يلي:
- أداة مساعدة في حركة لوحة العرض الدوّارة لإنشاء طرق عرض مخصّصة للوحات العرض الدوّارة
- تتضمّن مشاهد MotionLayout إمكانية تضمين القيود وتجاوزها
- توفّر MotionLayout إمكانية أفضل للتدوير (الإدخال والإخراج)
- تضيف MotionLayout السمة ViewTransitions، ما يتيح عمليات انتقال لعرض واحد عند تغيير مجموعات القيود.
يمكنك الاطّلاع على معلومات إضافية عن هذا الإصدار هنا.
الإصدار 2.0
يضيف الإصدار 2.0 من ConstraintLayout ميزات جديدة للتنسيقات (التنسيقات الافتراضية وما إلى ذلك) وفئة جديدة لتسهيل تحريك طرق العرض، وهي 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 لأداة المساعدة في التنسيق الافتراضي Flow
- تعطُّل limitsBoundsTo في 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 Transition وTransitionListener
- إصلاحات في ميزة "التدفق" و"الحاجز" في ConstraintLayout
الإصدار 2.0.0-rc1
29 تموز (يوليو) 2020
تم طرح androidx.constraintlayout:constraintlayout:2.0.0-rc1.
إصلاح الأخطاء
يمكنك الاطّلاع على قائمة بالمشاكل التي تم حلّها هنا.
تشمل الإصلاحات البارزة ما يلي:
- إصلاحات Flow
- إصلاحات RecyclerView (ننصحك بالتحديث إلى الإصدار 1.2.0 alpha 5 أو إصدار أحدث)
- إصلاحات في MotionLayout TransitionListener
- إصلاح مشكلة تسرّب الذاكرة في MotionLayout
الإصدار 2.0.0-beta8
7 تموز (يوليو) 2020
تم طرح androidx.constraintlayout:constraintlayout:2.0.0-beta8.
إصلاح الأخطاء
يمكنك الاطّلاع على قائمة بالمشاكل التي تم حلّها هنا.
تشمل الإصلاحات البارزة ما يلي:
- سلوك العنصر النائب
- مستوى رؤية الطبقة
- إصلاحات في Flow وBarrier
- إصلاحات TransitionListener
الإصدار 2.0.0-beta7
12 يونيو 2020
تم طرح androidx.constraintlayout:constraintlayout:2.0.0-beta7.
إصلاح الأخطاء
يمكنك الاطّلاع على قائمة بالمشاكل التي تم حلّها هنا.
تشمل الإصلاحات البارزة ما يلي:
- مشاكل عرض التمرير المتداخل في MotionLayout
- مشاكل في أداة معالجة الانتقالات مع 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.
الميزات الجديدة
MotionLayout
السمات الجديدة في "برنامج النقل":
- layoutDuringTransition : تتيح لك ضبط طريقة استجابة MotionLayout لطلبات layout التي يتم إرسالها من العناصر التابعة أثناء عملية الانتقال. القيم المحتمَلة هي {ignoreRequest, honorRequest}
- pathMotionArc : سيستخدم المسار الذي تسلكه العناصر المتحركة قوسًا. القيم المحتملة هي {startVertical | startHorizontal | flip | none }
يمكن الآن تحديد انتقال تلقائي، وذلك ببساطة عن طريق حذف ConstraintSets للبدء والانتهاء. سيتم استخدام عملية الانتقال التلقائية هذه في حال عدم العثور على أي عملية انتقال حالية أخرى لتتطابق مع حالات البدء/الانتهاء الحالية.
إصلاح الأخطاء
يمكنك الاطّلاع على قائمة بالمشاكل التي تم حلّها هنا.