Compose Animation

إنشاء رسوم متحركة في تطبيقات Jetpack Compose لإثراء تجربة المستخدم
آخر الأخبار الإصدار الثابت إصدار محتمل الإصدار التجريبي الإصدار الأوّلي
‫9 سبتمبر 2026 1.12.1 - - 1.13.0-alpha03

البنية

‫Compose هي مجموعة من 7 أرقام تعريف لمجموعات Maven ضمن androidx. تحتوي كل مجموعة على مجموعة فرعية مستهدَفة من الوظائف، ولكل منها مجموعة خاصة من ملاحظات الإصدار.

يوضّح هذا الجدول المجموعات ويتضمّن روابط لكل مجموعة من ملاحظات الإصدار.

مجموعةالوصف
compose.animationإنشاء رسوم متحركة في تطبيقات Jetpack Compose لإثراء تجربة المستخدم
compose.compilerيمكنك تحويل دوال ‎ @Composable وإتاحة عمليات التحسين باستخدام إضافة لبرنامج التجميع في Kotlin.
compose.foundationكتابة تطبيقات Jetpack Compose باستخدام وحدات أساسية جاهزة للاستخدام وتوسيع نطاق الأساس لإنشاء أجزاء نظام التصميم الخاص بك
compose.materialإنشاء واجهات مستخدم Jetpack Compose باستخدام "مكوّنات التصميم المتعدد الأبعاد" الجاهزة للاستخدام هذه هي نقطة الدخول الأعلى مستوى في Compose، وهي مصمَّمة لتوفير مكوّنات تتطابق مع تلك الموضّحة في www.material.io.
compose.material3يمكنك إنشاء واجهات مستخدم Jetpack Compose باستخدام مكوّنات التصميم المتعدد الأبعاد 3، وهي أحدث إصدار من التصميم المتعدد الأبعاد. يتضمّن تصميم Material 3 عناصر وميزات محدّثة لتخصيص التصميم، مثل الألوان الديناميكية في Material You، وهو مصمّم ليكون متوافقًا مع الأسلوب المرئي الجديد وواجهة مستخدم النظام في Android 12.
compose.runtimeهي اللبنات الأساسية لنموذج برمجة Compose وإدارة الحالة، ووقت التشغيل الأساسي الذي يستهدفه المكوّن الإضافي لبرنامج تجميع Compose.
compose.uiالمكوّنات الأساسية لواجهة مستخدم Compose اللازمة للتفاعل مع الجهاز، بما في ذلك التصميم والرسم والإدخال

تحديد الاعتماديات

لإضافة اعتمادية على Compose، يجب تضمين مستودع Google Maven في مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.

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

رائع

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

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

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

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.15"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

الملاحظات

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

إنشاء مشكلة جديدة

يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.

الإصدار 1.13

الإصدار ‎1.13.0-alpha03

‫9 سبتمبر 2026

تم طرح androidx.compose.animation:animation-*:1.13.0-alpha03. يتضمّن الإصدار 1.13.0-alpha03 هذه التعديلات.

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

  • تمت إزالة جهة الاتصال "ExperimentalDeferredTransitionApi". لم تعُد واجهات برمجة التطبيقات الخاصة بعمليات الانتقال المؤجّلة تتطلّب الموافقة على استخدام الميزات التجريبية. (Ib6430)

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

  • تم تعديل compileSdk لمكتبات Compose إلى الإصدار 37.1. سيتطلّب ذلك تعديل compileSdk بشكل متعدٍّ لجميع التطبيقات والمكتبات التي تستخدم Compose. (I05b0f)

الإصدار ‎1.13.0-alpha02

‫26 أغسطس 2026

تم طرح androidx.compose.animation:animation-*:1.13.0-alpha02. يتضمّن الإصدار 1.13.0-alpha02 هذه التعديلات.

الإصدار ‎1.13.0-alpha01

‫12 أغسطس 2026

تم طرح androidx.compose.animation:animation-*:1.13.0-alpha01. يتضمّن الإصدار 1.13.0-alpha01 هذه التعديلات.

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

  • تمت إعادة EnterTransition.with كإصدار قديم مع DeprecationLevel.HIDDEN للتوافق الثنائي. (I71214، b/535291175)
  • تمت إضافة تعليقات توضيحية إلى طرق أساسية فارغة قابلة للتجاوز في Compose باستخدام @EmptySuper للإشارة إلى أنّه يجب ألا تستدعي عمليات التنفيذ المتجاوزة super. (Id407b)
  • تمت إضافة CapturedAnimatedVisibility، وهو بديل عن AnimatedVisibility يتخلص على الفور من تركيبة العنصر الفرعي عند الخروج، ويحرّك آخر إطار معروض باستخدام GraphicsLayer. (I6c5b3)
  • تمت إعادة تسمية الحمل الزائد rememberTransition الذي يقبل DeferredTransitionState إلى rememberDeferredTransition لتجنُّب الخلط بينه وبين متغيرات TransitionState العادية. (I7bb7e)
  • تمت إتاحة EnterExitTransitionConfig للجميع في EnterTransition وExitTransition. (Idd5a4، b/330152398)
  • أصبح الإصداران Transition.Crossfade وcreateChildTransition ثابتَين الآن. تمت إزالة EnterTransition.with (استخدِم togetherWith). (I38f66)
  • أصبحت createChildTransition ثابتة الآن. (Ied832، b/261422996)
  • لدى "androidx.benchmark" الآن minSdk يبلغ 24. (Ic2a85)
  • تم عرض القيمة المتحركة الحالية في DeferredTargetAnimation. (Ie4f6e، b/434659224)
  • استبدِل واجهة برمجة التطبيقات التجريبية @AnimationToolingApi بواجهة برمجة التطبيقات @RestrictTo التي توفّر ضمانات أكثر صرامة بشأن التتبُّع. (Ia4fd1، b/524317805)
  • إصلاح أخطاء في واجهتَي برمجة التطبيقات unveilIn وveilOut (I9e3a3)

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

  • تم تحسين عملية تهيئة animation خصائص فئة القيم ذات المستوى الأعلى على مستوى الملف باستخدام دوال جلب ديناميكية. (I88b86)
  • تم تحسين عملية تهيئة العنصر المرافق compose:animation لفئات القيم (StartOffsetType وArcMode وSlideDirection) من خلال استخدام الدوال البرمجية الديناميكية لجلب البيانات. (I4162e)
  • تنظيف معلومات واجهة برمجة التطبيقات (Ia8066)

الإصدار 1.12

الإصدار 1.12.1

‫9 سبتمبر 2026

تم طرح androidx.compose.animation:animation-*:1.12.1. يتضمّن الإصدار 1.12.1 هذه التعديلات.

الإصدار 1.12.0

‫12 أغسطس 2026

تم طرح androidx.compose.animation:animation-*:1.12.0. يتضمّن الإصدار 1.12.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.11.0:

الإصدار ‎1.12.0-rc01

‫29 يوليو 2026

تم طرح androidx.compose.animation:animation-*:1.12.0-rc01. يتضمّن الإصدار 1.12.0-rc01 هذه التعديلات.

الإصدار ‎1.12.0-beta02

‫01 يوليو 2026

تم طرح androidx.compose.animation:animation-*:1.12.0-beta02. يتضمّن الإصدار 1.12.0-beta02 هذه التعديلات.

الإصدار ‎1.12.0-beta01

‫17 يونيو 2026

تم طرح androidx.compose.animation:animation-*:1.12.0-beta01. يتضمّن الإصدار 1.12.0-beta01 هذه التعديلات.

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

  • تمت إضافة المَعلمة permitTransformDuringDeferredTransition إلى SharedContentConfig للتحكّم في ما إذا كان يجب أن تتحوّل العناصر المشترَكة بصريًا مع الحاوية الرئيسية خلال المرحلة المؤجّلة من DeferredTransition. (I4b67b)
  • تمت إعادة هيكلة Transition إلى فئة محكمة الإغلاق وتحسين DeferredTransition مستندات واجهة برمجة التطبيقات والأمان. (Iecb8f)
  • تمّت إضافة inactiveElementColor إلى LookaheadAnimationVisualDebugging" في androidx-main
  • تمت إضافة inactiveElementColor إلى LookaheadAnimationVisualDebugging (I5454b، b/501193322)
  • تمت إزالة التعليق التوضيحي "ExperimentalAnimatableApi". (I4e670، b/500030165)

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

  • تم إصلاح مشكلة في LinkComposer كان من الممكن أن تؤدي إلى تخطّي الدوال المركّبة بدلاً من إعادة التكوين عند إبطالها أثناء التكوين. (Ie29fe)

الإصدار ‎1.12.0-alpha03

‫19 مايو 2026

تم طرح androidx.compose.animation:animation-*:1.12.0-alpha03. يتضمّن الإصدار 1.12.0-alpha03 هذه التعديلات.

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

  • لم يعُد DeferredTargetAnimation تجريبيًا، يُرجى إزالة خيار الموافقة على استخدامه في androidx-main
  • تمت إضافة المَعلمة mutableTransform إلى AnimatedVisibility وAnimatedContent لإتاحة التعديل اليدوي المباشر للسمة (مثلاً، لإيماءات الرجوع التوقّعية) أثناء مرحلة الانتقال المؤجّل. (I236e8)
  • لم تعُد ميزة "DeferredTargetAnimation" تجريبية، يُرجى إزالة الموافقة. (I1e4ae، b/500030165)
  • تعداد جديد لإتاحة المشغّلات في أدوات واجهة المستخدم (I6e198، b/478807872)

الإصدار ‎1.12.0-alpha02

‫6 مايو 2026

تم طرح androidx.compose.animation:animation-*:1.12.0-alpha02. يتضمّن الإصدار 1.12.0-alpha02 هذه التعديلات.

الإصدار ‎1.12.0-alpha01

‫22 أبريل 2026

تم طرح androidx.compose.animation:animation-*:1.12.0-alpha01. يتضمّن الإصدار 1.12.0-alpha01 هذه التعديلات.

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

  • تم تعديل Compose compileSdk إلى الإصدار 37 من واجهة برمجة التطبيقات. وهذا يعني أنّه يجب استخدام الإصدار 9.2.0 من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" على الأقل عند استخدام Compose. (Id45cd، b/413674743)
  • إنهاء الصورة المتحركة SeekableTransitionState قبل التركيب (1bf9dc، b/410055849)

الإصدار 1.11

الإصدار 1.11.4

‫01 يوليو 2026

تم طرح androidx.compose.animation:animation-*:1.11.4. يتضمّن الإصدار 1.11.4 هذه التعديلات.

الإصدار 1.11.3

‫17 يونيو 2026

تم طرح androidx.compose.animation:animation-*:1.11.3. يتضمّن الإصدار 1.11.3 هذه التعديلات.

الإصدار 1.11.2

‫19 مايو 2026

تم طرح androidx.compose.animation:animation-*:1.11.2. يتضمّن الإصدار 1.11.2 هذه التعديلات.

الإصدار 1.11.1

‫6 مايو 2026

تم طرح androidx.compose.animation:animation-*:1.11.1. يتضمّن الإصدار 1.11.1 هذه التعديلات.

الإصدار 1.11.0

‫22 أبريل 2026

تم طرح androidx.compose.animation:animation-*:1.11.0. يتضمّن الإصدار 1.11.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.10.0:

  • تم طرح androidx.compose.animation:animation-*:1.11.0. يجمع هذا الإصدار الثابت بين التحسينات وعمليات الإصلاح من دورة تطوير الإصدار 1.11.0، مع التركيز على ثبات العناصر المشترَكة وموثوقية سلاسل المحادثات وأدوات المطوّرين الجديدة.

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

  • تصحيح الأخطاء المرئية في ميزة "التحميل المسبق": قدّمنا مجموعة جديدة من إمكانات تصحيح الأخطاء المرئية التي تتيح عرض المعلومات المرئية ذات الصلة بالعناصر المشترَكة وModifier.animatedBounds. وتشمل هذه المعلومات: حدود الاستهداف، ومسار حركة حدود الصورة المتحركة، وعدد النتائج المطابقة التي تم العثور عليها، وما إذا كان الانتقال نشطًا، وما إلى ذلك.

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

  • تمت إضافة واجهات برمجة التطبيقات الجديدة LookaheadAnimationVisualDebugging وCustomizedLookaheadAnimationVisualDebugging وLookaheadAnimationVisualDebugConfig للمساعدة في تصحيح أخطاء الحدود المتحركة والرسوم المتحركة للعناصر المشترَكة. (Id5575، b/390011686، b/466169919)

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

  • أمان سلاسل التنفيذ: يعالج الإصدار SeekableTransitionState الآن بشكل صحيح تغييرات الحالة خارج سلسلة التنفيذ. في السابق، إذا تم تعديل الحالة خارج سلسلة التعليمات الخاصة بواجهة المستخدم باستخدام Snapshot.withMutableSnapshot()، حاولت عملية الانتقال بشكل غير صحيح التعامل مع التعديل خارج سلسلة التعليمات الخاصة بواجهة المستخدم. (0aba38)
  • الأداء: تم تحسين أداء الوصول إلى sharedElements الخريطة. (93f57d)
  • إعداد التقارير عن الحالة: تم إصلاح isTransitionActive لكي يتم عرض القيمة "صحيح" فقط عند توفّر رسوم متحركة نشطة من العناصر المشترَكة المتطابقة. (d3426a، b/474385510)
  • الثبات: تمّت إضافة شرط وضع جذر الانتقال المشترَك المطلوب قبل طلب حدود (77d59c)، وتمّ التأكّد من عدم الحصول على مواضع sharedElements إلا إذا كان SharedTransitionLayout مرفقًا. (I2a035)
  • معالجة الانقطاع: تم إصلاح معالجة الانقطاع في حالات معيّنة عند انتهاء حركة الخروج من العنصر الفرعي بينما لا يزال انتقال العنصر الرئيسي قيد التشغيل في AnimatedContent. (ad9b4f)
  • التحقّق من الصحة: مدة التحقّق من الصحة في InfiniteRepeatableSpec لمنع الدورات التي تبلغ مدتها 0. (151b6d)
  • التخصيص: احترام visibilityThreshold في AnimationSpec مخصّص لـ animateFloatAsState (3a1cdc)

الإصدار ‎1.11.0-rc01

‫8 أبريل 2026

تم طرح androidx.compose.animation:animation-*:1.11.0-rc01. يتضمّن الإصدار 1.11.0-rc01 هذه التعديلات.

الإصدار ‎1.11.0-beta02

‫25 مارس 2026

تم طرح androidx.compose.animation:animation-*:1.11.0-beta02. يتضمّن الإصدار 1.11.0-beta02 هذه التعديلات.

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

  • يتعامل SeekableTransitionState الآن بشكل صحيح مع تغييرات الحالة التي تتم خارج سلسلة التعليمات الرئيسية. في السابق، إذا تم تعديل الحالة خارج سلسلة واجهة المستخدم باستخدام Snapshot.withMutableSnapshot()، حاولت عملية الانتقال بشكل غير صحيح التعامل مع التعديل خارج سلسلة واجهة المستخدم.(0aba38)
  • التحقّق من صحة المدة في InfiniteRepeatableSpec لمنع الدورات ذات المدة 0 (151b6d)
  • الالتزام بـ visibilityThreshold في AnimationSpec المخصّص لـ animateFloatAsState (3a1cdc)
  • تم إصلاح مشكلة معالجة حالات المقاطعة عند انتهاء حركة الخروج الخاصة بعنصر فرعي أثناء استمرار حركة الانتقال الخاصة بالعنصر الرئيسي في AnimatedContent. (ad9b4f)

الإصدار ‎1.11.0-beta01

‫11 مارس 2026

تم طرح androidx.compose.animation:animation-*:1.11.0-beta01. يتضمّن الإصدار 1.11.0-beta01 هذه التعديلات.

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

  • إصلاح isTransitionActive لكي تعرض القيمة "صحيح" فقط عندما يكون هناك صورة متحركة نشطة من عنصر مشترك d3426a، b/474385510

الإصدار ‎1.11.0-alpha06

‫25 فبراير 2026

تم طرح androidx.compose.animation:animation-*:1.11.0-alpha06. يتضمّن الإصدار ‎1.11.0-alpha06 هذه التعديلات.

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

  • تحسين أداء sharedElements الوصول إلى الخريطة (93f57d)

الإصدار ‎1.11.0-alpha05

‫11 فبراير 2026

تم طرح androidx.compose.animation:animation-*:1.11.0-alpha05. يتضمّن الإصدار ‎1.11.0-alpha05 هذه التعديلات.

الإصدار ‎1.11.0-alpha04

‫28 يناير 2026

تم طرح androidx.compose.animation:animation-*:1.11.0-alpha04. يتضمّن الإصدار 1.11.0-alpha04 هذه التعديلات.

الإصدار ‎1.11.0-alpha03

‫14 يناير 2026

تم طرح androidx.compose.animation:animation-*:1.11.0-alpha03. يتضمّن الإصدار ‎1.11.0-alpha03 هذه التعديلات.

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

  • تم تقديم مجموعة جديدة من إمكانات تصحيح الأخطاء المرئية التي تتيح عرض المعلومات المرئية ذات الصلة بالعناصر المشترَكة وModifier.animatedBounds. وتشمل هذه المعلومات: حدود الهدف، ومسار حركة حدود الهدف، وعدد النتائج المطابقة التي تم العثور عليها، وما إذا كان الانتقال نشطًا، وما إلى ذلك.

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

  • تمت إضافة واجهات برمجة تطبيقات جديدة LookaheadAnimationVisualDebugging وCustomizedLookaheadAnimationVisualDebugging وLookaheadAnimationVisualDebugConfig للمساعدة في تصحيح أخطاء الحدود المتحركة والرسوم المتحركة للعناصر المشترَكة. (Id5575، b/390011686، b/466169919)

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

  • يجب وضع جذر الانتقال المشترَك قبل طلب حدود. (77d59c)

الإصدار ‎1.11.0-alpha02

‫17 ديسمبر 2025

تم طرح androidx.compose.animation:animation-*:1.11.0-alpha02. يتضمّن الإصدار 1.11.0-alpha02 هذه التعديلات.

الإصدار ‎1.11.0-alpha01

‫3 ديسمبر 2025

تم طرح androidx.compose.animation:animation-*:1.11.0-alpha01. يتضمّن الإصدار 1.11.0-alpha01 هذه التعديلات.

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

  • الحصول على موضع sharedElements فقط إذا كان SharedTransitionLayout مرفقًا (I2a035)

الإصدار 1.10

الإصدار 1.10.6

‫25 مارس 2026

تم طرح androidx.compose.animation:animation-*:1.10.6. يتضمّن الإصدار 1.10.6 هذه التعديلات.

الإصدار 1.10.5

‫11 مارس 2026

تم طرح androidx.compose.animation:animation-*:1.10.5. يتضمّن الإصدار 1.10.5 هذه التعديلات.

الإصدار 1.10.4

‫25 فبراير 2026

تم طرح androidx.compose.animation:animation-*:1.10.4. يتضمّن الإصدار 1.10.4 هذه التعديلات.

الإصدار 1.10.3

‫11 فبراير 2026

تم طرح androidx.compose.animation:animation-*:1.10.3. يتضمّن الإصدار 1.10.3 هذه التعديلات.

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

  • تم إصلاح الخطأ الذي يؤدي إلى تعطُّل التطبيق بسبب حالة هامشية يتم فيها فصل عقدة المحتوى المشترَك قبل وضع جذر الانتقال المشترَك. (121310)

الإصدار 1.10.2

‫28 يناير 2026

تم طرح androidx.compose.animation:animation-*:1.10.2. يتضمّن الإصدار 1.10.2 هذه التعديلات.

الإصدار 1.10.1

‫14 يناير 2026

تم طرح androidx.compose.animation:animation-*:1.10.1. يتضمّن الإصدار 1.10.1 هذه التعديلات.

الإصدار 1.10.0

‫3 ديسمبر 2025

تم طرح androidx.compose.animation:animation-*:1.10.0. يتضمّن الإصدار 1.10.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.9.0:

  • تتوفّر واجهات برمجة التطبيقات للانتقالات المشترَكة بشكل ثابت في الإصدار 1.10
  • واجهة برمجة تطبيقات جديدة Modifier.skipToLookaheadPosition للتنسيقات في SharedTransitionScope للانتقال إلى الموضع المستهدف بدلاً من تحريك تغييرات الموضع (9a88f4)
  • إتاحة تفعيل العناصر المشترَكة أو إيقافها بشكل ديناميكي (07680e)
  • واجهة برمجة تطبيقات جديدة تتيح السرعة الأولية لبدء انتقال عنصر مشترك باستخدام حركة سريعة (b0afe2)
  • EnterTransition وExitTransition جديدان لتحريك طبقة حجاب AnimatedVisibility وAnimatedContent (0f6e7c)

الإصدار ‎1.10.0-rc01

‫19 نوفمبر 2025

تم طرح androidx.compose.animation:animation-*:1.10.0-rc01. يتضمّن الإصدار 1.10.0-rc01 هذه التعديلات.

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

  • أصبح الخياران "unveilIn" و"veilOut" متاحَين الآن في EnterExitTransitions. يتيح ذلك تحريك طبقة تراكب أمام المحتوى الذي يتم عرضه أو إخفاؤه. (If26fe)

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

  • تتبُّع حدود الدعم من خلال فصل sharedElement وإعادة ربطه (be0e9e)
  • جعل خريطة العناصر المشترَكة قابلة للمراقبة من أجل مراقبة نشاط الانتقال (1fc2ec)

الإصدار ‎1.10.0-beta02

‫5 نوفمبر 2025

تم طرح androidx.compose.animation:animation-*:1.10.0-beta02. يتضمّن الإصدار ‎1.10.0-beta02 هذه التعديلات.

الإصدار ‎1.10.0-beta01

‫22 أكتوبر 2025

تم طرح androidx.compose.animation:animation-*:1.10.0-beta01. يتضمّن الإصدار 1.10.0-beta01 هذه التعديلات.

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

  • تمت إزالة طريقة المصنع SharedContentConfig التي تستخدم تعبير lambda للإشارة إلى ما إذا كان يجب تفعيل العنصر المشترَك. تم تعديل واجهة برمجة التطبيقات lookheadScopeCoordinates لتصبح LookaheadScope هي نطاق المستلِم، مع كون إحداثيات المصدر هي المَعلمة. (Id1fc2، b/452416806)
  • تم تعديل واجهة BoundsTransform لتكون متوافقة مع SizeTransform. (Ia46f2، b/343696350)
  • تمت إزالة واجهة برمجة التطبيقات ScaleToBounds المتوقّفة نهائيًا. يُرجى استخدام scaleToBounds بدلاً من هذه السياسة. (I17296)

الإصدار ‎1.10.0-alpha05

‫8 أكتوبر 2025

تم طرح androidx.compose.animation:animation-*:1.10.0-alpha05. يتضمّن الإصدار 1.10.0-alpha05 هذه التعديلات.

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

  • أصبحت واجهات برمجة التطبيقات الخاصة بالانتقالات المشترَكة ثابتة الآن. لمزيد من المعلومات، يُرجى الاطّلاع على دليل العناصر المشترَكة. (I7167e).

الإصدار ‎1.10.0-alpha04

‫24 سبتمبر 2025

تم طرح androidx.compose.animation:animation-*:1.10.0-alpha04. يتضمّن الإصدار 1.10.0-alpha04 هذه التعديلات.

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

  • تم تعديل أسماء PlaceHolderSize من واجهات برمجة التطبيقات ذات الصلة. (I037d8، b/343696350)
  • واجهة برمجة تطبيقات جديدة لنقل العناصر المشترَكة تتيح سرعة أولية لمواصلة سرعة الإيماءة في العناصر المشترَكة (I91be9)

الإصدار ‎1.10.0-alpha03

‫10 سبتمبر 2025

تم طرح androidx.compose.animation:animation-*:1.10.0-alpha03. يتضمّن الإصدار 1.10.0-alpha03 هذه التعديلات.

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

  • تستخدم Modifier.skipToLookaheadSize الآن دالة lambda مفعَّلة تلقائيًا لا تتيح تخطّي تغيير الحجم إلا عندما يكون الانتقال المشترَك نشطًا، تمامًا مثل Modifier.skipToLookaheadPosition. (Ibe0f5، b/432485585)

الإصدار ‎1.10.0-alpha02

‫27 أغسطس 2025

تم طرح androidx.compose.animation:animation-*:1.10.0-alpha02. يتضمّن الإصدار 1.10.0-alpha02 هذه التعديلات.

الإصدار ‎1.10.0-alpha01

‫13 أغسطس 2025

تم طرح androidx.compose.animation:animation-*:1.10.0-alpha01. يتضمّن الإصدار 1.10.0-alpha01 هذه التعديلات.

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

  • واجهة برمجة تطبيقات جديدة تتيح تفعيل العناصر المشترَكة وإيقافها ديناميكيًا، كما تتيح احتساب ما إذا كان هناك انتقال مستمر للعناصر المشترَكة.
  • واجهة برمجة تطبيقات جديدة لإعداد حدود هدف بديل عند التخلّص من العنصر المشترَك المستهدَف أثناء الانتقال
  • واجهة برمجة تطبيقات جديدة للحصول على LayoutCoordinates LookaheadScope (I18dd4، b/409819304، b/395670637)
  • المعدِّل الجديد Modifier.skipToLookaheadPosition في SharedTransitionScope لتثبيت تصميم في الموضع المستهدف أثناء الانتقال المشترك (I88734)

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

  • تم تبسيط renderInSharedTransitionOverlay من خلال إزالة تعبير lambda clipInOverlayDuringTransition لأنّه نادر الاستخدام. تم تقديم طريقة المصنع الجديدة لـ SharedContentConfig. (Id01b2)
  • تمت إضافة مجموعة من الإعدادات التلقائية لعناصر مشترَكة وحدود مشترَكة وإعدادات renderInSharedTransitionOverlay. يمكن الآن الوصول إلى هذه الإعدادات التلقائية من خلال واجهات برمجة التطبيقات العامة. (Id23cc)
  • تمت إعادة تسمية ScaleToBounds ResizeMode إلى scaleToBounds (I5ac50)

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

  • تغيير الحد الأدنى التلقائي لإصدار SDK من الإصدار 21 لواجهة برمجة التطبيقات إلى الإصدار 23 (Ibdfca، b/380448311، b/435705964، b/435705223)

الإصدار 1.9

الإصدار 1.9.5

‫19 نوفمبر 2025

تم طرح androidx.compose.animation:animation-*:1.9.5. يتضمّن الإصدار 1.9.5 هذه التعديلات.

الإصدار 1.9.4

‫22 أكتوبر 2025

تم طرح androidx.compose.animation:animation-*:1.9.4. يتضمّن الإصدار 1.9.4 هذه التعديلات.

الإصدار 1.9.3

‫8 أكتوبر 2025

تم طرح androidx.compose.animation:animation-*:1.9.3. يتضمّن الإصدار 1.9.3 هذه التعديلات.

الإصدار 1.9.2

‫24 سبتمبر 2025

تم طرح androidx.compose.animation:animation-*:1.9.2. يتضمّن الإصدار 1.9.2 هذه التعديلات.

الإصدار 1.9.1

‫10 سبتمبر 2025

تم طرح androidx.compose.animation:animation-*:1.9.1. يتضمّن الإصدار 1.9.1 هذه التعديلات.

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

  • إصلاح خطأ في تهيئة الرسوم المتحركة لـ "sharedElementWithCallerManagedVisibility" (fa29de)

الإصدار 1.9.0

‫13 أغسطس 2025

تم طرح androidx.compose.animation:animation-*:1.9.0. يتضمّن الإصدار 1.9.0 هذه التعديلات.

الإصدار ‎1.9.0-rc01

‫30 يوليو 2025

تم طرح androidx.compose.animation:animation-*:1.9.0-rc01. يتضمّن الإصدار 1.9.0-rc01 هذه التعديلات.

الإصدار ‎1.9.0-beta03

‫16 يوليو 2025

تم طرح androidx.compose.animation:animation-*:1.9.0-beta03. يتضمّن الإصدار 1.9.0-beta03 هذه التعديلات.

الإصدار ‎1.9.0-beta02

‫2 يوليو 2025

تم طرح androidx.compose.animation:animation-*:1.9.0-beta02. يتضمّن الإصدار 1.9.0-beta02 هذه التعديلات.

الإصدار ‎1.9.0-beta01

‫18 يونيو 2025

تم طرح androidx.compose.animation:animation-*:1.9.0-beta01. يتضمّن الإصدار 1.9.0-beta01 هذه التعديلات.

الإصدار ‎1.9.0-alpha04

‫4 يونيو 2025

تم طرح androidx.compose.animation:animation-*:1.9.0-alpha04. يتضمّن الإصدار 1.9.0-alpha04 هذه التعديلات.

الإصدار 1.9.0-alpha03

‫20 مايو 2025

تم طرح androidx.compose.animation:animation-*:1.9.0-alpha03. يتضمّن الإصدار 1.9.0-alpha03 هذه التعديلات.

الإصدار ‎1.9.0-alpha02

‫7 مايو 2025

تم طرح androidx.compose.animation:animation-*:1.9.0-alpha02. يتضمّن الإصدار 1.9.0-alpha02 هذه التعديلات.

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

  • تحسين كبير في إمكانية التمرير أو السحب في العناصر المشترَكة وبشكل أكثر تحديدًا، عند تمرير عنصر مشترك في مرحلة الانتقال، سيتم تطبيق الفرق في التمرير مباشرةً على العنصر المشترك بدلاً من جعل العناصر المشتركة تتبع الهدف الجديد. (cacf7b)

الإصدار ‎1.9.0-alpha01

‫23 أبريل 2025

تم طرح androidx.compose.animation:animation-*:1.9.0-alpha01. يتضمّن الإصدار 1.9.0-alpha01 هذه التعديلات.

التغييرات في السلوك

  • تتطلّب عمليات التحقّق من Lint التي يتم شحنها مع Compose الآن توفُّر الإصدار 8.8.2 من "المكوّن الإضافي لنظام Gradle المتوافق مع Android" كحد أدنى. إذا لم تتمكّن من ترقية "مكوّن Android الإضافي في Gradle"، يمكنك بدلاً من ذلك ترقية Lint بشكلٍ منفصل باستخدام android.experimental.lint.version=8.8.2 (أو إصدار أحدث) في gradle.properties. لتشغيل عمليات التحقّق من أخطاء Compose البرمجية داخل بيئة التطوير المتكاملة، يجب استخدام Android Studio Ladybug أو إصدار أحدث.

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

  • تحسين أداء التنقّل في العناصر المشترَكة (ea4f1f)

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

  • تتطلّب المشاريع التي تم إصدارها باستخدام Kotlin 2.0 استخدام الإصدار 2.0.0 أو إصدار أحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Kotlin. (Idb6b5)
  • تم إيقاف الإجراءين TabRow وScrollableTabRow نهائيًا واستبدالهما بالمتغيرَين الأساسي والثانوي لكل منهما. أداء صفَّي علامات التبويب الأساسية والثانوية أفضل وأكثر دقةً وفقًا للمواصفات. (I918e2)
  • تمت إضافة LocalResources composition local للاستعلام عن "الموارد". ستتم إعادة إنشاء LocalResources.current عند تغيُّر الإعدادات، لذا ستعرض طلبات البيانات من واجهات برمجة التطبيقات، مثل stringResource()، قيمًا معدَّلة (I50c13، b/274786917).

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

  • التأكّد من إزالة العناصر المشترَكة من التراكب عند انتهاء الانتقال (35f359)
  • إزالة إعادة التركيب الإضافية في Transition (988923)
  • إصلاح معالجة انقطاع انتقال الطفل (8aed52)
  • التأكّد من إعادة ضبط الانتقال عند تقديم TransitionState جديد (57820a)

المساهمة الخارجية

  • من إنشاء 1.8.1: إنهاء الصور المتحركة في SeekableTransitionState إذا تجاوزت المدة الجديدة التي حدّدها Steven Schoen. (0c832c)

الإصدار 1.8

الإصدار 1.8.3

‫18 يونيو 2025

تم طرح androidx.compose.animation:animation-*:1.8.3. يتضمّن الإصدار 1.8.3 هذه التعديلات.

الإصدار 1.8.2

‫20 مايو 2025

تم طرح androidx.compose.animation:animation-*:1.8.2. يتضمّن الإصدار 1.8.2 هذه التعديلات.

الإصدار 1.8.1

‫7 مايو 2025

تم طرح androidx.compose.animation:animation-*:1.8.1. يتضمّن الإصدار 1.8.1 هذه التعديلات.

المساهمة الخارجية

  • إنهاء الصور المتحركة في SeekableTransitionState إذا كانت المدة الجديدة أقصر من المدة الحالية شكرًا "ستيفن شون"! (fbcdf7)

الإصدار 1.8.0

‫23 أبريل 2025

تم طرح androidx.compose.animation:animation-*:1.8.0. يتضمّن الإصدار 1.8.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.7.0

  • يمكنك الاطّلاع على التغييرات المهمة في الإصدار 1.8.0 في مشاركة المدونة هذه.
  • واجهة برمجة التطبيقات Modifier.animateBounds الجديدة لتحريك تغييرات الحجم والموضع ضمن نطاق البحث المسبق (94b939)
  • إصدار نهائي من واجهات برمجة التطبيقات الخاصة بإطارات المفاتيح مع الأقواس والمنحنيات (89e119)
  • تفعيل ميزة Lookahead في LazyGrid وPager ويشمل ذلك التمييز بين التمرير المسبق والتمرير المقارب في التمرير السريع، وتكوين العناصر/التخلص منها، وتحريك العناصر، واستخدام التمرير المسبق كمصدر موثوق للتمرير السريع، واستهداف تحريك العناصر.
  • تم تعديل تسمية المَعلمة sharedElement من "الحالة" إلى sharedContentState لتحقيق الاتساق في جميع واجهات برمجة التطبيقات للعناصر المشترَكة. (9e7df5)
  • أصبحت حزمة واجهات برمجة التطبيقات AnimatedImageVector مستقرة الآن.(69d7e0)

الإصدار ‎1.8.0-rc03

‫9 أبريل 2025

تم طرح androidx.compose.animation:animation-*:1.8.0-rc03. يتضمّن الإصدار 1.8.0-rc03 هذه التعديلات.

الإصدار ‎1.8.0-rc02

‫26 مارس 2025

تم طرح androidx.compose.animation:animation-*:1.8.0-rc02. يتضمّن الإصدار 1.8.0-rc02 هذه التعديلات.

الإصدار ‎1.8.0-rc01

‫12 مارس 2025

تم طرح androidx.compose.animation:animation-*:1.8.0-rc01. يتضمّن الإصدار 1.8.0-rc01 هذه التعديلات.

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

  • تم إصلاح مشكلة وضع علامة "مقاطعة" بشكل غير صحيح على عملية انتقال العناصر التابعة. (3fa2ce)

الإصدار ‎1.8.0-beta03

‫26 فبراير 2025

تم طرح androidx.compose.animation:animation-*:1.8.0-beta03. يتضمّن الإصدار 1.8.0-beta03 هذه التعديلات.

الإصدار ‎1.8.0-beta02

‫12 فبراير 2025

تم طرح androidx.compose.animation:animation-*:1.8.0-beta02. يتضمّن الإصدار 1.8.0-beta02 هذه التعديلات.

الإصدار ‎1.8.0-beta01

‫29 يناير 2025

تم طرح androidx.compose.animation:animation-*:1.8.0-beta01. يتضمّن الإصدار 1.8.0-beta01 هذه التعديلات.

الإصدار ‎1.8.0-alpha08

‫15 يناير 2025

تم طرح androidx.compose.animation:animation-*:1.8.0-alpha08. يتضمّن الإصدار 1.8.0-alpha08 هذه التعديلات.

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

  • تم إصلاح مشكلة عدم صحة حركة موضع العنصر من animateBounds في LazyGrid بسبب إعادة ضبط MotionFrameOfReferencePlacement. (16193b)
  • تم إصلاح الاستعلام الجوهري في SharedTransitionLayout من خلال إعادة توجيه الاستعلام الجوهري إلى عملية البحث المسبق من جذر البحث المسبق ذي المستوى الأعلى. (a07d12)
  • تمّت إضافة علامات @param الناقصة في المستندات. (e5cf67)

الإصدار ‎1.8.0-alpha07

‫11 ديسمبر 2024

تم طرح androidx.compose.animation:animation-*:1.8.0-alpha07. يتضمّن الإصدار 1.8.0-alpha07 هذه التعديلات.

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

  • تتيح هذه السمة إمكانية البحث المسبق في Pager، وذلك من خلال التمييز بين عملية البحث المسبق وعملية البحث عن العناصر التي سيتم عرضها عند التمرير السريع. (b/371802474)

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

  • إصلاح عُطل نادر يحدث عندما يتم إنشاء عنصر مشترك ولكن لا يتم قياسه أو وضعه مطلقًا، وذلك من خلال اشتراط عرض العنصر المشترك في مكانه مرة واحدة على الأقل قبل عرضه في التراكب (b/371802474)

الإصدار ‎1.8.0-alpha06

‫13 نوفمبر 2024

تم طرح androidx.compose.animation:animation-*:1.8.0-alpha06. يتضمّن الإصدار 1.8.0-alpha06 هذه التعديلات.

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

  • تم تعديل تسمية المَعلمة sharedElement من state إلى sharedContentState لتحقيق الاتساق في جميع واجهات برمجة التطبيقات للعناصر المشتركة. (I5694c، b/375351468)
  • أصبحت مجموعة واجهات برمجة التطبيقات AnimatedImageVector ثابتة الآن. (I7174b، b/261436267)

الإصدار ‎1.8.0-alpha05

‫30 أكتوبر 2024

تم طرح androidx.compose.animation:animation-*:1.8.0-alpha05. يتضمّن الإصدار 1.8.0-alpha05 هذه التعديلات.

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

  • تتوفّر ميزة "التوقّع المسبق" الآن باللغة LazyGrid. ويشمل ذلك التمييز بين التمرير المسبق والتمرير عند الاقتراب أثناء التمرير، وتكوين العناصر/التخلص منها، وتحريك العناصر، واستخدام التمرير المسبق كمصدر موثوق للتمرير، واستهداف تحريك العناصر.

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

  • تعديل الحالات الداخلية لتحويل حجم AnimatedContent عند إعادة إنشاء الانتقال يضمن ذلك أن تكون معلومات الحجم المستهدف محدَّثة دائمًا. (b/372512085)

الإصدار ‎1.8.0-alpha04

‫16 أكتوبر 2024

تم طرح androidx.compose.animation:animation-*:1.8.0-alpha04. يتضمّن الإصدار 1.8.0-alpha04 هذه التعديلات.

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

  • تم إصلاح الخلل الذي يتسبّب في تعطُّل بعض منحنيات التباطؤ والتسارع عند أجزاء زمنية معيّنة.
  • تم إصلاح الخلل الذي يتسبب في محاذاة غير سليمة لـ Modifier.animateContentSize في اللغات التي تُكتب من اليمين إلى اليسار. (Idae6b، b/372055503)

الإصدار ‎1.8.0-alpha03

‫2 أكتوبر 2024

تم طرح androidx.compose.animation:animation-*:1.8.0-alpha03. يتضمّن الإصدار 1.8.0-alpha03 هذه التعديلات.

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

  • تحديث إصدار Kotlin إلى 1.9 (I1a14c)

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

  • تم إصلاح مشكلة في الصورة المتحركة الخاصة بحجم AnimatedContent من خلال تتبُّع الصورة المتحركة وبدءها دائمًا من الحجم الحالي لضمان استمرارها.

الإصدار ‎1.8.0-alpha02

‫18 سبتمبر 2024

تم طرح androidx.compose.animation:animation-*:1.8.0-alpha02. يتضمّن الإصدار 1.8.0-alpha02 هذه التعديلات.

الإصدار ‎1.8.0-alpha01

‫4 سبتمبر 2024

تم طرح androidx.compose.animation:animation-*:1.8.0-alpha01. يتضمّن الإصدار 1.8.0-alpha01 هذه التعديلات.

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

  • واجهة برمجة التطبيقات Modifier.animateBounds الجديدة لتحريك تغييرات الحجم والموضع ضمن نطاق البحث المسبق 94b9394

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

  • إزالة العلامات التجريبية من "الإطارات الرئيسية" التي تتضمّن "أقواسًا ومنحنيات" (89e1199)

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

  • تخطّي منطق placeHolderSize عند عدم العثور على تطابق (77c0160)
  • فرض حدّ أقصى لوقت التشغيل في AndroidFlingSpline لمنع حدوث أعطال بسبب عدم زيادة وقت التشغيل بشكل رتيب(9d47587)
  • إصلاح المشكلة SharedTransitionScope التي لا تعرض العناصر في ظروف معيّنة (b41077b6)

المساهمة الخارجية

  • منع ضبط الانتقال القابل للبحث playTime عندما لا يكون هناك انتقال قيد التشغيل، بقلم Steven Schoen (c2e6e7e6)

الإصدار 1.7

الإصدار 1.7.8

‫12 فبراير 2025

تم طرح androidx.compose.animation:animation-*:1.7.8. يتضمّن الإصدار 1.7.8 هذه التعديلات.

الإصدار 1.7.7

‫29 يناير 2025

تم طرح androidx.compose.animation:animation-*:1.7.7. ما مِن تغييرات مقارنةً بالإصدار 1.7.6. ‫11 ديسمبر 2024

تم طرح androidx.compose.animation:animation-*:1.7.6. يتضمّن الإصدار 1.7.6 هذه التعديلات.

الإصدار 1.7.5

‫30 أكتوبر 2024

تم طرح androidx.compose.animation:animation-*:1.7.5. يتضمّن الإصدار 1.7.5 هذه التعديلات.

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

  • تم إصلاح الخلل الذي يتسبب في محاذاة غير سليمة لـ Modifier.animateContentSize في اللغات التي تُكتب من اليمين إلى اليسار. (Idae6b، b/372055503)

الإصدار 1.7.4

‫16 أكتوبر 2024

تم طرح androidx.compose.animation:animation-*:1.7.4. يتضمّن الإصدار 1.7.4 هذه التعديلات.

الإصدار 1.7.3

‫2 أكتوبر 2024

تم طرح androidx.compose.animation:animation-*:1.7.3. يتضمّن الإصدار 1.7.3 هذه التعديلات.

الإصدار 1.7.2

‫18 سبتمبر 2024

تم طرح androidx.compose.animation:animation-*:1.7.2. يتضمّن الإصدار 1.7.2 هذه التعديلات.

المساهمة الخارجية

  • منع ضبط عملية نقل قابلة للبحث playTime عندما لا تكون هناك عملية نقل قيد التنفيذ شكرًا "ستيفن شون"! (c2e6e7e6)

الإصدار 1.7.1

‫10 سبتمبر 2024

  • لم يتم إجراء أي تغييرات على عناصر Android. تمت إزالة -desktop من العناصر، وتمت إضافة -jvmStubs و-linuxx64Stubs من العناصر. لا يُفترض استخدام أي من هذه الاستهدافات، بل هي عناصر نائبة للمساعدة في جهود Jetbrains Compose.

الإصدار 1.7.0

‫4 سبتمبر 2024

تم طرح androidx.compose.animation:animation-*:1.7.0.

التغييرات المهمة منذ الإصدار 1.6.0

يمكنك الاطّلاع على التغييرات المهمة في الإصدار 1.7.0 في مشاركة المدونة هذه.

واجهات برمجة تطبيقات جديدة لنقل العناصر المشترَكة

  • تنتظرك واجهات برمجة التطبيقات الجديدة لانتقالات العناصر المشترَكة لتجربتها ومشاركة ملاحظاتك. تتيح واجهات برمجة التطبيقات التجريبية الجديدة هذه وضع علامات على التنسيقات باعتبارها مشترَكة في جميع شجرة التنسيقات باستخدام المعدِّلات المتوفّرة، ما يؤدي إلى تغيير سلس في الحدود عند خروج مجموعة من المحتوى المشترَك ودخول المجموعة الأخرى. (Icb0b9)
  • scaleInSharedContentToBounds وscaleOutSharedContentToBounds جديدان لتوسيع نطاق المحتوى في sharedBounds (I731c1)
  • أصبحت SharedTransitionScope التجريبية الآن واجهة بدلاً من فئة. (Iaf856)
  • resizeModes جديد (ScaleToBounds وRemeasureToBounds) في sharedBounds للاختيار بين تغيير الحجم وإعادة القياس تم إيقاف واجهات برمجة التطبيقات السابقة scaleIn/OutSharedContentToBounds نهائيًا. (I0d41a)

تحسينات على واجهات برمجة التطبيقات الحالية:

  • Modifier.animateContentSize جديد يأخذ مَعلمة إضافية لمحاذاة المحتوى المخصّص. (I5623a، b/269803907)
  • DeferredTargetAnimation تجريبي جديد لتحريك الحجم أو الموضع أو أي هدف آخر غير معروف أثناء إنشاء مثيل. (I60745)
  • يستبدل SeekableTransitionState snapTo() بـ seekTo()، ويضيف snapTo() يغيّر الحالة فورًا إلى حالة الوجهة بدون أي نوع من الرسوم المتحركة.
  • يمكنك الآن تمرير قيمة periodicBias (عدد عشري) إلى keyframesWithSpline، ما سيؤدي إلى تساوي السرعة الأولية والنهائية للخط المنحني. مفيدة للرسوم المتحركة المتكررة التي تستخدم خطوطًا منحنية. يشير الانحياز إلى مقدار تعديل كل سرعة (أولية ونهائية) لتحقيق الدورية. (Ic1e6c، b/292114811)

أصبحت واجهات برمجة التطبيقات التالية ثابتة أو تمت إزالتها:

  • أصبحت AnimatedVisibilityScope.transition الآن واجهة برمجة تطبيقات ثابتة. تم أيضًا جعل Modifier.animateEnterExit(..) أكثر استقرارًا. (I6c1d1)
  • أصبح الرمزان ApproachLayoutModifierNode وModifier.approachLayout ثابتَين الآن، وتمت إضافة الرمزين الجديدين isMeasurementApproachInProgress() وisPlacementApproachInProgress() ليحلا محل الرمزين القديمين isMeasurementApproachComplete() وisPlacementApproachComplete() على التوالي.
  • تمت إزالة المبدّل intermediateLayout المتوقّف نهائيًا. (I3e91c)
  • تمّت إتاحة واجهات برمجة التطبيقات LookaheadScope بشكل ثابت. (I21507)

الإصدار ‎1.7.0-rc01

‫21 أغسطس 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-rc01. يتضمّن الإصدار 1.7.0-rc01 هذه التعديلات.

الإصدار ‎1.7.0-beta07

‫7 أغسطس 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-beta07. يتضمّن الإصدار 1.7.0-beta07 هذه التعديلات.

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

  • تم إصلاح المشكلة التي كانت تتسبّب في عدم رسم SharedTransitionScope لعناصر التراكب أثناء الانتقال في ظروف معيّنة، والتي تشمل عادةً الاستخدام مع Navigation. (Id65ab، b/347520198)

الإصدار ‎1.7.0-beta06

‫24 يوليو 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-beta06. يتضمّن الإصدار 1.7.0-beta06 هذه التعديلات.

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

  • تم إصلاح مشكلة تسريب حالات الانتقال في SeekableTransition من خلال إزالة الملاحظات من SnapshotStateObserver بشكلٍ صحيح عند التخلّص من الانتقال. (b9c7182)
  • تم إصلاح حالات هامشية لا يتم فيها وضع علامة "مكتملة" بشكلٍ صحيح على عمليات الانتقال الفرعية عند اكتمال العملية الرئيسية. (dc42216)

الإصدار ‎1.7.0-beta05

‫10 يوليو 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-beta05. يتضمّن الإصدار 1.7.0-beta05 هذه التعديلات.

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

  • يمكن الآن قراءة السمة "الانتقال" totalDurationNanos بشكل صحيح ضمن snapshotFlow.

الإصدار ‎1.7.0-beta04

‫26 يونيو 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-beta04. يتضمّن الإصدار 1.7.0-beta04 هذه التعديلات.

الإصدار ‎1.7.0-beta03

‫12 يونيو 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-beta03. يتضمّن الإصدار 1.7.0-beta03 هذه التعديلات.

الإصدار ‎1.7.0-beta02

‫29 مايو 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-beta02. يتضمّن الإصدار 1.7.0-beta02 هذه التعديلات.

الإصدار ‎1.7.0-beta01

‫14 مايو 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-beta01. يتضمّن الإصدار 1.7.0-beta01 هذه التعديلات.

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

  • resizeModes جديد (ScaleToBounds وRemeasureToBounds) في sharedBounds للاختيار بين تغيير الحجم وإعادة القياس تم إيقاف واجهات برمجة التطبيقات السابقة scaleIn/OutSharedContentToBounds نهائيًا. (I0d41a)

المساهمة الخارجية

  • أصبحت السمة التجريبية SharedTransitionScope الآن واجهة بدلاً من فئة، وذلك من إعداد Steven Schoen. (Iaf856، b/338415048، b/338414702)

الإصدار ‎1.7.0-alpha08

‫1 مايو 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-alpha08. يتضمّن الإصدار 1.7.0-alpha08 هذه التعديلات.

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

  • تمّت إتاحة واجهات برمجة التطبيقات LookaheadScope بشكل ثابت. (I21507)

المساهمة الخارجية

  • إزالة وقت بدء الحركة بعد تحرّك/انطباق SeekableTransitionState بواسطة Steven Schoen (1ca89529)

الإصدار ‎1.7.0-alpha07

‫17 أبريل 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-alpha07. يتضمّن الإصدار 1.7.0-alpha07 هذه التعديلات.

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

  • تنتظرك واجهات برمجة التطبيقات الجديدة لانتقالات العناصر المشترَكة لتجربتها ومشاركة ملاحظاتك. تتيح واجهات برمجة التطبيقات التجريبية الجديدة هذه وضع علامات على التنسيقات باعتبارها مشترَكة في جميع شجرة التنسيقات باستخدام المعدِّلات المتوفّرة، ما يؤدي إلى تغيير الحدود بسلاسة عند خروج مجموعة من المحتوى المشترَك ودخول المجموعة الأخرى. (Icb0b9)
  • scaleInSharedContentToBounds وscaleOutSharedContentToBounds جديدان لتوسيع نطاق المحتوى في sharedBounds (I731c1)

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

  • أصبحت AnimatedVisibilityScope.transition الآن واجهة برمجة تطبيقات ثابتة. تم أيضًا جعل Modifier.animateEnterExit(..) مستقرًا. (I6c1d1)
  • أصبح الرمزان ApproachLayoutModifierNode وModifier.approachLayout ثابتَين الآن، وتمت إضافة الرمزين الجديدين isMeasurementApproachInProgress() وisPlacementApproachInProgress() ليحلا محل الرمزين القديمين isMeasurementApproachComplete() وisPlacementApproachComplete() على التوالي.
  • تمت إزالة المبدّل intermediateLayout المتوقّف نهائيًا. (I3e91c)
  • يمكنك الآن تمرير قيمة periodicBias (عدد عشري) إلى keyframesWithSpline، ما سيؤدي إلى تساوي السرعة الأولية والنهائية للخط المنحني. مفيدة للرسوم المتحركة المتكررة التي تستخدم خطوطًا منحنية. يشير الانحياز إلى مقدار تعديل كل سرعة (أولية ونهائية) لتحقيق الدورية. (Ic1e6c، b/292114811)

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

  • تم إصلاح منحنيات تغيير السرعة التي تتجاوز النطاق أو تقل عنه والتي كانت يتم تقييدها سابقًا في النطاق 0..1 (I38747)

الإصدار 1.7.0-alpha06

‫3 أبريل 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-alpha06. يتضمّن الإصدار 1.7.0-alpha06 هذه التعديلات.

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

  • تمت إضافة إمكانية استخدام حركة ظهور العناصر واختفائها في LazyColumn وLazyRow. في السابق، كان من الممكن إضافة المعدِّل Modifier.animateItemPlacement() من أجل إتاحة الرسوم المتحركة الخاصة بموضع الإعلان (إعادة الترتيب). أوقفنا نهائيًا استخدام معدِّل العرض هذا وقدّمنا معدِّل عرض جديدًا غير تجريبي باسم Modifier.animateItem() يتيح لك إتاحة جميع أنواع الرسوم المتحركة الثلاثة: الظهور (التلاشي)، والاختفاء (التلاشي)، وإعادة الترتيب. (I2d7f7 وb/330152398 وb/150812265)

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

  • تحسين أداء واجهة برمجة التطبيقات updateTransition

الإصدار ‎1.7.0-alpha05

‫20 مارس 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-alpha05. يتضمّن الإصدار 1.7.0-alpha05 هذه التعديلات.

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

  • يستبدل SeekableTransitionState snapTo() بـ seekTo()، ويضيف snapTo() يغيّر الحالة فورًا إلى حالة الوجهة بدون أي نوع من الرسوم المتحركة.

الإصدار ‎1.7.0-alpha04

‫6 آذار (مارس) 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-alpha04. يتضمّن الإصدار 1.7.0-alpha04 هذه التعديلات.

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

  • واجهة برمجة التطبيقات الجديدة Path.reverse() لعكس اتجاه المسار (I36348)

الإصدار ‎1.7.0-alpha03

‫21 فبراير 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-alpha03. يتضمّن الإصدار 1.7.0-alpha03 هذه التعديلات.

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

  • ‫Modifier.animateContentSize جديد يأخذ مَعلمة إضافية لمحاذاة المحتوى المخصّص. (I5623a، b/269803907)
  • DeferredTargetAnimation تجريبية جديدة لتحريك الحجم أو الموضع أو أي هدف آخر غير معروف أثناء إنشاء مثيل (I60745)

الإصدار ‎1.7.0-alpha02

‫7 فبراير 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-alpha02. يتضمّن الإصدار 1.7.0-alpha02 هذه التعديلات.

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

  • إصلاح مشكلة التوافق مع KeyframesSpec (I2bdf3، b/322214617)
  • تم إصلاح مشكلة عدم إعادة ضبط Modifier.animateContentSize بشكل صحيح عند استخدامه في LazyList. (I070512، b/322525716)
  • تم إصلاح الخطأ IllegalStateException في KeyframesSpec عند استخدام طوابع زمنية خارج النطاق. (I341b8، b/322839811)

الإصدار 1.7.0-alpha01

‫24 يناير 2024

تم طرح androidx.compose.animation:animation-*:1.7.0-alpha01. يتضمّن الإصدار 1.7.0-alpha01 هذه التعديلات.

الإصدار 1.6

الإصدار 1.6.8

‫12 يونيو 2024

تم طرح androidx.compose.animation:animation-*:1.6.8. يتضمّن الإصدار 1.6.8 هذه التعديلات.

الإصدار 1.6.7

‫1 مايو 2024

تم طرح androidx.compose.animation:animation-*:1.6.7. يتضمّن الإصدار 1.6.7 هذه التعديلات.

الإصدار 1.6.6

‫17 أبريل 2024

تم طرح androidx.compose.animation:animation-*:1.6.6. لم يتم إجراء أي تغييرات منذ الإصدار السابق

الإصدار 1.6.5

‫3 أبريل 2024

تم طرح androidx.compose.animation:animation-*:1.6.5. يتضمّن الإصدار 1.6.5 هذه التعديلات.

الإصدار 1.6.4

‫20 مارس 2024

تم طرح androidx.compose.animation:animation-*:1.6.4. يتضمّن الإصدار 1.6.4 هذه التعديلات.

الإصدار 1.6.3

‫6 آذار (مارس) 2024

تم طرح androidx.compose.animation:animation-*:1.6.3. يتضمّن الإصدار 1.6.3 هذه التعديلات.

الإصدار 1.6.2

‫21 فبراير 2024

تم طرح androidx.compose.animation:animation-*:1.6.2. يتضمّن الإصدار 1.6.2 هذه التعديلات.

الإصدار 1.6.1

‫7 فبراير 2024

تم طرح androidx.compose.animation:animation-*:1.6.1. يتضمّن الإصدار 1.6.1 هذه التعديلات.

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

الإصدار 1.6.0

‫24 يناير 2024

تم طرح androidx.compose.animation:animation-*:1.6.0. يتضمّن الإصدار 1.6.0 هذه التعديلات.

الإصدار 1.6.0-rc01

‫10 يناير 2024

تم طرح androidx.compose.animation:animation-*:1.6.0-rc01. يتضمّن الإصدار 1.6.0-rc01 هذه التعديلات.

الإصدار ‎1.6.0-beta03

‫13 ديسمبر 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-beta03. يتضمّن الإصدار 1.6.0-beta03 هذه التعديلات.

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

  • تمت إزالة scaleInToFitContainer وscaleOutToFitContainer مؤقتًا من AnimatedContentTransitionScope لأنّهما يتطلّبان البحث المسبق. ستتوفّر هذه الميزة عندما تكون ميزة "البحث المسبق" مفعّلة تلقائيًا أو عند تفعيلها في الإصدارات المستقبلية.

الإصدار 1.6.0-beta02

‫29 نوفمبر 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-beta02. يتضمّن الإصدار 1.6.0-beta02 هذه التعديلات.

الإصدار 1.6.0-beta01

‫15 تشرين الثاني (نوفمبر) 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-beta01. يتضمّن الإصدار 1.6.0-beta01 هذه التعديلات.

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

  • تمت إعادة تسمية ExitTransition.Hold إلى ExitTransition.KeepUntilTransitionsFinished لتكون أكثر وضوحًا. (I1c490)
  • يمكنك الآن استخدام keyframesWithSpline لدمج أي قيمة ذات N أبعاد باستخدام دوال spline الرتيبة. ويفيد ذلك بشكل خاص في استيفاء القيم الموضعية، مثل Offset وIntOffset وDpOffset. تمت إضافته كواجهة برمجة تطبيقات تجريبية.

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

  • إضافة إمكانية استخدام أداة العرض مع "التدرّج الدائري" في ArcLine (I4d5bb)
  • نفِّذ الدالتَين equals وhashcode للسمة PageSize.Fixed. (Ie3ede، b/300134276)
  • تم إصلاح مشكلة توافق الثنائيات مع تغيير Window Inset. (Iee695)
  • إزالة الطبقة الأساسية للمادة من أجل Material3 Chip/Button لأنّ اختبارات الأداء الدقيقة تُظهر أداءً أفضل بدونها. (I55555)

الإصدار ‎1.6.0-alpha08

‫18 أكتوبر 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-alpha08. يتضمّن الإصدار 1.6.0-alpha08 هذه التعديلات.

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

  • تم إيقاف KeyframesSpecConfig#with نهائيًا واستبداله بـ KeyframesSpecConfig#using الذي يحافظ على نمط التصميم. (I1d769)

الإصدار 1.6.0-alpha07

‫4 أكتوبر 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-alpha07. يتضمّن الإصدار 1.6.0-alpha07 هذه التعديلات.

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

  • تتضمّن الآن صفوف علامات التبويب الثابتة والقابلة للتمرير صيغًا أساسية وثانوية. يتم ربط هذه القيم بشكل صحيح بسلوك اللون والمؤشر كما هو محدّد في Material3.
  • تعرض الآن PrimaryScrollableTabRow وSecondaryScrollableTabRow حالة التمرير. (Iec8f5، b/260572337)

الإصدار 1.6.0-alpha06

‫20 سبتمبر 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-alpha06. يتضمّن الإصدار 1.6.0-alpha06 هذه التعديلات.

الإصدار ‎1.6.0-alpha05

‫6 سبتمبر 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-alpha05. يتضمّن الإصدار 1.6.0-alpha05 هذه التعديلات.

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

  • تمت إضافة PathEasing للسماح بتوفير مسار عشوائي لمنحنى تغيير السرعة. (Idb4b9)

الإصدار ‎1.6.0-alpha04

‫23 أغسطس 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-alpha04. يتضمّن الإصدار 1.6.0-alpha04 هذه التعديلات.

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

  • أضِف SeekableTransitionState للسماح للمطوّرين بالتحكّم في مستوى تقدّم عملية الانتقال. (I8e69d)

الإصدار 1.6.0-alpha03

‫9 أغسطس 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-alpha03. يتضمّن الإصدار 1.6.0-alpha03 هذه التعديلات.

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

  • نوع جديد من انتقالات الدخول/الخروج التي توسّع المحتوى أو تقلّصه استنادًا إلى حجم الحاوية المتحركة أثناء حركة الدخول والخروج أصبحت الآن واجهة LookaheadScope Composable fun ثابتة. (Ifb2ce)

الإصدار ‎1.6.0-alpha02

‏26 تموز (يوليو) 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-alpha02. يتضمّن الإصدار 1.6.0-alpha02 هذه التعديلات.

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

  • ExitTransition.Hold جديد لعرض المحتوى الصادر في AnimatedContent إلى أن تنتهي كلتا عمليتَي الانتقال للدخول والخروج (I5984f)
  • إضافة تعليقات توضيحية لتحديد المدخلات المسموح بها في العناصر القابلة للإنشاء (I51109)

الإصدار ‎1.6.0-alpha01

‫21 حزيران (يونيو) 2023

تم طرح androidx.compose.animation:animation-*:1.6.0-alpha01. يتضمّن الإصدار 1.6.0-alpha01 هذه التعديلات.

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

  • فعِّل Modifier.animateContentSize وAnimatedVisibility ليتم دمجهما بالكامل في نظام البحث الاستباقي من خلال إعداد حجم الهدف في عملية البحث الاستباقي.

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

  • سمة جديدة في IntrinsincMeasureScope وعمليات تنفيذها (مثل MeasureScope) للإشارة إلى ما إذا كانت عملية قياس المقياس الحالية هي عملية بحث مسبق. (I7a812)

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

  • تمت إزالة عمليات التخصيص من الصور المتحركة النابضة. (Ie9431)
  • تم تغيير اسم مَعلمة القيمة في Enum.valueOf (Ia9b89)
  • المزيد من الاستثناءات التي تم طرحها من enum valueOf (I818fe)

الإصدار 1.5

الإصدار 1.5.4

‫18 أكتوبر 2023

تم طرح androidx.compose.animation:animation-*:1.5.4. يتضمّن الإصدار 1.5.4 هذه التعديلات.

الإصدار 1.5.3

‫4 أكتوبر 2023

تم طرح androidx.compose.animation:animation-*:1.5.3. لا يتضمّن هذا الإصدار أي تغييرات

الإصدار 1.5.2

‫27 سبتمبر 2023

تم طرح androidx.compose.animation:animation-*:1.5.2. يتضمّن الإصدار 1.5.2 هذه التعديلات.

الإصدار 1.5.1

‫6 سبتمبر 2023

تم طرح androidx.compose.foundation:foundation-*:1.5.1. يتضمّن الإصدار 1.5.1 هذه التعديلات.

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

  • تم إصلاح الحقول النصية التي تعرض لوحة المفاتيح ويمكن تعديلها عندما تكون قيمة readOnly صحيحة. تم أيضًا إصلاح مشكلة عدم ظهور لوحة المفاتيح عند تغيير قيمة readOnly من "صحيح" إلى "خطأ" أثناء التركيز. (I34a19، b/246909589)

الإصدار 1.5.1

‫6 سبتمبر 2023

تم طرح androidx.compose.animation:animation-*:1.5.1. يتضمّن الإصدار 1.5.1 هذه التعديلات.

الإصدار 1.5.0

‫9 أغسطس 2023

تم طرح androidx.compose.animation:animation-*:1.5.0. يتضمّن الإصدار 1.5.0 هذه التعديلات.

الإصدار 1.5.0-rc01

‏26 تموز (يوليو) 2023

تم طرح androidx.compose.animation:animation-*:1.5.0-rc01. يتضمّن الإصدار 1.5.0-rc01 هذه التعديلات.

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

  • تم إصلاح المشكلة التي كانت تؤدي إلى ظهور تحذير lint مع إصلاح غير صالح عند استدعاء .value على نوع حالة أساسي (مثل MutableIntState). سيقترح الفحص الآن نقل البيانات إلى الموقع الصحيح. (Iba953، b/287279257)

  • يتوفّر فحص اختياري لاقتراح نقل طلبات mutableStateOf() إلى أنواعها المتخصّصة المقابلة للعناصر الأساسية. رقم تعريف أداة التدقيق هو AutoboxingStateCreation. في السابق، كان هذا الفحص مفعَّلاً تلقائيًا لجميع المشاريع. لعرض هذا التحذير في محرّر "استوديو Android" ونتائج أداة Lint في مشروعك، غيِّر مستوى خطورته من "معلومات" إلى "تحذير" (أو أعلى) من خلال تعريف warning "AutoboxingStateCreation" داخل إعدادات build.gradle أو build.gradle.kts في الوحدة كما هو موضّح (I34f7e):

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

الإصدار ‎1.5.0-beta03

‫28 حزيران (يونيو) 2023

تم طرح androidx.compose.animation:animation-*:1.5.0-beta03. يتضمّن الإصدار 1.5.0-beta03 هذه التعديلات.

الإصدار ‎1.5.0-beta02

‫7 يونيو 2023

تم طرح androidx.compose.animation:animation-*:1.5.0-beta02. يتضمّن الإصدار 1.5.0-beta02 هذه التعديلات.

الإصدار ‎1.5.0-beta01

‫24 مايو 2023

تم طرح androidx.compose.animation:animation-*:1.5.0-beta01. يتضمّن الإصدار 1.5.0-beta01 هذه التعديلات.

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

  • تمت إزالة عمليات التخصيص في إعادة التركيب، والصور المتحركة للألوان، وAndroidComposeView (Ib2bfa)

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

  • تمت إزالة عمليات التخصيص من الصور المتحركة النابضة (Ie9431)

الإصدار ‎1.5.0-alpha04

‫10 مايو 2023

تم طرح androidx.compose.animation:animation-*:1.5.0-alpha04. يتضمّن الإصدار 1.5.0-alpha04 هذه التعديلات.

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

  • أصبحت السمة ContentKey متاحة الآن في AnimatedContent للسماح بمزيد من التحكّم في وقت حدوث الانتقال. (Ic069b)

الإصدار ‎1.5.0-alpha03

‫19 أبريل 2023

تم طرح androidx.compose.animation:animation-*:1.5.0-alpha03. يتضمّن الإصدار 1.5.0-alpha03 هذه التعديلات.

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

  • سلوك تلقائي جديد لـ SubcomposeLayout في LookaheadScope تتيح هذه السمة للفتحات الإعلانية SubcomposeLayouts التي لا تحتوي على خانات مشروطة (مثل TabRow وScaffold وBoxWithConstraints وما إلى ذلك) أن تعمل بشكل جيد مع الرسوم المتحركة التي يتم تحميلها مسبقًا.

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

  • تتيح السمة التلقائية الجديدة intermediateMeasurePolicy التي تعيد استخدام سياسة القياس من عملية البحث المسبق عمل الأنواع الفرعية SubcomposeLayout بدون خانات مشروطة، مثل Scaffold وTabRow وBoxWithConstraints، مع عملية البحث المسبق تلقائيًا. (Id84c8)
  • أعِد تسمية الدالة ذات اللاحقة الثابتة fun with إلى togetherWith لدمج عمليات الانتقال عند الدخول والخروج. AnimatedContentScope جديد كمستلِم لدالة lambda الخاصة بالمحتوى (Ic39ae)

الإصدار ‎1.5.0-alpha02

‫5 أبريل 2023

تم طرح androidx.compose.animation:animation-*:1.5.0-alpha02. يتضمّن الإصدار 1.5.0-alpha02 هذه التعديلات.

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

  • واجهة برمجة تطبيقات تجريبية جديدة تتيح إمكانية البحث المسبق في الإصدار SubcomposeLayout سيسمح ذلك لـ SubcomposeLayout بالعمل بشكلٍ سليم في LookaheadScope. ستتوفّر قريبًا إمكانية استخدام المزيد من الأنواع الفرعية المحدّدة من SubcomposeLayout بدون الحاجة إلى إجراء أي تعديلات.

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

  • واجهة برمجة التطبيقات الجديدة SubcomposeLayout التي تتضمّن سياسة وسيطة إضافية للتعامل مع منطق القياس/التنسيق أثناء الرسوم المتحركة المستندة إلى التوقّع المسبق. (I017d3)

الإصدار ‎1.5.0-alpha01

‫22 مارس 2023

تم طرح androidx.compose.animation:animation-*:1.5.0-alpha01. يتضمّن الإصدار 1.5.0-alpha01 هذه التعديلات.

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

  • أصبحت واجهات برمجة التطبيقات AnimatedContent ثابتة، وتم تغيير اسم AnimatedContentScope إلى AnimatedContentTransitionScope. أصبحت scaleIn وscaleOut واجهتَي برمجة تطبيقات ثابتتَين. (Iaf54e)

الإصدار 1.4

الإصدار 1.4.3

‫3 مايو 2023

تم إصدار androidx.compose.animation:animation:1.4.3 وandroidx.compose.animation:animation-core:1.4.3 وandroidx.compose.animation:animation-graphics:1.4.3 بدون أي تغييرات (زيادة رقم الإصدار فقط).

الإصدار 1.4.2

‫19 أبريل 2023

تم إصدار androidx.compose.animation:animation:1.4.2 وandroidx.compose.animation:animation-core:1.4.2 وandroidx.compose.animation:animation-graphics:1.4.2 بدون أي تغييرات. يتضمّن الإصدار 1.4.2 هذه التعديلات.

الإصدار 1.4.1

‫5 أبريل 2023

تم إصدار androidx.compose.animation:animation:1.4.1 وandroidx.compose.animation:animation-core:1.4.1 وandroidx.compose.animation:animation-graphics:1.4.1 بدون أي تغييرات. يتضمّن الإصدار 1.4.1 هذه التعديلات.

الإصدار 1.4.0

‫22 مارس 2023

تم طرح ميزات androidx.compose.animation:animation:1.4.0 وandroidx.compose.animation:animation-core:1.4.0 وandroidx.compose.animation:animation-graphics:1.4.0. يتضمّن الإصدار 1.4.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.3.0

  • تتوفّر تصنيفات الأدوات في الإصدار rememberInfiniteTransition وجميع دوال الإضافة في InfiniteTransition وTransition (مثل InfiniteTransition#animateColor) (I56ef7)

الإصدار 1.4.0-rc01

‫8 مارس 2023

تم إصدار androidx.compose.animation:animation:1.4.0-rc01 وandroidx.compose.animation:animation-core:1.4.0-rc01 وandroidx.compose.animation:animation-graphics:1.4.0-rc01 بدون أي تغييرات. يتضمّن الإصدار 1.4.0-rc01 هذه التعديلات.

الإصدار 1.4.0-beta02

‫22 فبراير 2023

تم إصدار androidx.compose.animation:animation:1.4.0-beta02 وandroidx.compose.animation:animation-core:1.4.0-beta02 وandroidx.compose.animation:animation-graphics:1.4.0-beta02 بدون أي تغييرات. يتضمّن الإصدار 1.4.0-beta02 هذه التعديلات.

الإصدار 1.4.0-beta01

‫8 فبراير 2023

تم إصدار androidx.compose.animation:animation:1.4.0-beta01 وandroidx.compose.animation:animation-core:1.4.0-beta01 وandroidx.compose.animation:animation-graphics:1.4.0-beta01 بدون أي تغييرات. يتضمّن الإصدار 1.4.0-beta01 هذه التعديلات.

الإصدار 1.4.0-alpha05

‫25 يناير 2023

تم طرح ميزات androidx.compose.animation:animation:1.4.0-alpha05 وandroidx.compose.animation:animation-core:1.4.0-alpha05 وandroidx.compose.animation:animation-graphics:1.4.0-alpha05. يتضمّن الإصدار 1.4.0-alpha05 هذه التعديلات.

التغييرات

  • لم يتم إجراء أي تغييرات في مكتبات الصور المتحركة منذ آخر إصدار أولي، وتمت زيادة رقم الإصدار فقط

الإصدار 1.4.0-alpha04

‫11 يناير 2023

تم طرح ميزات androidx.compose.animation:animation:1.4.0-alpha04 وandroidx.compose.animation:animation-core:1.4.0-alpha04 وandroidx.compose.animation:animation-graphics:1.4.0-alpha04. يتضمّن الإصدار 1.4.0-alpha04 هذه التعديلات.

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

  • تتوفّر تصنيفات الأدوات في rememberInfiniteTransition وجميع دوال الإضافة في InfiniteTransition وTransition (مثل InfiniteTransition#animateColor) (I56ef7)

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

  • أصبحت واجهتا برمجة التطبيقات InfiniteTransition#TransitionAnimationState وInfiniteTransition#animations متاحتَين للجميع. (I36682)

الإصدار ‎1.4.0-alpha03

‫7 ديسمبر 2022

تم طرح ميزات androidx.compose.animation:animation:1.4.0-alpha03 وandroidx.compose.animation:animation-core:1.4.0-alpha03 وandroidx.compose.animation:animation-graphics:1.4.0-alpha03. يتضمّن الإصدار 1.4.0-alpha03 هذه التعديلات.

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

  • في اختبارات واجهة المستخدم التي تستخدم قاعدة Compose، لن يتم إرسال عمليات الاستئناف التي تم استئنافها أثناء عمليات معاودة الاتصال withFrameNanos إلا بعد انتهاء جميع عمليات معاودة الاتصال بإطارات التشغيل. يتطابق ذلك مع سلوك Compose عند تشغيله بشكل طبيعي. ومع ذلك، قد يتعذّر إجراء الاختبارات التي تعتمد على السلوك القديم. يجب أن يؤثر ذلك فقط في الرمز الذي يستدعي withFrameNanos أو withFrameMillis مباشرةً، ويتضمّن منطقًا خارج دالة رد الاتصال التي تم تمريرها إلى هاتين الدالتين، وقد يحتاج إلى نقلها إلى داخل دوال رد الاتصال. يمكنك الاطّلاع على تغييرات اختبار الصورة المتحركة في رمز التغيير هذا للحصول على أمثلة.
  • تمت إضافة المَعلمة الاختيارية onPerformTraversals: (Long) -> Unit إلى الدالة الإنشائية TestMonotonicFrameClock ودالة المصنع لتنفيذ الرمز بعد عمليات رد الاتصال withFrameNanos ولكن قبل استئناف إجراءات الروتين الفرعي للمتصلين. (Idb413، b/254115946، b/222093277، b/255802670)
  • مَعلم جديد في AnimatedContent لتصنيف الأدوات (Iebe2d)

الإصدار 1.4.0-alpha02

‫9 نوفمبر 2022

تم طرح ميزات androidx.compose.animation:animation:1.4.0-alpha02 وandroidx.compose.animation:animation-core:1.4.0-alpha02 وandroidx.compose.animation:animation-graphics:1.4.0-alpha02. يتضمّن الإصدار 1.4.0-alpha02 هذه التعديلات.

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

  • إضافة ToolingState للسماح للأدوات بتغيير الحالات الداخلية لـ Composable (Ie6614)

الإصدار 1.4.0-alpha01

‫24 أكتوبر 2022

تم طرح ميزات androidx.compose.animation:animation:1.4.0-alpha01 وandroidx.compose.animation:animation-core:1.4.0-alpha01 وandroidx.compose.animation:animation-graphics:1.4.0-alpha01. يتضمّن الإصدار 1.4.0-alpha01 هذه التعديلات.

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

  • إصلاح صورة متحركة غير صحيحة للانقطاع في AnimatedContent (b/238662479)

الإصدار 1.3

الإصدار 1.3.3

‫11 يناير 2023

تم طرح ميزات androidx.compose.animation:animation:1.3.3 وandroidx.compose.animation:animation-core:1.3.3 وandroidx.compose.animation:animation-graphics:1.3.3. يتضمّن الإصدار 1.3.3 هذه التعديلات.

  • لم يتم إجراء أي تغييرات منذ الإصدار 1.3.2.

الإصدار 1.3.2

‫7 ديسمبر 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.2 وandroidx.compose.animation:animation-core:1.3.2 وandroidx.compose.animation:animation-graphics:1.3.2. يتضمّن الإصدار 1.3.2 هذه التعديلات.

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

  • تم التحديث لدعم الإصدار 1.3.2 من androidx.compose.ui

الإصدار 1.3.1

‫9 نوفمبر 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.1 وandroidx.compose.animation:animation-core:1.3.1 وandroidx.compose.animation:animation-graphics:1.3.1. يتضمّن الإصدار 1.3.1 هذه التعديلات.

الإصدار 1.3.0

‫24 أكتوبر 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.0 وandroidx.compose.animation:animation-core:1.3.0 وandroidx.compose.animation:animation-graphics:1.3.0. يتضمّن الإصدار 1.3.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.2.0

  • إتاحة مجموعة جديدة من دوال التباطؤ والتسارع

الإصدار 1.3.0-rc01

‫5 أكتوبر 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.0-rc01 وandroidx.compose.animation:animation-core:1.3.0-rc01 وandroidx.compose.animation:animation-graphics:1.3.0-rc01. يتضمّن الإصدار 1.3.0-rc01 هذه التعديلات.

الإصدار 1.3.0-beta03

‫21 سبتمبر 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.0-beta03 وandroidx.compose.animation:animation-core:1.3.0-beta03 وandroidx.compose.animation:animation-graphics:1.3.0-beta03. يتضمّن الإصدار 1.3.0-beta03 هذه التعديلات.

  • لم يتم إجراء أي تغييرات منذ الإصدار 1.3.0-beta02.

الإصدار ‎1.3.0-beta02

‫7 أيلول (سبتمبر) 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.0-beta02 وandroidx.compose.animation:animation-core:1.3.0-beta02 وandroidx.compose.animation:animation-graphics:1.3.0-beta02. يتضمّن الإصدار 1.3.0-beta02 هذه التعديلات.

  • تمت إزالة Kotlin.experimental من خيارات المحول البرمجي لأنّه تم إيقافه نهائيًا

الإصدار 1.3.0-beta01

‫24 أغسطس 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.0-beta01 وandroidx.compose.animation:animation-core:1.3.0-beta01 وandroidx.compose.animation:animation-graphics:1.3.0-beta01. يتضمّن الإصدار 1.3.0-beta01 هذه التعديلات.

الإصدار 1.3.0-alpha03

‫10 أغسطس 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.0-alpha03 وandroidx.compose.animation:animation-core:1.3.0-alpha03 وandroidx.compose.animation:animation-graphics:1.3.0-alpha03. يتضمّن الإصدار 1.3.0-alpha03 هذه التعديلات.

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

  • معلَمة جديدة في Crossfade وanimateAsState وAnimatable لتصنيف الأدوات (Iac08a)
  • تمت إضافة الدالة atFraction لتحديد الإطارات الرئيسية في جزء بدلاً من مدة محددة. (I20c76، b/232059455)

الإصدار 1.3.0-alpha02

‫27 يوليو 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.0-alpha02 وandroidx.compose.animation:animation-core:1.3.0-alpha02 وandroidx.compose.animation:animation-graphics:1.3.0-alpha02. يتضمّن الإصدار 1.3.0-alpha02 هذه التعديلات.

الإصدار 1.3.0-alpha01

‫29 يونيو 2022

تم طرح ميزات androidx.compose.animation:animation:1.3.0-alpha01 وandroidx.compose.animation:animation-core:1.3.0-alpha01 وandroidx.compose.animation:animation-graphics:1.3.0-alpha01. يتضمّن الإصدار 1.3.0-alpha01 هذه التعديلات.

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

  • LookaheadLayout جديد يتيح إجراء عملية بحث مسبق قبل القياس أو التخطيط الفعلي. يسمح ذلك بإجراء عملية حسابية مسبقة للتنسيق عند تغييره، مع السماح للمقياس/التنسيق بعد التوقّع المسبق باستخدام الحجم/الموضع المحسوب مسبقًا لتحريك الحجم والمواضع نحو الهدف. لا تتوفّر SubcomposeLayouts بعد، ولكن ستتوفّر في إصدار قادم. (I477f5)

الإصدار 1.2

الإصدار 1.2.1

‫10 أغسطس 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.1 وandroidx.compose.animation:animation-core:1.2.1 وandroidx.compose.animation:animation-graphics:1.2.1. يتضمّن الإصدار 1.2.1 هذه التعديلات.

الإصدار 1.2.0

‫27 يوليو 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0 وandroidx.compose.animation:animation-core:1.2.0 وandroidx.compose.animation:animation-graphics:1.2.0. يتضمّن الإصدار 1.2.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.1.0

  • تتيح ميزة "إنشاء صور متحركة" الآن إعداد "مقياس مدة الرسوم المتحركة" من "خيارات المطوّرين".
  • مجموعة كبيرة من منحنيات التباطؤ والتسارع التجريبية الجديدة
  • يتوافق AnimatedImageVector الآن مع repeatCount وrepeatMode

الإصدار 1.2.0-rc03

‫29 يونيو 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-rc03 وandroidx.compose.animation:animation-core:1.2.0-rc03 وandroidx.compose.animation:animation-graphics:1.2.0-rc03. يتضمّن الإصدار 1.2.0-rc03 هذه التعديلات.

  • لم يتم إجراء أي تغييرات منذ الإصدار 1.2.0-rc02.

الإصدار 1.2.0-rc02

‫22 يونيو 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-rc02 وandroidx.compose.animation:animation-core:1.2.0-rc02 وandroidx.compose.animation:animation-graphics:1.2.0-rc02. يتضمّن الإصدار 1.2.0-rc02 هذه التعديلات.

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

  • إزالة التعليق التوضيحي ExperimentalEasingApi من دوال التباطؤ والتسارع (Ied441)

الإصدار 1.2.0-rc01

‫15 يونيو 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-rc01 وandroidx.compose.animation:animation-core:1.2.0-rc01 وandroidx.compose.animation:animation-graphics:1.2.0-rc01. يتضمّن الإصدار 1.2.0-rc01 هذه التعديلات.

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

  • أصبحت الواجهات في مكتبات Compose الآن تستخدم طرق الواجهة التلقائية في الإصدار 8 من حزمة تطوير البرامج (JDK) (I5bcf1).

الإصدار ‎1.2.0-beta03

‫1 يونيو 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-beta03 وandroidx.compose.animation:animation-core:1.2.0-beta03 وandroidx.compose.animation:animation-graphics:1.2.0-beta03. يتضمّن الإصدار 1.2.0-beta03 هذه التعديلات.

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

  • تمت إضافة منحنيات التباطؤ والتسارع التجريبية للرسوم المتحركة (I64a38)

الإصدار ‎1.2.0-beta02

‫18 مايو 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-beta02 وandroidx.compose.animation:animation-core:1.2.0-beta02 وandroidx.compose.animation:animation-graphics:1.2.0-beta02. يتضمّن الإصدار 1.2.0-beta02 هذه التعديلات.

الإصدار 1.2.0-beta01

‫11 مايو 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-beta01 وandroidx.compose.animation:animation-core:1.2.0-beta01 وandroidx.compose.animation:animation-graphics:1.2.0-beta01. يتضمّن الإصدار 1.2.0-beta01 هذه التعديلات.

  • هذا هو الإصدار التجريبي الأول من الإصدار 1.2. لم يتم إجراء أي تغييرات منذ إصدار الإصدار الأوّلي الأخير.

الإصدار ‎1.2.0-alpha08

‫20 أبريل 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-alpha08 وandroidx.compose.animation:animation-core:1.2.0-alpha08 وandroidx.compose.animation:animation-graphics:1.2.0-alpha08. يتضمّن الإصدار 1.2.0-alpha08 هذه التعديلات.

الإصدار 1.2.0-alpha07

‫6 أبريل 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-alpha07 وandroidx.compose.animation:animation-core:1.2.0-alpha07 وandroidx.compose.animation:animation-graphics:1.2.0-alpha07. يتضمّن الإصدار 1.2.0-alpha07 هذه التعديلات.

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

  • تتوافق AnimatedImageVector الآن مع repeatCount وrepeatMode (Ia3e75 وb/199304067)

الإصدار ‎1.2.0-alpha06

‫23 مارس 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-alpha06 وandroidx.compose.animation:animation-core:1.2.0-alpha06 وandroidx.compose.animation:animation-graphics:1.2.0-alpha06. يتضمّن الإصدار 1.2.0-alpha06 هذه التعديلات.

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

  • تم تعديل عملية تحليل الرسومات المتجهة القابلة للرسم من أجل إتاحة الانعكاس التلقائي لعكس محتوى VectorPainter إذا كانت جهة التخطيط الحالية من اليمين إلى اليسار. (I79cd9، b/185760237)

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

  • تم تعديل واجهات برمجة تطبيقات الرسومات المتجهة لاستخدام التعليق التوضيحي الصحيح القابل للإنشاء @VectorComposable بدلاً من @UiComposable (I942bc)

الإصدار ‎1.2.0-alpha05

‫9 مارس 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-alpha05 وandroidx.compose.animation:animation-core:1.2.0-alpha05 وandroidx.compose.animation:animation-graphics:1.2.0-alpha05. يتضمّن الإصدار 1.2.0-alpha05 هذه التعديلات.

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

  • خبر سار! تتيح ميزة "إنشاء صورة متحركة" الآن إعداد "مقياس مدة الرسوم المتحركة" من "خيارات المطوّرين". (I5a4fc، b/161675988)

الإصدار ‎1.2.0-alpha04

‫23 فبراير 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-alpha04 وandroidx.compose.animation:animation-core:1.2.0-alpha04 وandroidx.compose.animation:animation-graphics:1.2.0-alpha04. يتضمّن الإصدار 1.2.0-alpha04 هذه التعديلات.

الإصدار ‎1.2.0-alpha03

‫9 فبراير 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-alpha03 وandroidx.compose.animation:animation-core:1.2.0-alpha03 وandroidx.compose.animation:animation-graphics:1.2.0-alpha03. يتضمّن الإصدار 1.2.0-alpha03 هذه التعديلات.

الإصدار 1.2.0-alpha02

‫26 يناير 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-alpha02 وandroidx.compose.animation:animation-core:1.2.0-alpha02 وandroidx.compose.animation:animation-graphics:1.2.0-alpha02. يتضمّن الإصدار 1.2.0-alpha02 هذه التعديلات.

الإصدار 1.2.0-alpha01

‫12 يناير 2022

تم طرح ميزات androidx.compose.animation:animation:1.2.0-alpha01 وandroidx.compose.animation:animation-core:1.2.0-alpha01 وandroidx.compose.animation:animation-graphics:1.2.0-alpha01. يتضمّن الإصدار 1.2.0-alpha01 هذه التعديلات.

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

  • استخدِم AnimatedImageVector.animatedVectorResource بدلاً من animatedVectorResource لتحميل ملف موارد <animated-vector>.
    • استخدِم rememberAnimatedVectorResource بدلاً من AnimatedImageVector#painterFor لعرض AnimatedImageVector. (I9c300)

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

  • إضافة طرق toString إلى Animatable وAnimationResult (Icd3a6)

تحديثات الاعتماديات

  • يعتمد الآن على 1.6.10 Kotlin.

الإصدار 1.1

الإصدار 1.1.1

‫23 فبراير 2022

تم طرح ميزات androidx.compose.animation:animation:1.1.1 وandroidx.compose.animation:animation-core:1.1.1 وandroidx.compose.animation:animation-graphics:1.1.1. يتضمّن الإصدار 1.1.1 هذه التعديلات.

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

  • إصلاح NullPointerException في androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList (aosp/1947059 وb/206677462)
  • تم إصلاح عُطل ناتج عن محتوى الحافظة أثناء القراءة من الحافظة على جهاز Android. (I06020، b/197769306)
  • إصلاح مشكلة عرض النصوص من اليمين إلى اليسار في LazyVerticalGrid (aosp/1931080 وb/207510535)

الإصدار 1.1.0

‫9 فبراير 2022

تم طرح ميزات androidx.compose.animation:animation:1.1.0 وandroidx.compose.animation:animation-core:1.1.0 وandroidx.compose.animation:animation-graphics:1.1.0. يتضمّن الإصدار 1.1.0 هذه التعديلات.

التغييرات المهمة منذ الإصدار 1.0.0

  • إتاحة تأثير تجاوز حد التمرير في Android 12 بشكل ثابت
  • تحسينات على حجم مساحة اللمس
  • يُرجى العِلم أنّه في ما يتعلّق بالإصدار 1.0 من Compose، ستوسّع مكوّنات Material مساحة التنسيق لتلبية إرشادات تسهيل الاستخدام في Material بشأن حجم مساحة اللمس. على سبيل المثال، سيتم توسيع مساحة اللمس الخاصة بالزر إلى حد أدنى يبلغ 48×48 بكسل مستقل الكثافة، حتى إذا ضبطت حجم الزر على قيمة أصغر. يؤدي ذلك إلى توافق Compose Material مع السلوك نفسه الذي تتّبعه "مكوّنات التصميم المتعدد الأبعاد"، ما يوفّر سلوكًا متسقًا في حال استخدام كلّ من Views وCompose. يضمن هذا التغيير أيضًا استيفاء الحد الأدنى من متطلبات إمكانية الوصول إلى مساحة اللمس عند إنشاء واجهة المستخدم باستخدام مكوّنات Compose Material.
  • إتاحة شريط التنقّل بشكل ثابت
  • نقل عدد من واجهات برمجة التطبيقات التجريبية السابقة إلى الإصدار الثابت
  • التوافق مع الإصدارات الأحدث من Kotlin

الإصدار ‎1.1.0-rc03

‫26 يناير 2022

تم طرح ميزات androidx.compose.animation:animation:1.1.0-rc03 وandroidx.compose.animation:animation-core:1.1.0-rc03 وandroidx.compose.animation:animation-graphics:1.1.0-rc03. يتضمّن الإصدار 1.1.0-rc03 هذه التعديلات.

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

  • تم التحديث لإتاحة استخدام الإصدار 1.1.0-rc03 من Compose Material

الإصدار 1.1.0-rc01

15 كانون الأول (ديسمبر) 2021

تم طرح androidx.compose.animation:animation:1.1.0-rc01 وandroidx.compose.animation:animation-core:1.1.0-rc01. يتضمّن الإصدار 1.1.0-rc01 هذه التعديلات.

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

  • استخدِم AnimatedImageVector.animatedVectorResource بدلاً من animatedVectorResource لتحميل ملف موارد <animated-vector>.
    • استخدِم rememberAnimatedVectorResource بدلاً من AnimatedImageVector#painterFor لعرض AnimatedImageVector. (I9c300)

الإصدار ‎1.1.0-beta04

‫1 ديسمبر 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-beta04 وandroidx.compose.animation:animation-core:1.1.0-beta04 وandroidx.compose.animation:animation-graphics:1.1.0-beta04. يتضمّن الإصدار 1.1.0-beta04 هذه التعديلات.

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

  • تم تعديلها لتكون متوافقة مع الإصدار 1.6.0 من Kotlin

الإصدار ‎1.1.0-beta03

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

تم طرح ميزات androidx.compose.animation:animation:1.1.0-beta03 وandroidx.compose.animation:animation-core:1.1.0-beta03 وandroidx.compose.animation:animation-graphics:1.1.0-beta03. يتضمّن الإصدار 1.1.0-beta03 هذه التعديلات.

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

  • تمت إضافة معدِّل جديد Modifier.onPlaced للسماح بمراقبة تغيير موضع العنصر. وبالتالي، يمكن إجراء تغييرات إضافية على إزاحة المعدِّل الفرعي استنادًا إلى التغيير الملحوظ في موضع الإعلان. (I558fd)
  • إتاحة استخدام contentKey في ميزة "التلاشي التدريجي" سيتم استخدام ContentKey للتحقّق من المساواة من خلال نظام الرسوم المتحركة. لذلك، يمكن تحقيق عملية مقارنة مخصّصة للحالات من خلال تحديد contentKey المناسب للحالات المختلفة.

    سيتم أيضًا استخدام ContentKey كمفتاح لحفظ المحتوى واستعادته. (I2e055، b/197907070)

الإصدار 1.1.0-beta02

‫3 نوفمبر 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-beta02 وandroidx.compose.animation:animation-core:1.1.0-beta02 وandroidx.compose.animation:animation-graphics:1.1.0-beta02. يتضمّن الإصدار 1.1.0-beta02 هذه التعديلات.

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

  • واجهات برمجة تطبيقات جديدة للصور المتحركة لدعم الأدوات على وجه التحديد، تتيح هذه الفئة للأدوات فحص الصور المتحركة وإعداداتها في Transitions. (I4116e)

الإصدار 1.1.0-beta01

‫27 أكتوبر 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-beta01 وandroidx.compose.animation:animation-core:1.1.0-beta01 وandroidx.compose.animation:animation-graphics:1.1.0-beta01. يتضمّن الإصدار 1.1.0-beta01 هذه التعديلات.

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

  • واجهات برمجة تطبيقات جديدة للصور المتحركة لدعم الأدوات على وجه التحديد، تتيح هذه الفئة للأدوات فحص الصور المتحركة وإعداداتها في Transitions. (I4116e)

الإصدار ‎1.1.0-alpha06

‫13 أكتوبر 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-alpha06 وandroidx.compose.animation:animation-core:1.1.0-alpha06 وandroidx.compose.animation:animation-graphics:1.1.0-alpha06. يتضمّن الإصدار 1.1.0-alpha06 هذه التعديلات.

الإصدار ‎1.1.0-alpha05

‫29 سبتمبر 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-alpha05 وandroidx.compose.animation:animation-core:1.1.0-alpha05 وandroidx.compose.animation:animation-graphics:1.1.0-alpha05. يتضمّن الإصدار 1.1.0-alpha05 هذه التعديلات.

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

  • أصبحت واجهات برمجة التطبيقات EnterTransition وExitTransition وبعض واجهات برمجة التطبيقات AnimatedVisibility ثابتة. لم تعُد ميزة MutableTransitionState.isIdle تجريبية أيضًا. (I5072d)

  • تغيير غير متوافق: تم نقل دوال lambda في مصانع Enter/ExitTransition إلى الموضع الأخير في قائمة المَعلمات. (I5072d)

الإصدار 1.1.0-alpha04

‫15 سبتمبر 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-alpha04 وandroidx.compose.animation:animation-core:1.1.0-alpha04 وandroidx.compose.animation:animation-graphics:1.1.0-alpha04. يتضمّن الإصدار 1.1.0-alpha04 هذه التعديلات.

الإصدار ‎1.1.0-alpha03

‫1 سبتمبر 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-alpha03 وandroidx.compose.animation:animation-core:1.1.0-alpha03 وandroidx.compose.animation:animation-graphics:1.1.0-alpha03. يتضمّن الإصدار 1.1.0-alpha03 هذه التعديلات.

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

  • تم تعديل Compose 1.1.0-alpha03 ليعتمد على Kotlin 1.5.30. (I74545)

الإصدار ‎1.1.0-alpha02

‫18 أغسطس 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-alpha02 وandroidx.compose.animation:animation-core:1.1.0-alpha02 وandroidx.compose.animation:animation-graphics:1.1.0-alpha02. يتضمّن الإصدار 1.1.0-alpha02 هذه التعديلات.

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

  • أصبحت السمة StartOffset متاحة الآن في السمتَين repeatable وinfiniteRepeatable، وذلك كطريقة لتأخير وقت البدء أو تسريع الحركة قبل أن تبدأ. لن يتم تكرار إزاحة البدء هذه (Ic679f، b/195079908)
  • انتقال جديد للدخول/الخروج من أجل تغيير الحجم يمكن استخدامها مع أنواع أخرى من Enter/ExitTransitions. (I372da، b/191325593)

الإصدار ‎1.1.0-alpha01

‫4 أغسطس 2021

تم طرح ميزات androidx.compose.animation:animation:1.1.0-alpha01 وandroidx.compose.animation:animation-core:1.1.0-alpha01 وandroidx.compose.animation:animation-graphics:1.1.0-alpha01. يتضمّن الإصدار 1.1.0-alpha01 هذه التعديلات.

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

  • أصبحت السمة AnimatedImageVector وواجهات برمجة التطبيقات ذات الصلة متوفّرة الآن في وحدة androidx.compose.animation:animation-graphics الجديدة. (I60873)

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

الإصدار 1.0

الإصدار 1.0.5

‫3 نوفمبر 2021

تم طرح androidx.compose.animation:animation:1.0.5 وandroidx.compose.animation:animation-core:1.0.5. يتضمّن الإصدار 1.0.5 هذه التعديلات.

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

  • تم إصلاح مشكلة تعطُّل تتبُّع مثيلات derivedStateOf. (aosp/1792247)

الإصدار 1.0.4

‫13 أكتوبر 2021

تم طرح androidx.compose.animation:animation:1.0.4 وandroidx.compose.animation:animation-core:1.0.4. يتضمّن الإصدار 1.0.4 هذه التعديلات.

تحديثات الاعتماديات

  • تم تعديلها لتعتمد على الإصدار 1.5.31 من Kotlin

الإصدار 1.0.3

‫29 سبتمبر 2021

تم طرح androidx.compose.animation:animation:1.0.3 وandroidx.compose.animation:animation-core:1.0.3. يتضمّن الإصدار 1.0.3 هذه التعديلات.

تحديثات الاعتماديات

  • تم تعديلها لتعتمد على الإصدار 1.5.30 من Kotlin

الإصدار 1.0.2

‫1 سبتمبر 2021

تم طرح androidx.compose.animation:animation:1.0.2 وandroidx.compose.animation:animation-core:1.0.2. يتضمّن الإصدار 1.0.2 هذه التعديلات.

تم تعديلها لتتوافق مع إصدار Compose 1.0.2. لا يزال الإصدار 1.0.2 من Compose متوافقًا مع الإصدار 1.5.21 من Kotlin.

الإصدار 1.0.1

‫4 أغسطس 2021

تم طرح androidx.compose.animation:animation:1.0.1 وandroidx.compose.animation:animation-core:1.0.1. يتضمّن الإصدار 1.0.1 هذه التعديلات.

تحديثات الاعتماديات

  • تم تعديلها لتعتمد على الإصدار 1.5.21 من Kotlin.

الإصدار 1.0.0

‫28 يوليو 2021

تم طرح androidx.compose.animation:animation:1.0.0 وandroidx.compose.animation:animation-core:1.0.0. يتضمّن الإصدار 1.0.0 هذه التعديلات.

الميزات الرئيسية في الإصدار 1.0.0

هذا هو أول إصدار ثابت من Compose. يُرجى الاطّلاع على مدوّنة Compose Release الرسمية لمزيد من التفاصيل.

المشاكل المعروفة

  • إذا كنت تستخدم الإصدار 4 من استوديو Android Bumblebee Canary أو الإصدار 7.1.0-alpha04/7.1.0-alpha05 من &quot;المكوّن الإضافي لنظام Gradle المتوافق مع Android&quot;، قد تواجه التعطّل التالي:

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

    لحلّ هذه المشكلة، عليك زيادة minSdkVersion مؤقتًا إلى 24 أو أكثر في ملف build.gradle. سيتم حلّ هذه المشكلة في الإصدار التالي من Android Studio Bumblebee و7.1. (b/194289155)

الإصدار ‎1.0.0-rc02

‫14 يوليو 2021

تم طرح androidx.compose.animation:animation:1.0.0-rc02 وandroidx.compose.animation:animation-core:1.0.0-rc02. يتضمّن الإصدار 1.0.0-rc02 هذه التعديلات.

الإصدار ‎1.0.0-rc01

‫1 تموز (يوليو) 2021

تم طرح androidx.compose.animation:animation:1.0.0-rc01 وandroidx.compose.animation:animation-core:1.0.0-rc01. يتضمّن الإصدار 1.0.0-rc01 هذه التعديلات.

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

  • تم نقل InfiniteAnimationPolicy إلى androidx.compose.ui:ui (I5eb09، b/160602714)

الإصدار ‎1.0.0-beta09

‫16 حزيران (يونيو) 2021

تم طرح androidx.compose.animation:animation:1.0.0-beta09 وandroidx.compose.animation:animation-core:1.0.0-beta09. يتضمّن الإصدار 1.0.0-beta09 هذه التعديلات.

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

  • AnimatedContent Composable جديد وتدير تغيير المحتوى باستخدام ContentTransform قابلة للتخصيص مع دخول محتوى مستهدف جديد وخروج المحتوى الأولي. يمكن استخدام مجموعات مختلفة من انتقالات الدخول والخروج لإنشاء مظهر وإحساس مخصّصَين. كجزء من عملية تحويل المحتوى، يتم تحريك حجم AnimatedContent تلقائيًا ليتناسب مع المحتوى الوارد. (I2c3df)
  • تمت إزالة جهة الاتصال "ManualFrameClock". إذا كنت بحاجة إلى التحكّم في الرسوم المتحركة، استخدِم composeTestRule.mainClock بدلاً من ذلك. (I3c3e8، b/189951065)

قواعد الملفات التجارية المُضافة

يضيف هذا الإصدار قواعد الملف الشخصي إلى وحدات الإنشاء التالية (I14ed6):

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

ما هي قواعد الملف الشخصي؟

  • يتم تحديد قواعد الملف الشخصي لمكتبة في ملف نصي baseline-prof.txt يقع في الدليل src/main أو دليل مكافئ. يحدّد الملف قاعدة واحدة لكل سطر، حيث تكون القاعدة في هذه الحالة عبارة عن نمط للمطابقة مع الطرق أو الفئات في المكتبة. بنية هذه القواعد هي مجموعة فرعية من تنسيق ملف ART الشخصي القابل للقراءة الذي يتم استخدامه عند استخدام adb shell profman --dump-classes-and-methods .... تتخذ هذه القواعد أحد الشكلين التاليين لاستهداف الطرق أو الفئات.

  • ستتّبع قاعدة الطريقة النمط التالي:

    <FLAGS><CLASS_DESCRIPTOR>-><METHOD_SIGNATURE>
    
  • وستتّبع قاعدة الفئة النمط التالي:

    <CLASS_DESCRIPTOR>
    
  • هنا، <FLAGS> هو واحد أو أكثر من الأحرف H وS وP للإشارة إلى ما إذا كان يجب تصنيف هذه الطريقة على أنّها "شائعة الاستخدام" أو "بدء التشغيل" أو "بعد بدء التشغيل".

  • <CLASS_DESCRIPTOR> هو واصف الفئة التي تنتمي إليها الطريقة المستهدَفة. على سبيل المثال، سيكون للفئة androidx.compose.runtime.SlotTable واصف Landroidx/compose/runtime/SlotTable;.

  • ‫<METHOD_SIGNATURE> هي توقيع الطريقة، وتشمل الاسم وأنواع المَعلمات وأنواع الإرجاع الخاصة بالطريقة. على سبيل المثال، يتضمّن الإجراء fun isPlaced(): Boolean في LayoutNode التوقيع isPlaced()Z.

  • يمكن أن تتضمّن هذه الأنماط أحرف بدل (** و* و?) لكي تشمل قاعدة واحدة طرقًا أو فئات متعدّدة.

ما هي وظيفة القواعد؟

  • تشير الطريقة التي تتضمّن العلامة H إلى أنّ هذه الطريقة هي طريقة "نشطة"، ويجب تجميعها مسبقًا.

  • تشير الطريقة التي تحمل العلامة S إلى أنّها طريقة يتم استدعاؤها عند بدء التشغيل، ويجب تجميعها مسبقًا لتجنُّب تكلفة التجميع وتفسير الطريقة عند بدء التشغيل.

  • تشير الطريقة التي تتضمّن العلامة P إلى أنّها طريقة يتم استدعاؤها بعد بدء التشغيل.

  • يشير أحد الصفوف المتوفّرة في هذا الملف إلى أنّه يتم استخدامه أثناء بدء التشغيل ويجب تخصيصه مسبقًا في الذاكرة المؤقتة لتجنُّب تكلفة تحميل الصف.

آلية العمل

  • يمكن للمكتبات تحديد هذه القواعد التي سيتم تضمينها في عناصر AAR. عند إنشاء تطبيق يتضمّن هذه العناصر، يتم دمج هذه القواعد معًا واستخدام القواعد المدمجة لإنشاء ملف ثنائي مضغوط خاص بالتطبيق في ART. ويمكن أن يستفيد ART من هذا الملف عند تثبيت التطبيق على الأجهزة من أجل تجميع مجموعة فرعية محدّدة من التطبيق مسبقًا لتحسين أداء التطبيق، وخاصةً عند تشغيله للمرة الأولى. يُرجى العِلم أنّ هذا الإجراء لن يؤثر في التطبيقات التي يمكن تصحيح أخطائها.

الإصدار ‎1.0.0-beta08

‫2 يونيو 2021

تم طرح androidx.compose.animation:animation:1.0.0-beta08 وandroidx.compose.animation:animation-core:1.0.0-beta08. يتضمّن الإصدار 1.0.0-beta08 هذه التعديلات.

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

  • سيتم الآن استهلاك تغيير الموضع تلقائيًا في detectDragGesures وdetectVerticalGestures وdetectHorizontalGestures، ولن يكون عليك استدعاء change.consumePositionChange في عمليات إعادة الاستدعاء onDrag (I42fc4 وb/185096350 وb/187320697).
  • تم تغيير Modifier.onGloballyPositioned() للإبلاغ عن إحداثيات أداة التعديل هذه في سلسلة أدوات التعديل، وليس إحداثيات التصميم بعد تطبيق جميع أدوات التعديل. وهذا يعني أنّ ترتيب المعدِّلات يؤثّر الآن في الإحداثيات التي سيتم تسجيلها. (Ieb67d، b/177926591)

الإصدار ‎1.0.0-beta07

‫18 أيار (مايو) 2021

تم طرح androidx.compose.animation:animation:1.0.0-beta07 وandroidx.compose.animation:animation-core:1.0.0-beta07. يتضمّن الإصدار 1.0.0-beta07 هذه التعديلات.

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

  • واجهة برمجة تطبيقات جديدة AnimatedVisibility تتيح تحديد إذن الوصول في MutableTransitionState. ويسمح ذلك أيضًا بمراقبة حالات الصور المتحركة خارج AnimatedVisibility من خلال currentState وisIdle.
    • إتاحة إمكانية نقل حساب طفل جديد في "برنامج النقل"
    • إتاحة حركة انتقال مخصّصة للخروج/الدخول في AnimatedVisibility باستخدام AnimationScope.transition
    • يمكن لجميع العناصر الفرعية في AnimatedVisibility استخدام المعدِّل animateEnterExit الجديد.
    • تم إيقاف واجهات برمجة التطبيقات AnimatedVisibility التي تقبل المَعلمة initiallyVisible نهائيًا (I702f3)

الإصدار ‎1.0.0-beta06

‫5 مايو 2021

تم طرح androidx.compose.animation:animation:1.0.0-beta06 وandroidx.compose.animation:animation-core:1.0.0-beta06. يتضمّن الإصدار 1.0.0-beta06 هذه التعديلات.

الإصدار ‎1.0.0-beta05

‫21 أبريل 2021

تم طرح androidx.compose.animation:animation:1.0.0-beta05 وandroidx.compose.animation:animation-core:1.0.0-beta05. يتضمّن الإصدار 1.0.0-beta05 هذه التعديلات.

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

  • أصبحت ملفات AndroidManifest من ui-test-manifest وui-tooling-data متوافقة الآن مع Android 12 (I6f9de وb/184718994).

الإصدار ‎1.0.0-beta04

‫7 أبريل 2021

تم طرح androidx.compose.animation:animation:1.0.0-beta04 وandroidx.compose.animation:animation-core:1.0.0-beta04. يتضمّن الإصدار 1.0.0-beta04 هذه التعديلات.

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

  • تمت إزالة النسخ العامة من RowScope وColumnScope وBoxScope وBoxWithConstraintsScope. (I4e83e، b/181869067)

الإصدار ‎1.0.0-beta03

‫24 مارس 2021

تم طرح androidx.compose.animation:animation:1.0.0-beta03 وandroidx.compose.animation:animation-core:1.0.0-beta03. يتضمّن الإصدار 1.0.0-beta03 هذه التعديلات.

الإصدار ‎1.0.0-beta02

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

تم طرح androidx.compose.animation:animation:1.0.0-beta02 وandroidx.compose.animation:animation-core:1.0.0-beta02. يتضمّن الإصدار 1.0.0-beta02 هذه التعديلات.

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

  • فرض قيود على الاستخدام العام لواجهات برمجة التطبيقات التجريبية (I6aa29 وb/174531520)

الإصدار 1.0.0-beta01

‫24 فبراير 2021

تم طرح androidx.compose.animation:animation:1.0.0-beta01 وandroidx.compose.animation:animation-core:1.0.0-beta01. يتضمّن الإصدار 1.0.0-beta01 هذه التعديلات.

هذا هو الإصدار الأول من الإصدار التجريبي 1.0.0 من Compose.

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

  • تم استبدال "InteractionState" بـ "[Mutable]InteractionSource".
    • تكون الواجهات مسؤولة عن إصدار أحداث التفاعل وجمعها.
    • بدلاً من تمرير interactionState = remember { InteractionState() } إلى مكوّنات مثل Button وModifier.clickable()، استخدِم interactionSource = remember { MutableInteractionSource() }.
    • بدلاً من: Interaction.Pressed in interactionState، يجب استخدام دوال الإضافة في InteractionSource، مثل InteractionSource.collectIsPressedAsState().
    • بالنسبة إلى حالات الاستخدام المعقّدة، يمكنك استخدام InteractionSource.interactions لمراقبة سلسلة التفاعلات. اطّلِع على مستندات InteractionSource وأمثلتها للحصول على مزيد من المعلومات.
    • (I85965، b/152525426، b/171913923، b/171710801، b/174852378)
  • تم تغيير حِزم طريقتَي smoothScrollBy وscrollBy إلى androidx.compose.foundation.gestures.* (I3f7c1، b/175294473)
  • تمت إعادة تسمية عناصر تعديل الحجم. تمت إعادة تسمية Modifier.width/height/size إلى requiredWidth/requiredHeight/requiredSize. تمت إعادة تسمية Modifier.preferredWidth/preferredHeight/preferredSize إلى width/height/size. (I5b414)
  • تم نقل جلسة التعريف إلى حزمة الأساسيات. تم نقل VelocirtTracker من ui.gesture إلى ui.input.pointer. (Iff4a8، b/175294473)
  • تمت إزالة AnimationClockObservable والفئات الفرعية. تمت إزالة AnimatedFloat. (Icde52، b/177457083)
  • تقبل الدالة Modifier.draggable الآن DraggableState بدلاً من تعبير لامدا بسيط. يمكنك إنشاء حالة من خلال rememberDraggableState { delta -> } للحصول على السلوك نفسه كما كان من قبل (Ica70f، b/175294473).
  • تمت إزالة واجهات برمجة التطبيقات animate وanimatedValue وAnimatedValue (If27bc وb/177457083).
  • تمت إزالة AnimationEndReason.Interrupted. سيتم طرح CancellationException إذا تمت مقاطعة الصورة المتحركة. (I2cbbc، b/179695417)
  • تمت إزالة واجهة برمجة التطبيقات TargetAnimation. (If47d1، b/177457083)

الإصدار ‎1.0.0-alpha12

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

تم طرح androidx.compose.animation:animation:1.0.0-alpha12 وandroidx.compose.animation:animation-core:1.0.0-alpha12. يتضمّن الإصدار 1.0.0-alpha12 هذه التعديلات.

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

  • تتطلّب السمة Modifier.pointerInput الآن مفاتيح تذكُّر للإشارة إلى الوقت الذي يجب فيه إعادة تشغيل روتين coroutine الخاص برصد إدخال المؤشر من أجل التبعيات الجديدة. (I849cd)
  • تمت إعادة تسمية Bounds إلى DpRect (I4b32a)
  • تم توحيد اسم المَعلمة AnimationSpec ليصبح animationSpec في جميع أنحاء نظام الرسوم المتحركة. يجب أيضًا فرض قيود على Enter/ExitTransition لقبول FiniteAnimationSpec. (Ie47c5، b/177457083)
  • أصبحت الدالتان Animatable.snapTo وAnimatable.stop دوال تعليق (If4288)
  • على غرار الطريقة التي أزلنا بها سابقًا الدالة القابلة للإنشاء state { 0 } ونشجّع الآن على استخدام دوال مثل remember { mutableStateOf(0) }، سنزيل الدالة القابلة للإنشاء savedInstanceState { 0 }. يجب استخدام rememberSaveable { mutableStateOf(0) } بدلاً من ذلك، وسيتم حفظ الحالة واستعادتها تلقائيًا إذا كان يمكن تخزين النوع المستخدَم داخل MutableState في الحزمة. إذا كنت قد مرّرت سابقًا عنصر حفظ مخصّصًا، عليك الآن استخدام تحميل زائد جديد للدالة rememberSaveable يحتوي على المَعلمة stateSaver. سيكون الاستخدام على النحو التالي: val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } (Ib4c26، b/177338004)
  • تم تعديل توقيع طريقة Crossfade لتكون أكثر اتساقًا مع بقية نظام الرسوم المتحركة. (Ib05ed، b/177457083)
  • تمت إعادة تسمية rememberSavedInstanceState() إلى rememberSaveable() ونقلها إلى حزمة androidx.compose.runtime.saveable. (I1366e، b/177338004)
  • تمت إعادة تسمية RestorableStateHolder إلى SaveableStateHolder ونقلها إلى حزمة androidx.compose.runtime.saveable. تمت إعادة تسمية الطريقة الداخلية RestorableStateProvider إلى SaveableStateProvider. تمت إزالة النوع العام، لذا يمكنك تمرير Any كمفتاح. لم يعُد من الضروري إضافة التعليق التوضيحي التجريبي. (I0902e، b/174598702)
  • تم تعديل واجهة برمجة التطبيقات Modifier.animateContentSize لتكون متوافقة مع بقية نظام الرسوم المتحركة. (I0bf75، b/177457083)
  • تم الآن إيقاف AnimatedValue/Float نهائيًا. يُرجى استخدام Animatable بدلاً من ذلك. (I71345، b/177457083)
  • تم إيقاف tapGestureFilter وdoubleTapGestureFilter وlongPressGestureFilter وpressIndicaitonGestureFilter نهائيًا. استخدِم Modifier.clickable أو Modifier.pointerInput مع الدالة detectTapGestures بدلاً من ذلك. (I6baf9، b/175294473)
  • تم تقديم عنصر سياق روتين فرعي InfiniteAnimationPolicy سيتم تطبيقه في الصور المتحركة التي لا تنتهي. لا يتم تثبيت أي سياسة تلقائيًا، إلا عند إجراء اختبارات باستخدام ComposeTestRule. (I50ec4، b/151940543)
  • تمت إزالة طريقتَي تفكيك البنية وcopy() من عدة فئات كانتا تُستخدَمان فيها نادرًا. (I26702، b/178659281)
  • تم الآن توحيد وقت التشغيل في الصورة المتحركة إلى وحدة النانو ثانية (If776a)
  • تم إيقاف العنصر compose:runtime-dispatch نهائيًا. يمكن الآن العثور على MonotonicFrameClock في compose:runtime، ويمكن العثور على AndroidUiDispatcher في compose:ui. (Ib5c36)
  • تمت إضافة السمتَين Animation.isInfinite وVectorizedAnimationSpec.isInfinite للإشارة إلى ما إذا كانت الحركة لا نهائية أم لا. ويمكن استخدام ذلك في عمليات تنفيذ الصور المتحركة للتعامل بشكل خاص مع هذه الصور. على سبيل المثال، يمكن عرض رسالة خاصة "الوقت المتبقي"، أو يمكن إلغاء الحركة أثناء الاختبارات لمنع الانتظار إلى أجل غير مسمى. (Iebb05، b/151940543)
  • استخدام Long بدلاً من Uptime كنوع وقت للصور المتحركة (Ie3aa7، b/177420019)

الإصدار ‎1.0.0-alpha11

‫28 يناير 2021

تم طرح androidx.compose.animation:animation:1.0.0-alpha11 وandroidx.compose.animation:animation-core:1.0.0-alpha11. يتضمّن الإصدار 1.0.0-alpha11 هذه التعديلات.

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

  • تم إيقاف عملية الانتقال المستندة إلى TransitionDefinition نهائيًا (I0ac57)
  • تمت إضافة حقل تصنيف لعرض عمليات الانتقال والرسوم المتحركة الفرعية في الأدوات (I619fb).
  • أصبح اسم animateAsState الآن animateFooAsState، حيث Foo هو نوع المتغيّر الذي يتم تحريكه، مثل Float وDp وOffset وما إلى ذلك (Ie7e25)
  • ‫InfiniteTransition جديد ينفّذ أي عدد من الرسوم المتحركة الفرعية. (I1da81)
  • تغيير واجهات مَعلمات Material ذات الحالة لتتضمّن دوال ‎ @Composable تعرض State<T> تمت إضافة Animatable.asState() لتسهيل تحويل Animatable إلى State. تغيير animateElevation أيضًا ليكون إضافة معلّقة في Animatable (If613c)

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

  • تم إيقاف onCommit وonDispose وonActive نهائيًا لصالح واجهتَي برمجة التطبيقات SideEffect وDisposableEffect (If760e)
  • أصبحت الحالة الأولية في updateTransition متاحة الآن (Ifd51d)
  • تمت إضافة مَعلمة وصف المحتوى إلى "الصورة" و"الرمز". يُستخدَم لتوفير وصف للخدمات المخصّصة لتسهيل الاستخدام (I2ac4c)
  • تم الآن إيقاف invalidate وcompositionReference() نهائيًا واستبدالهما بـ currentRecomposeScope وrememberCompositionReference على التوالي. (I583a8)
  • سيتم استبدال "المدة" و"مدة التشغيل" بـ "ملّي ثانية طويلة"، وتزيل هذه الخطوة الاعتمادية الخاصة بإدخال المؤشر في تلك الفئات. (Ia33b2، b/175142755، b/177420019)
  • يمكن الآن إنشاء عناصر قابلة للنقر والتبديل والاختيار خارج التركيب (I0a130 وb/172938345 وb/175294473)
  • تم تغيير تغيير السرعة إلى واجهة وظيفية (Ib14e5)
  • طريقة إنشاء items(count: Int) جديدة لنطاق LazyColumn/LazyRow/LazyVerticalGrid أصبحت items(items: List) وitemsIndexed(items: List) الآن دالتَين إضافيتَين، لذا عليك استيرادهما يدويًا عند استخدامهما. عمليات تحميل زائدة جديدة للإضافات الخاصة بالمصفوفات: items(items: Array) وitemsIndexed(Array) (I803fc وb/175562574)
  • استخدام TestCoroutineDispatcher في الاختبار (I532b6)
  • تمت إزالة PointerInputData وتعديل PointerInputChange لإضافة جميع حقول PointerInputData إليها. تم جعل PointerInputEvent وPointerInputEventData داخليتَين لأنّهما لا تُستخدَمان في أي واجهة برمجة تطبيقات عامة. (Ifff97، b/175142755)

الإصدار ‎1.0.0-alpha10

‫13 يناير 2021

تم طرح androidx.compose.animation:animation:1.0.0-alpha10 وandroidx.compose.animation:animation-core:1.0.0-alpha10. يتضمّن الإصدار 1.0.0-alpha10 هذه التعديلات.

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

  • تم تعديل السرعة لتشمل أجزاء مكوّنة وعمليات رياضية. (Ib0447)
  • تمت إعادة تسمية @ExperimentalTesting إلى @ExperimentalTestApi لتكون متوافقة مع التعليقات التوضيحية المشابهة لواجهات برمجة التطبيقات التجريبية (Ia4502 وb/171464963)
  • تمت إعادة تسمية Position إلى DpOffset وإزالة getDistance() (Ib2dfd)
  • تمت إزالة واجهة برمجة التطبيقات العامة Any.identityHashCode() (I025d7)

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

  • واجهة برمجة تطبيقات جديدة مستندة إلى إجراءات روتينية مشتركة Animatable تضمن الاستبعاد المتبادل بين الرسوم المتحركة. إضافة DecayAnimationSpec جديد لتفعيل الصور المتحركة المتعددة الأبعاد (I820f2، b/168014930)
  • تم الآن استبدال animate() بـ animateAsState()، الذي يعرض State<T> بدلاً من T. ويتيح ذلك تحسين الأداء، إذ يمكن تضييق نطاق الإبطال إلى المكان الذي تتم فيه قراءة قيمة الحالة. (Ib179e)

الإصدار ‎1.0.0-alpha09

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

تم طرح androidx.compose.animation:animation:1.0.0-alpha09 وandroidx.compose.animation:animation-core:1.0.0-alpha09. يتضمّن الإصدار 1.0.0-alpha09 هذه التعديلات.

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

  • نقلنا Dp.VectorConverter وPosition.VectorConverter وما إلى ذلك إلى animation-core، وأوقفنا VectorConveters القديمة نهائيًا (If0c4b)
  • تم تقديم مجموعة جديدة تمامًا من واجهات برمجة التطبيقات الخاصة بالانتقالات مع تحسين سهولة الاستخدام، وإتاحة إضافة حركات بشكل ديناميكي، واستهدافات حركات محسوبة بشكل ديناميكي. تم تصنيف واجهات برمجة التطبيقات هذه على أنّها تجريبية لتسهيل التمييز بينها وبين واجهة برمجة التطبيقات المستندة إلى TransitionDefinition. (Ia7fe3)

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

  • تعرض دوال Lambda في أدوات تعديل الإزاحة الآن IntOffset بدلاً من Float. (Ic9ee5 وb/174137212 وb/174146755)
  • إيقاف LazyColumnFor وLazyRowFor وLazyColumnForIndexed وLazyRowForIndexed نهائيًا استخدِم LazyColumn وLazyRow بدلاً من ذلك (I5b48c)
  • تمت إعادة تسمية واجهات برمجة التطبيقات الخاصة بتعليق إدخال المؤشر، HandlePointerInputScope إلى AwaitPointerEventScope و handlePointerInput() إلى awaitPointerEventScope(). (Idf0a1، b/175142755)
  • دالة infiniteRepeatable جديدة لإنشاء InfiniteRepeatableSpec (I668e5)
  • إزالة التعليق التوضيحي ExperimentalPointerInput (‫Ia7a24)

الإصدار ‎1.0.0-alpha08

‫2 ديسمبر 2020

تم طرح androidx.compose.animation:animation:1.0.0-alpha08 وandroidx.compose.animation:animation-core:1.0.0-alpha08. يتضمّن الإصدار 1.0.0-alpha08 هذه التعديلات.

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

  • تمت إضافة عملية فحص lint لتسمية مَعلمات lambda القابلة للإنشاء وموضعها، وذلك للتحقّق من التوافق مع إرشادات Compose. تم أيضًا نقل بعض واجهات برمجة التطبيقات التي تستخدم children كاسم لدالة lambda اللاحقة إلى content، وذلك وفقًا لفحص lint والإرشادات. (Iec48e)
  • تمت إزالة واجهات برمجة التطبيقات التي تم إيقافها نهائيًا سابقًا:
    • تمت إزالة Modifier.onPositioned، يُرجى استخدام Modifier.onGloballyPositioned.
    • تمت إزالة Modifier.onDraw، يُرجى استخدام Modifier.onDrawBehind.
    • تمت إزالة Modifier.plus، يُرجى استخدام Modifier.then.
    • تمت إزالة Color.Unset، يُرجى استخدام Color.Unspecified.
    • تمت إزالة الفئة PxBounds، لذا يُرجى استخدام Rect بدلاً منها.
    • (Ie9d02، b/172562222)
  • Temporarily added option to let the TestAnimationClock be driven by the MonotonicFrameClock (I1403b, b/173402197)

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

  • تمت إعادة تسمية Modifier.drawLayer إلى Modifier.graphicsLayer وتم أيضًا تعديل الفئات ذات الصلة إلى GraphicsLayer وفقًا لملاحظات مجلس واجهة برمجة التطبيقات. (I0bd29، b/173834241)
  • تمت إضافة واجهات برمجة التطبيقات Modifier.scale/rotate لتسهيل عملية drawLayer.
    • تمت إعادة تسمية Modifier.drawOpacity إلى Modifier.alpha
    • تمت إعادة تسمية Modifier.drawShadow إلى Modifier.shadow (I264ca، b/173208140)
  • تم جعل حقلَي وقت التشغيل والموضع في PointerInputData غير قابلَين للتصغير. (Id468a)
  • تمت إعادة تسمية معدِّلات offsetPx إلى offset. تتلقّى هذه الدوال الآن مَعلمات lambda بدلاً من State. (Ic3021، b/173594846)
  • واجهات برمجة تطبيقات جديدة لتشغيل الرسوم المتحركة في إجراءات فرعية (Ied662)
  • تم إيقاف Ambients القديمة التي تحمل اللاحقة Ambient، واستبدالها بسمات جديدة مسبوقة بـ Ambient، وذلك وفقًا لإرشادات Ambients الأخرى وواجهة برمجة تطبيقات Compose. (I33440)
  • أصبح التحكّم في الوقت في الاختبارات (TestAnimationClock واستخداماته) تجريبيًا الآن (I6ef86، b/171378521)
  • إزالة الوحدة القديمة ui-test ورموزها (I3a7cb)
  • تمت إعادة تسمية الدالة RestorableStateHolder.withRestorableState إلى RestorableStateProvider (I66640)
  • تم تعديل واجهة "المحاذاة" وإتاحتها. (I46a07، b/172311734)

الإصدار ‎1.0.0-alpha07

11 تشرين الثاني (نوفمبر)، 2020

تم طرح androidx.compose.animation:animation:1.0.0-alpha07 وandroidx.compose.animation:animation-core:1.0.0-alpha07. يتضمّن الإصدار 1.0.0-alpha07 هذه التعديلات.

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

  • تم إيقاف Foundation AmbientTextStyle وProvideTextStyle وAmbientContentColor نهائيًا. بدلاً من ذلك، استخدِم الإصدارات الجديدة المتوفّرة في مكتبة Material. بالنسبة إلى التطبيقات غير المستندة إلى Material، عليك بدلاً من ذلك إنشاء أنظمة تصميم خاصة بها تتضمّن بيئات سمات يمكن استخدامها في مكوناتك الخاصة. (I74acc، b/172067770)
  • تم إيقاف foundation.Text نهائيًا واستبداله بـ material.Text. للحصول على واجهة برمجة تطبيقات نصية أساسية وغير مشروطة لا تستخدم قيمًا من سمة، اطّلِع على androidx.compose.foundation.BasicText. (If64cb)
  • تم نقل MeasureResult خارج MeasureScope. (Ibf96d، b/171184002)
  • تم نقل العديد من الرموز ذات الصلة بالتصميم من androidx.compose.ui إلى androidx.compose.layout.ui. (I0fa98، b/170475424)

الإصدار ‎1.0.0-alpha06

‫28 أكتوبر 2020

تم طرح androidx.compose.animation:animation:1.0.0-alpha06 وandroidx.compose.animation:animation-core:1.0.0-alpha06. يتضمّن الإصدار 1.0.0-alpha06 هذه التعديلات.

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

  • تفعيل عمليات الانتقال في ComposeTestRule وإزالة خيار تفعيل المؤشر الوامض من ComposeTestRule (If0de3)

الإصدار ‎1.0.0-alpha05

‫14 أكتوبر 2020

تم طرح androidx.compose.animation:animation:1.0.0-alpha05 وandroidx.compose.animation:animation-core:1.0.0-alpha05. يتضمّن الإصدار 1.0.0-alpha05 هذه التعديلات.

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

  • واجهة Animation الجديدة والفئات الفرعية: تخزّن هذه الفئات شروط البدء والانتهاء للحركات، وبالتالي تتيح الاستعلام عن القيمة والسرعة من خلال وقت التشغيل فقط (Ie95bd، b/163329867)

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

  • تمت إعادة تسمية OnPositionedModifier إلى OnGloballyPositionedModifier وإعادة تسمية onPositioned()‎ إلى onGloballyPositioned(). (I587e8، b/169083903)
  • إيقاف واجهتَي برمجة التطبيقات contentColor() وcurrentTextStyle() نهائيًا واستبدالهما بالسمتَين AmbientContentColor وAmbientTextStyle على التوالي يمكنك الوصول إلى القيمة الحالية باستخدام .current في السمة المحيطة، كما هو الحال مع أي سمة محيطة أخرى. تم إجراء هذا التغيير للحفاظ على الاتساق وتجنُّب توفّر طرق متعددة لإنجاز المهمة نفسها. بالإضافة إلى ذلك، يعيد تسمية بعض سمات الإضاءة المحيطة لتوضيح الغرض منها بشكل أفضل على النحو التالي:

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

الإصدار ‎1.0.0-alpha04

‫1 أكتوبر 2020

تم طرح androidx.compose.animation:animation:1.0.0-alpha04 وandroidx.compose.animation:animation-core:1.0.0-alpha04. يتضمّن الإصدار 1.0.0-alpha04 هذه التعديلات.

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

  • إضافة التعليقات التوضيحية إلى rootAnimationClockFactory وtransitionsEnabled وblinkingCursorEnabled وtextInputServiceFactory باستخدام @VisibleForTesting، وتحويلها إلى واجهة برمجة تطبيقات داخلية وإخفاء مستندات kdoc الخاصة بها (I554eb وb/168308412)

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

  • تعديل العديد من واجهات برمجة التطبيقات الخاصة بالرسومات
    • تم تعديل واجهات برمجة التطبيقات الخاصة بتحويل الحجم والتدوير لتستهلك مَعلمة إزاحة واحدة تمثّل إحداثيات نقطة الارتكاز بدلاً من مَعلمات عائمة منفصلة لإحداثيات س/ص في DrawScope وDrawTransform
    • تمت إزالة الطريقتَين Rect.expandToInclude وRect.join
    • عدّلنا مستندات "النطاق الجغرافي" لتشير إلى الشكل البيضوي بالإضافة إلى الشكل الإهليلجي
    • تمت إضافة مستندات للإشارة إلى أنّه يجب عدم استدعاء الدالة الإنشائية العامة لفئة Radius المضمّنة مباشرةً، بل يجب بدلاً من ذلك إنشاء عناصر Radius من خلال دوالها الإنشائية.
    • تمت إزالة واجهات برمجة تطبيقات RoundRect للاستعلام عن topRight وbottomRight وbottomCenter وما إلى ذلك.
    • إيقاف Rect.shift نهائيًا واستخدام Rect.translate بدلاً منه
    • إزالة واجهتَي RoundRect.grow وRect.shrink البرمجيتَين
    • تمت إعادة تسمية RoundRect.outerRect إلى Rect.boundingRect
    • تمت إزالة طُرق RoundRect.middleRect/tallMiddleRect/wideMiddleRect وRect.isStadium
    • تم تغيير اسم RoundRect.longestSide إلى RoundRect.maxDimension
    • تمت إعادة تسمية RoundRect.shortestSide إلى RoundRect.minDimension
    • تم تغيير RoundRect.center ليكون سمة بدلاً من دالة
    • تم تعديل الدالة الإنشائية RoundRect لتستهلك خصائص Radius بدلاً من المَعلمات الفردية لقيم نصف القطر x/y
    • إزالة واجهات برمجة التطبيقات الخاصة بالحجم التي كانت تفترض أنّها مستطيل بنقطة أصل عند 0,0
    • تمت إضافة واجهة برمجة تطبيقات لإيقاف Radius
    • نقلنا العديد من دوال إضافة RoundRect لتصبح خصائص بدلاً من ذلك
    • (I8f5c7، b/168762961)
  • تم إيقاف foundation.Box نهائيًا. يُرجى استخدام foundation.layout.Box بدلاً من ذلك. (Ie5950، b/167680279)
  • تمت إعادة تسمية "الحزمة" إلى "المربع". سيتم إيقاف Box السابق نهائيًا واستخدام Box الجديد في compose.foundation.layout. يتمثل سلوك Box الجديد في ترتيب العناصر الفرعية بعضها فوق بعض عندما يتضمّن عدة عناصر فرعية، وهذا يختلف عن Box السابق الذي كان يتصرف بشكل مشابه لـ Column. (I94893، b/167680279)
  • تم إيقاف مَعلمات تزيين المربّعات نهائيًا. إذا كنت تريد إضافة زخارف أو مساحة متروكة إلى المربّع، استخدِم المعدِّلات بدلاً من ذلك (Modifier.background وModifier.border وModifier.padding) (Ibae92 وb/167680279).
  • منعنا عمليات الاستيراد الثابتة لمحتويات نطاقات التنسيق (مثل alignWithSiblings في RowScope). يجب استخدام النطاق البديل الصريح بدلاً من ذلك: with(RowScope) { Modifier.alignWithSiblings(FirstBaseline) }. (I216be، b/166760797)

الإصدار ‎1.0.0-alpha03

16 أيلول (سبتمبر) 2020

تم طرح androidx.compose.animation:animation:1.0.0-alpha03 وandroidx.compose.animation:animation-core:1.0.0-alpha03. يتضمّن الإصدار 1.0.0-alpha03 هذه التعديلات.

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

  • تمت إعادة تسمية استخدامات الجاذبية بشكل متّسق لتصبح محاذاة أو محاذاة في واجهات برمجة التطبيقات الخاصة بالتنسيق. (I2421a، b/164077038)

الإصدار ‎1.0.0-alpha02

‫2 سبتمبر 2020

تم طرح androidx.compose.animation:animation:1.0.0-alpha02 وandroidx.compose.animation:animation-core:1.0.0-alpha02. يتضمّن الإصدار 1.0.0-alpha02 هذه التعديلات.

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

  • تمت إضافة ManualFrameClock.hasAwaiters لمعرفة ما إذا كان هناك أي شيء ينتظر إطارًا من ساعة النظام هذه، وrunWithManualClock كبديل عن runBlocking عند إجراء اختبارات تتطلّب ManualFrameClock، وTestUiDispatcher.Main التي تتيح الوصول بسهولة إلى أداة إرسال واجهة المستخدم الرئيسية في اختباراتك.

    على سبيل المثال:

    @Test
    fun myTest() = runWithManualClock { clock ->
        // set some compose content
        withContext(TestUiDispatcher.Main) {
            clock.advanceClock(1000L)
        }
        if (clock.hasAwaiters) {
            println("The clock has awaiters")
        } else {
            println("The clock has no more awaiters")
        }
    }
    

    (I0a85b، b/161247083)

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

  • تم إيقاف onPreCommit نهائيًا، وأصبح onCommit يتضمّن سلوك onPreCommit.

    يتم الآن تنفيذ onCommit وonActive في إطار المنسّق نفسه الذي تم فيه تنفيذ تغييرات التركيب، بدلاً من تنفيذهما في بداية إطار المنسّق التالي. (I70403)

الإصدار ‎1.0.0-alpha01

26 آب (أغسطس) 2020

تم طرح androidx.compose.animation:animation:1.0.0-alpha01 وandroidx.compose.animation:animation-core:1.0.0-alpha01. يتضمّن الإصدار 1.0.0-alpha01 هذه التعديلات.

الإصدار 0.1.0-dev

الإصدار 0.1.0-dev17

‫19 آب (أغسطس) 2020

تم طرح androidx.compose.animation:animation:0.1.0-dev17 وandroidx.compose.animation:animation-core:0.1.0-dev17. يتضمّن الإصدار 0.1.0-dev17 هذه التعديلات.

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

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

  • أصبحت الإزاحة فئة مضمّنة (Iaec70)
  • أصبحت IntOffset الآن فئة مضمّنة (Iac0bf)
  • أصبح IntSize الآن فئة مضمّنة (I2bf42)
  • تتيح الدالة البرمجية القابلة للإنشاء AnimatedVisibilty تحريك ظهور المحتوى الفرعي واختفائه.

    تم تقديم EnterTransition وExitTransition للعمل مع AnimatedVisibilty الدالة المركّبة لتوفير 3 أنواع مختلفة من حركة الظهور والاختفاء: التلاشي والانزلاق والتوسيع/التصغير. يمكن دمج الأنواع المختلفة من الصور المتحركة للحصول على مظهر أكثر تخصيصًا. (Idda11)

  • تم إيقاف PxBounds نهائيًا واستبداله بـ Rect. تم تعديل جميع استخدامات PxBounds لتشمل rect، وتمت إضافة تعليقات توضيحية مناسبة بشأن الإيقاف النهائي والاستبدال للمساعدة في عملية نقل البيانات. (I37038، b/162627058)

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

  • تمت إعادة تسمية "PlacementScope.placeAbsolute()" إلى "PlacementScope.place()"، وتمت إعادة تسمية "PlacementScope.place()" السابقة إلى "PlacementScope.placeRelative()". نتيجةً لذلك، لن تعكس طريقة PlacementScope.place() الموضع تلقائيًا في سياقات الكتابة من اليمين إلى اليسار بعد الآن. إذا كنت تريد ذلك، استخدِم PlacementScope.placeRelative() بدلاً من ذلك. (I873ac، b/162916675)
  • تم الآن إيقاف العنصر المركّب state { ... } نهائيًا واستبداله باستدعاءات صريحة إلى remember { mutableStateOf(...) } لزيادة الوضوح. يقلّل ذلك من مساحة واجهة برمجة التطبيقات الإجمالية وعدد المفاهيم الخاصة بإدارة الحالة، ويتطابق مع نمط by mutableStateOf() لتفويض سمات الفئة. (Ia5727)

الإصدار 0.1.0-dev16

‫5 آب (أغسطس) 2020

تم طرح androidx.compose.animation:animation:0.1.0-dev16 وandroidx.compose.animation:animation-core:0.1.0-dev16. يتضمّن الإصدار 0.1.0-dev16 هذه التعديلات.

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

  • يمكن الآن الوصول إلى أدوات تحويل المتجهات المضمّنة لتحويل الوحدات المضمّنة من خلال Foo.VectorConverter. مثال: Dp.VectorConverter، Color.VectorConverter، Float.VectorConverter، وما إلى ذلك (I3e273)
  • إضافة أداة معالجة لحدث انتهاء الدعم في Modifier.animateContentSize() بحيث يتم إعلام أداة المعالجة عند انتهاء الحركة التي تغيّر الحجم، بالإضافة إلى حجمَي البدء والانتهاء للحركة. (I277b2)
  • معدِّل animateContentSize الجديد الذي يحرّك تغيير حجم التنسيق الخاص بالمعدِّل الفرعي (Ieffdc)
  • تمت إضافة MonotonicFrameAnimationClock التي تتيح لك استخدام MonotonicFrameClock كـ AnimationClockObservable لسد الفجوة بين الساعات الجديدة المستندة إلى الروتينات المشتركة وواجهات برمجة التطبيقات التي لا تزال تستخدم الساعات القديمة المستندة إلى عمليات معاودة الاستدعاء.

    أصبح الآن MonotonicFrameClock يعادل ManualAnimationClock ManualFrameClock. (I111c7، b/161247083)

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

  • تم تعديل واجهات برمجة التطبيقات التي تتيح استخدام اللغة من اليمين إلى اليسار. تمت إضافة LayoutDirectionAmbient، ويمكن استخدامها لقراءة اتجاه التنسيق وتغييره. تمت إزالة Modifier.rtl وModifier.ltr. (I080b3)
  • يجب تحديد النوع T بشكل صريح لـ transitionDefinition. (I1aded)
  • تم تسوية حزمة foundation.shape.corner إلى foundation.share (I46491، b/161887429)
  • تم إيقاف Modifier.plus نهائيًا، يُرجى استخدام Modifier.then بدلاً منه. توفّر الكلمة الأساسية "ثم" إشارة أقوى إلى الترتيب، كما أنّها تحظر كتابة Modifier.padding().background() + anotherModifier، ما يؤدي إلى إيقاف السلسلة ويصعّب قراءتها (Iedd58، b/161529964)
  • تمت إعادة تسمية Modifier.drawBackground إلى Modifier.background (I13677)

الإصدار 0.1.0-dev15

‫22 تموز (يوليو) 2020

تم طرح androidx.compose.animation:animation:0.1.0-dev15 وandroidx.compose.animation:animation-core:0.1.0-dev15. يتضمّن الإصدار 0.1.0-dev15 هذه التعديلات.

تعديل المهام التابعة

  • لاستخدام إصدار 0.1.0-dev15 من Compose، عليك تعديل التبعيات وفقًا لمقتطفات الرموز الجديدة الموضّحة أعلاه في تعريف التبعيات.

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

  • تم تغيير Transition API لعرض TransitionState بدلاً من تمرير TransitionState إلى العناصر التابعة. ويجعل ذلك واجهة برمجة التطبيقات أكثر اتساقًا مع واجهات برمجة التطبيقات animate(). (I24e38)
  • تمت إضافة مَعلمة معدِّل للتلاشي المتقاطع (I87cfe، b/159706180)
  • استخدِم AnimationSpec بدلاً من AnimationBuilder في واجهات برمجة التطبيقات ذات المستوى الأعلى لتوضيح مفهوم مواصفات الرسوم المتحركة الثابتة
    • تحسين لغة DSL الخاصة بالانتقال من خلال إزالة شرط استخدام lambda لإنشاء AnimationSpecs، مثل tween وspring. بدلاً من ذلك، يتم استخدام مَعلمات الدالة الإنشائية مباشرةً.
    • تحسين سهولة الاستخدام العامة لـ AnimationSpec من خلال توفير أدوات إنشاء بدلاً من الاعتماد على أدوات الإنشاء
    • تغيير المدة والتأخير لكلّ من KeyFrames وTween إلى Int، ما يؤدي إلى إلغاء عمليات تحويل الأنواع وتجاوز التحميل غير الضرورية (لدعم كلّ من Long وInt). (Ica0b4)
  • تم استبدال استخدام IntPx بـ Int، واستبدال IntPxPosition بـ IntOffset. تم استبدال IntPxSize بـ IntSize. (Ib7b44)
  • من أجل دمج عدد الفئات المستخدَمة لتمثيل معلومات الحجم، يجب توحيد استخدام فئة Size بدلاً من PxSize. يوفّر ذلك مزايا فئة مضمّنة للاستفادة من نوع بيانات طويل لتعبئة قيمتَين عائمتَين لتمثيل العرض والارتفاع الممثَّلَين كقيم عائمة. (Ic0191)
  • من أجل توحيد عدد الفئات المستخدَمة لتمثيل معلومات تحديد المواقع، يجب توحيد استخدام فئة Offset بدلاً من PxPosition. يوفّر ذلك مزايا فئة مضمّنة للاستفادة من قيمة طويلة لتعبئة قيمتَين من النوع float لتمثيل الإزاحتَين x وy الممثّلتَين كقيم من النوع float. (I3ad98)
  • تم استبدال استخدام فئة Px في العديد من فئات Compose كجزء من عملية إعادة البناء الكبيرة للاعتماد فقط على Dp والأنواع الأساسية لمعلمات البكسل (I086f4)
  • تمت إضافة إمكانية استخدام animate() مع Dp وPx وSize وPosition وBounds وPxPosition وPxSize وPxBounds وIntPx وIntPxSize وIntPxPosition وIntPxBounds وAnimationVector (Ib7518)
  • يقبل Crossfade الآن مَعلمة AnimationBuilder اختيارية للسماح بإعداد الرسوم المتحركة (I6d6e0)
  • تم استبدال جميع استخدامات Color القابلة للتصغير في واجهة برمجة التطبيقات بقيم غير قابلة للتصغير، وتم استخدام Color.Unset بدلاً من القيمة الخالية (Iabaa7)
  • تمت إزالة فئة ValueHolder. تمت إعادة هيكلة فئتَي AnimatedValue وAnimatedFloat لجعل حقل قيمة الرسوم المتحركة مجرّدًا حتى تتمكّن الفئات الفرعية من مراقبة تعديل القيمة.
    • تمت إضافة فئات النماذج إلى AnimatedValue وAnimatedFloat وما إلى ذلك.
    • تمت إضافة مجموعة جديدة من واجهات برمجة التطبيقات @Composable خفيفة الوزن لتفعيل الرسوم المتحركة بين القيم. (I79530)
  • تغييرات قد تؤدي إلى أعطال في واجهة برمجة التطبيقات ambients API راجِع مستندات السجلّ وAmbient<T> للحصول على التفاصيل (I4c7ee، b/143769776)
  • وضع التكرار الجديد: الرجوع إلى الخلف يعكس هذا الوضع التكرار السابق مع تكرار الصورة المتحركة في RepeatableSpec أو VectorizedRepeatableSpec. (Ibe0f5)
  • إضافات واجهة برمجة التطبيقات إلى ManualAnimationClock: hasObservers: Boolean ومَعلمة الدالة الإنشائية dispatchOnSubscribe: Boolean (Iaa134)
  • تمت إضافة واجهات برمجة تطبيقات للحصول على الحدّين الأدنى والأقصى في AnimatedFloat (Icd9cc)

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

  • تمت إعادة تسمية "runOnIdleCompose" إلى "runOnIdle" (I83607)
  • تمت إعادة تسمية العديد من واجهات برمجة التطبيقات الخاصة بالاختبار لتكون أكثر سهولة في الاستخدام. تمت إعادة تسمية جميع واجهات برمجة التطبيقات findXYZ إلى onNodeXYZ. تمت إعادة تسمية جميع واجهات برمجة التطبيقات doXYZ إلى performXYZ. (I7f164)
  • تم تقديم واجهات برمجة تطبيقات للرسوم المتحركة بدون حالة. واجهات برمجة التطبيقات هذه (I63bf7)
  • لم يعُد العنصر القابل للإنشاء Recompose تجريدًا مفيدًا. يجب أن تحدث معظم عمليات إعادة التركيب نتيجة لعمليات تعيين MutableState. بالنسبة إلى أي شيء آخر، يُنصح باستخدام الدالة invalidate لتفعيل إعادة إنشاء النطاق الحالي. (Ifc992)
  • تم استبدال استخدام فئة Px في العديد من فئات Compose كجزء من عملية إعادة البناء الكبيرة للاعتماد فقط على Dp والأنواع الأساسية لمعلمات البكسل. تم حذف فئة Px بالكامل (I3ff33)
  • تم استبدال استخدام فئة Px في فئات Compose المختلفة كجزء من عملية إعادة التصميم الكبيرة للاعتماد فقط على Dp والأنواع الأساسية لمعلمات البكسل (Id3434)
  • يمكن الآن استخدام التلاشي المتداخل مع قيمة فارغة كقيمة أولية (Iad6a4، b/155947711)
  • تم استبدال استخدام فئة Px في العديد من فئات Compose كجزء من عملية إعادة البناء الكبيرة للاعتماد فقط على Dp والأنواع الأساسية لمعلمات البكسل (I19d02)
  • تم دمج عمليات تنفيذ CanvasScope بحيث أصبح هناك DrawScope و ContentDrawScope فقط. تمت إعادة تسمية CanvasScope إلى DrawScope. تم تعديل DrawScope لتنفيذ واجهة Density وتوفير LayoutDirection تم حذف فئة DrawScope الفرعية في ContentDrawScope تم تعديل Painter وPainterModifier لعدم الاحتفاظ بسمة RTL بأنفسهما لأنّ DrawScope يوفّرها بالفعل بدون توفيرها يدويًا (I1798e)
  • تم تعديل واجهات برمجة التطبيقات ذات المستوى الأعلى في Compose التي تعرض Canvas لعرض CanvasScope بدلاً من ذلك. ويؤدي ذلك إلى عدم حاجة المستهلكين إلى الاحتفاظ بكائنات Paint الخاصة بهم. بالنسبة إلى المستهلكين الذين ما زالوا بحاجة إلى الوصول إلى Canvas، يمكنهم استخدام طريقة drawCanvas الإضافية التي توفّر برنامج معالجة لإصدار أوامر الرسم باستخدام Canvas الأساسي. (I80afd)
  • تمت إضافة المَعلمتَين verticalGravity وhorizontalGravity إلى Row وColumn على التوالي. (I7dc5a)
  • تمت إعادة تسمية وحدة ui-text لتصبح ui-text-core (I57dec)
  • تحسين واجهة برمجة التطبيقات DrawModifier:
    • تم إنشاء نطاق المتلقّي للدالة draw() باسم ContentDrawScope
    • تمت إزالة جميع المَعلمات من draw()
    • تتضمّن DrawScope الواجهة نفسها التي كانت تتضمّنها CanvasScope سابقًا
    • يحتوي ContentDrawScope على طريقة drawContent() (Ibaced، b/152919067)
  • أصبحت runOnIdleCompose وrunOnUiThread دالتَين عامتَين بدلاً من طريقتَين في ComposeTestRule. (Icbe8f)
  • تم نقل عوامل تفويض سمة [Mutable]State إلى الإضافات لإتاحة تحسينات تفويض سمة Kotlin 1.4. على المتصلين إضافة عمليات استيراد لمواصلة استخدام by state { ... } أو by mutableStateOf(...). (I5312c)
  • تم إيقاف ColoredRect نهائيًا. يمكن استخدام Box(Modifier.preferredSize(width, height).drawBackground(color)) كبديل. (I499fa، b/152753731)
  • استبدال المعدِّل وعامل التشغيل بوظائف إضافة المصنع (I225e4)
  • تم إيقاف Center composable نهائيًا. يجب استبداله إما بالمعدِّل LayoutSize.Fill + LayoutAlign.Center، أو بأحد العناصر القابلة للإنشاء Box أو Stack مع تطبيق المعدِّلات المناسبة (Idf5e0)
  • تمت إعادة تسمية LayoutFlexible إلى LayoutWeight. تمت إعادة تسمية المَعلمة "ضيق" إلى "ملء". (If4738)
  • تم استبدال الدالة المركّبة Opacity بالمعدِّل drawOpacity. (I5fb62)
  • توفّر الاختبارات التي تستخدم AndroidComposeTestRule الآن ساعة رسوم متحركة في جذر التركيب، ما يتيح إيقافها مؤقتًا واستئنافها وتقديمها يدويًا. (Id54c5)
  • إتاحة الاتجاه من اليمين إلى اليسار في أداة تعديل LayoutPadding (I9e8da)
  • تم دمج Density وDensityScope في واجهة واحدة. بدلاً من ambientDensity()، يمكنك الآن استخدام DensityAmbient.current. بدلاً من withDensity(density) فقط with(density) (I11cb1)
  • تمت إضافة طرق نسخ إلى أنواع مختلفة من الفئات المضمّنة، بما في ذلك:
    • إزاحة
    • الحجم
    • نصف القطر
    • حركة
    • TransformOrigin
    • إيقاف طريقة Size.copy المصاحبة للكائن نهائيًا واستخدام طريقة نسخة الكائن (Ife290، b/159905651)
  • تم نقل androidx.compose.ViewComposer إلى androidx.ui.node.UiComposer تمت إزالة androidx.compose.Emittable. كانت هذه الفئة مكرّرة مع ComponentNode. تمت إزالة androidx.compose.ViewAdapters. ولم تعُد إحدى حالات الاستخدام المتاحة. تم إيقاف Compose.composeInto نهائيًا. يُرجى استخدام setContent أو setViewContent بدلاً من ذلك. تم إيقاف Compose.disposeComposition نهائيًا. استخدِم الطريقة dispose في Composition التي تم إرجاعها من خلال setContent بدلاً من ذلك. تم نقل androidx.compose.Compose.subcomposeInto إلى androidx.ui.core.subcomposeInto تمت إعادة تسمية ComponentNode#emitInsertAt إلى ComponentNode#insertAt تمت إعادة تسمية ComponentNode#emitRemoveAt إلى ComponentNode#removeAt تمت إعادة تسمية ComponentNode#emitMode إلى ComponentNode#move (Idef00)