إنشاء صورة متحركة
يمكنك إنشاء صور متحركة في تطبيقات Jetpack Compose لإثراء تجربة المستخدم.
التعديل الأخير الإصدار المستقر سحب المرشح الإصدار التجريبي إصدار أولي
26 يونيو 2024 1.6.8 - 1.7.0-beta04 -

البنية

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

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

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

إعلان التبعيات

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

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

رائع

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

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

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

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.14"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

ملاحظات

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

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

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

الإصدار 1.7

الإصدار 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 ليصبح الآن واجهة وليس فئة. (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 الرسوم المتحركة أو التقاط الصور لستيفن شوين (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 لأنّها تتطلب معاينة. ستكون متاحة عند تفعيل ميزة Lookout بشكل تلقائي أو تفعيلها في الإصدارات المستقبلية.

الإصدار 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 باستخدام الخطوط الرتيبة. ومن المفيد على وجه الخصوص إضافة قيم موضعية، مثل Offset وIntOffset وDpOffset. تمت إضافتها على أنها واجهة برمجة تطبيقات تجريبية.

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

  • إضافة دعم العارض من خلال ميزة "Sweep Gتدرّج" في ArcLine (I4d5bb)
  • نفِّذ قيمة يساوي ورمز التجزئة لـ PageSize.Fixed. (Ie3ede، b/300134276)
  • إصلاح مشكلة التوافق مع النظام الثنائي في تغيير إدراج النافذة. (Iee695)
  • إزالة الطبقة الأساسية المادية لرقاقة/زر Material3 حيث تُظهر مقاييس الأداء الدقيقة أداءً أفضل بدونها. (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 أصبحت الواجهة والمتعة القابلة للإنشاء ثابتة الآن. (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" ونتجات أداة الوبر الخاصة بمشروعك، عليك تغيير درجة الخطورة من "إشعار" إلى تحذير (أو أعلى) من خلال تحديد 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)
  • يمكنك إعادة تسمية المتعة باستخدام 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 والنقل (مثل 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 على هذه عمليات التنفيذ.

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

  • في اختبارات واجهة المستخدم التي تستخدم قاعدة الإنشاء، لن يتم إرسال عمليات المتابعة التي تم استئنافها أثناء عمليات استدعاء withFrameNanos إلا بعد انتهاء تشغيل جميع استدعاءات الإطارات. يتطابق هذا مع سلوك التأليف عند التشغيل بشكل طبيعي. ومع ذلك، قد يتعذّر إجراء الاختبارات التي تعتمد على السلوك القديم. من المفترَض أن يؤثر ذلك فقط في الرمز البرمجي الذي يستدعي 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 للسماح للأدوات بتغيير الحالات الداخلية القابلة للتعديل (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 على هذه عمليات التنفيذ.

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

  • إصلاح الرسوم المتحركة للمقاطعة غير الصحيحة في الصور المتحركة (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 على عمليات الالتزام هذه.

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

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

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

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

  • يتم الآن إنشاء الواجهات في مكتبات الإنشاء باستخدام طرق الواجهة التلقائية jdk8 (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 إذا كان اتجاه التنسيق الحالي هو RTL. (I79cd9، b/185760237)

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

  • تم تعديل واجهات برمجة التطبيقات لرسومات Vector لاستخدام التعليق التوضيحي المناسب للإنشاء @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
  • تحسينات على حجم مساحة اللمس
  • يُرجى العلم أنّه في ما يتعلّق بـ Compose 1.0، ستعمل مكونات التصميم المتعدد الأبعاد على توسيع مساحة التصميم الخاصة بها لاستيفاء إرشادات تسهيل استخدام المواد من أجل حجم هدف اللمس. مثلاً، سيتم توسيع مساحة اللمس المستهدفة للزر إلى حد أدنى للحجم يبلغ 48x48 بكسل مستقل الكثافة، حتى إذا ضبطت حجم الزر ليكون أصغر. يؤدي ذلك إلى مواءمة مادة Compose مع سلوك مكونات التصميم المتعدد الأبعاد نفسه، ما يوفّر سلوكًا ثابتًا إذا مزجت بين طرق العرض و"الإنشاء". ويضمن هذا التغيير أيضًا استيفاء الحدّ الأدنى من متطلبات إمكانية الوصول إلى مساحة اللمس عند إنشاء واجهة المستخدم باستخدام مكوّنات "مواد إنشاء المحتوى".
  • دعم ثابت لـ شريط التنقل
  • ترقية عدد من واجهات برمجة التطبيقات التجريبية سابقًا إلى إصدار مستقر
  • الدعم للإصدارات الأحدث من 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 على هذه عمليات التنفيذ.

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

  • تم التحديث لدعم Compose 1.1.0-rc03

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

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

  • واجهات برمجة تطبيقات جديدة للصور المتحركة من أجل دعم الأدوات. على وجه التحديد، تسمح للأدوات بفحص الرسوم المتحركة وإعداداتها في الانتقالات. (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 على عمليات التنفيذ هذه.

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

  • واجهات برمجة تطبيقات جديدة للصور المتحركة من أجل دعم الأدوات. على وجه التحديد، تسمح للأدوات بفحص الرسوم المتحركة وإعداداتها في الانتقالات. (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 على هذه عمليات التنفيذ.

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

  • تم تعديل سياسة ComposeAllowed التي تم تحديثها 1.1.0-alpha03 للاعتماد على لغة 1.5.30 في لغة Kotlin. (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 بصيغ قابلة للتكرار وغير محدودة ، كوسيلة لتأجيل وقت البدء أو تقديم الرسوم المتحركة بشكل سريع قبل بدء الرسوم المتحركة. لن يتم تكرار إزاحة البداية هذه (Ic679f وb/195079908)
  • مفتاح Enter/خروج جديد لتغيير الحجم. يمكن استخدامه جنبًا إلى جنب مع أنواع أخرى من انتقالات الدخول/الخروج. (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 على عمليات الالتزام هذه.

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

  • تم إصلاح مثيلات الحالة المستمدة من تتبُّع الأعطال. (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 على عمليات الالتزام هذه.

تم التعديل لإتاحة إصدار 1.0.2 لميزة Compose. لا تزال ميزة إنشاء 1.0.2 متوافقة مع لغة 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 الرسمية للحصول على مزيد من التفاصيل.

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

  • إذا كنت تستخدم Android Studio Bumblebee Canary 4 أو AGP 7.1.0-alpha04/7.1.0-alpha05، قد يحدث العُطل التالي:

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

    لحلّ هذه المشكلة، عليك زيادة minSdkVersion مؤقتًا إلى 24 أو أكثر في ملف build.gradle. سيتم إصلاح هذه المشكلة في الإصدار التالي من Android Studio Bumblebee وAGP 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" قابلة للإنشاء وهو يدير عملية تغيير المحتوى باستخدام 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.
    • إتاحة عملية نقل طفل جديدة في عملية النقل
    • دعم الرسوم المتحركة المخصصة للخروج/الدخول من خلال ميزة العناصر المتحركة لاستخدام AnimationScope.transition
    • يمكن الوصول إلى مفتاح تعديل animateEnterExit لجميع أطفال Animated visibility
    • تم إيقاف واجهات برمجة التطبيقات المخصّصة لـ Android visibility التي تستخدم معلَمة 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 على عمليات التنفيذ هذه.

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

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

  • تم استبدال 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)
  • تم تغيير حزم الطريقتين smooth scrollBy و scrollBy إلى androidx.compose.foundation.gestures.* (I3f7c1، b/175294473)
  • تمت إعادة تسمية معدِّلات الحجم. تمت إعادة تسمية Modifier.width/height/size لتصبح مطلوبةwidth/requiredHeight/requiredSize. تمت إعادة تسمية Modifier.FavoriteDetails/FavoriteHeight/FavoriteSize إلى العرض/الارتفاع/الحجم. (I5b414)
  • تم نقل التوجيه إلى حزمة الأساس. تم نقل أداة VelocirtTracker من ui.gesture إلى ui.input.pointer. (Iff4a8 وb/175294473)
  • تمت إزالة AnimationClockObserverable والفئات الفرعية. تمت إزالة الصور المتحركة العائمة. (Icde52، b/177457083)
  • يقبل Modifier.draggable الآن DraggableState بدلاً من lambda بسيط. يمكنك إنشاء حالة عبر rememberDraggableState { delta -> } للحصول على نفس السلوك كالسابق (Ica70f، b/175294473)
  • تمت إزالة animate و animatedValue وAnimationValue APIs (If27bc، وb/177457083)
  • AnimationEndreason.تمت إزالة انقطاع. سيتم طرح استثناء الإلغاء في حال انقطاع الصورة المتحركة. (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 الآن مفاتيح التذكّر للإشارة إلى الوقت الذي يجب فيه إعادة تشغيل الكوروتينات الخاصة برصد مدخلات المؤشر للتبعيات الجديدة. (I849cd)
  • تمت إعادة تسمية Bounds إلى DpRect (I4b32a).
  • تم توحيد اسم المعلمة لـ AnimationSpec على رسومًا متحركة عبر نظام الرسوم المتحركة. أيضًا قم بتقييد Enter/ExitTransition لقبول FiniteAnimationSpec. (Ie47c5، وb/177457083)
  • Animatable.snapTo وAnimatable.stop هما الآن دالتان تعليق (If4288).
  • وعلى غرار الطريقة التي أزلنا بها سابقًا عنصر state { 0 } القابل للإنشاء، ونعمل الآن على تعزيز الاستخدام، مثل remember { mutableStateOf(0) }، سنزيل savedInstanceState { 0 } قابل للإنشاء. يجب استخدام rememberSaveable { mutableStateOf(0) } بدلاً من ذلك، وسيتم تلقائيًا حفظها واستعادتها إذا كان النوع المستخدَم في MutableState مخزّنًا في الحزمة. إذا كنت تمرر عنصر حفظ مخصّص في السابق، ستحتاج إلى استخدام حمل زائد جديد من العناصر التي سيتم حفظها من "محفظتك" والتي تحتوي على مَعلمة stateSaver. سيظهر الاستخدام على النحو التالي: val holder = rememberSaveable(stateSaver = HolderSaver) { mutableStateOf(Holder(0)) } (Ib4c26، b/177338004)
  • تم تحديث توقيع طريقة Crossfade ليكون أكثر تناسقًا مع بقية نظام الرسوم المتحركة. (Ib05ed، b/177457083)
  • تم تغيير اسم SavedInstanceState() لتذكُّر Saveable() ونقله إلى الحزمة androidx.compose.runtime.saveable. (I1366e، b/177338004)
  • تمت إعادة تسمية RestorableStateHolder إلى SaveableStateHolder وتم نقلها إلى حزمة androidx.compose.runtime.saveable. تمت إعادة تسمية الطريقة الداخلية RestorableStateProvider إلى SaveableStateProvider. تمت إزالة النوع العام، لذا يمكنك ضبط "Any" كمفتاح. لم يعد هناك حاجة إلى التعليق التوضيحي التجريبي. (I0902e، b/174598702)
  • تم تحديث واجهة برمجة التطبيقات Modifier.animateContentSize لتتوافق مع باقي نظام الرسوم المتحركة. (I0bf75، b/177457083)
  • تم إيقاف ميزةAnimationValue/Float (القيمة العائمة) نهائيًا الآن. يُرجى استخدام صورة متحركة بدلاً من ذلك. (I71345، b/177457083)
  • تم نهائيًا إيقاف بكل من AccessibilityFilter و Double TapشيءFilter وlongPressTokenFilter وPressIndicaiton بتطبيقFilter. يمكنك استخدام Modifier.clickable أو Modifier.pointerInput مع وظيفتَي الرمز ExploreTapالإيماءات بدلاً من ذلك. (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)
  • استخدام "مدة طويلة" بدلاً من "مدة التشغيل" كنوع وقت الحركة (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 إلى حالة. تغيّر أيضًا animateElevation لتكون إضافة تعليق في Animatable. (If613c)

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

  • تم إيقاف onCommit وonDispose وonActive نهائيًا لصالح واجهات برمجة التطبيقات SideEffect وDisposableEffect API (If760e).
  • الحالة الأولية في updateTransition متاحة الآن (Ifd51d).
  • تمت إضافة مَعلمة وصف المحتوى إلى الصورة والرمز. تُستخدم لتقديم وصف لخدمات تسهيل الاستخدام (I2ac4c).
  • تم إيقافableate وCompateReference() نهائيًا لصالح currentRecomposeScope و"تذكُّر لبطاقة تحكُّم مستخدمة" على التوالي. (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) وitemIndexed(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)
  • تمت إعادة تسمية موضع الإعلان إلى DpOffset وإزالة getمسافة() (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 وما إلى ذلك إلى رموز متحركة، وإيقاف أدوات VectorCounteters القديمة (If0c4b)
  • تم تقديم مجموعة جديدة بالكامل من واجهات برمجة التطبيقات Transition API مع سهولة الاستخدام المحسّنة، والتوافق مع الصور المتحركة المضافة ديناميكيًا، وأهداف الرسوم المتحركة التي يتم احتسابها ديناميكيًا. تم وضع علامة على واجهات برمجة التطبيقات هذه باعتبارها تجريبية للتمييز بسهولة عن واجهة برمجة التطبيقات المستندة إلى TransitionDefinition. (Ia7fe3)

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

  • أصبحت ملفات Lambdas بمعدِّلات الإزاحة تعرض الآن IntOffset بدلاً من Float. (Ic9ee5، b/174137212، b/174146755)
  • إيقاف LazyColumnFor وLazyRowFor وLazyColumnForIndexed وLazyRowForIndexed. استخدام LazyColumn وLazyRow بدلاً من ذلك (I5b48c)
  • بالنسبة إلى تعليق واجهات برمجة التطبيقات لإدخال المؤشر، تمت إعادة تسميتها HandlePointerInputScope إلى AwaitPointerEventScope و handlePointerInput() إلى awaitPointerEventScope() (Idf0a1, b/175142755)
  • دالة جديدة infiniteRepeatable لإنشاء InfiniteRepeatableSpec (I668e5)
  • تمت إزالة التعليق التوضيحي TestingalPointerInput (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)
  • خيار مُضاف مؤقتًا للسماح بتشغيل TestAnimationClock من خلال 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 إلى الإزاحة. تأخذ الآن معلمات lambda بدلاً من State. (Ic3021، b/173594846)
  • واجهات برمجة تطبيقات جديدة لتشغيل الصور المتحركة في الكوروتينات (Ied662)
  • تم إيقاف "وضع الاستراحة" نهائيًا باستخدام اللاحقة Ambient، واستبدلها بسمات جديدة تبدأ بـ "وضع الاستراحة"، وذلك وفقًا لإرشادات واجهة برمجة التطبيقات الخاصة بميزة "بيئة المحيطة" و"Compose" الأخرى. (I33440)
  • أصبحت ميزة التحكّم في الوقت في الاختبارات (TestAnimationClock واستخداماتها) في مرحلة تجريبية الآن (I6ef86 وb/171378521).
  • إزالة وحدة اختبار واجهة المستخدم القديمة وأذرعها (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 على هذه عمليات التنفيذ.

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

  • تم إيقاف الأساسيات AmbientTextStyle وProvideTextStyle وAmbientContentColor. بدلاً من ذلك، استخدم الإصدارات الجديدة المتوفرة في مكتبة المواد. بالنسبة للتطبيقات غير متعددة المواد، يجب عليك بدلاً من ذلك إنشاء بيئات محددة لنظام التصميم يمكن استخدامها في مكوناتك الخاصة. (I74acc، b/172067770)
  • تم إيقاف Foundation.Text نهائيًا واستبداله بـmaterial.Text. للحصول على واجهة برمجة تطبيقات نصية أساسية غير معرَّفة لا تستهلك قيمًا من مظهر معيّن، يُرجى الانتقال إلى androidx.compose.foundation.BasicText. (If64cb)
  • تم نقل MeasurementResult من MeasurementScope. (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 على هذه عمليات التنفيذ.

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

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

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

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

    • ContentColorAmbient -> AmbientContentColor
    • TextStyleAmbient -> AmbientTextStyle
    • Indisionambient -> AmbientIndiction
    • 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 على عمليات التنفيذ هذه.

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

  • تتوفر تعليقات توضيحية لـRootAnimationClockfactor وtransitsEnabled وblinkingCursorEnabled وtextInputService يمكنها استخدام @visibleForTesting وإخفاء kdoc (I554eb وb/168308412).

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

  • تم تحديث العديد من واجهات برمجة تطبيقات الرسومات
    • تم تحديث واجهات برمجة التطبيقات لتحويل المقياس والتدوير لاستخدام معلَمة إزاحة واحدة لتمثيل الإحداثيات المحورية بدلاً من المعلَمات العائمة المنفصلة لإحداثيات س/ص في DrawScope وDrawTransform
    • تمت إزالة طريقتي Rect.expandToInclude وRect.join
    • تم تحديث وثائق النطاق الجغرافي لوصف الشكل البيضاوي بالإضافة إلى الشكل البيضاوي
    • تمت إضافة مستندات للإشارة إلى المنشئ العام لفئة نصف القطر المضمّنة أنّه لا يجب استدعاءه مباشرةً، ولكن يجب إنشاء مثيل لكائنات نصف القطر من خلال دوال إنشاء الدوال
    • تمت إزالة واجهات برمجة تطبيقات RoundRect لإنشاء طلب، topRight وbottomCenter، وما إلى ذلك.
    • تم إيقاف Rect.shift لصالح Rect.translate
    • تمت إزالة واجهتَي برمجة تطبيقات RoundRect.grow وRect.shrink
    • تمت إعادة تسمية RoundRect.outerRect إلى Rect.boundingRect.
    • تمت إزالة طريقتي RoundRect.mediumRect/tallMiddleRect/wideMiddleRect وRect.isStadium
    • تمت إعادة تسمية RoundRect.longestSide إلى RoundRect.maxDimension.
    • تمت إعادة تسمية RoundRect.shortestSide إلى RoundRect.minDimension.
    • تم تغيير RoundRect.center إلى خاصية بدلاً من دالة.
    • تم تحديث الدالة الإنشائية RoundRect لاستهلاك خصائص النطاق الجغرافي بدلاً من المعلمات الفردية لقيم نصف القطر x/y
    • تمت إزالة واجهات برمجة التطبيقات ذات الحجم التي افترضت أنّها مستطيلة مصدرها 0,0
    • تمت إضافة واجهة برمجة تطبيقات مدمرة إلى Radius
    • تم نقل دوال إضافة RoundRect متنوعة لتكون خصائص بدلاً من ذلك
    • (I8f5c7، b/168762961)
  • تم إيقاف Foundation.Box نهائيًا. يُرجى استخدام Foundation.layout.Box بدلاً من ذلك. (Ie5950، b/167680279)
  • تمت إعادة تسمية الحزمة إلى Box. وسيتم إيقاف Box الحالي نهائيًا لصالح Box الجديد في compose.foundation.layout. يتمثّل سلوك Box الجديد في تكديس العناصر الثانوية واحدًا فوق الآخر عندما يكون له عدة عناصر فرعية، وهذا يختلف عن المربع السابق، الذي كان يعمل بشكل مشابه للعمود. (I94893، b/167680279)
  • تم إيقاف معلمات تزيين الصندوق نهائيًا. إذا أردت إضافة زخارف/مساحة متروكة على العلبة، يمكنك استخدام Modifiers بدلاً من ذلك (Modifier.background, Modifier.للحدّ، أو Modifier.حشو) (Ibae92، b/167680279)
  • لقد منعنا عمليات الاستيراد الثابتة لمحتويات نطاقات التنسيق (مثل deleteWithSiblings في 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 عند إجراء الاختبارات التي تحتاج إلى يدويإطار ساعة، 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 على هذه العمليات.

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

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

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

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

  • PxBounds متوقفة لصالح Rect. تم تحديث جميع استخدامات PxBounds مع المستطيل وإضافة إيقاف/استبدال مناسب بتعليقات توضيحية للمساعدة في الترحيل. (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 بشكل صريح من أجل transferDefinition. (I1aded)
  • حزمة Foundation.shape.corner مسطّحة إلى مؤسسة enterprise.share (I46491، وb/161887429)
  • تم إيقاف Modifier.plus نهائيًا، لذا يُرجى استخدام Modifier.ثم بدلاً من ذلك. تحتوي كلمة "ثم" على إشارة أقوى للطلب، بينما تمنع أيضًا كتابة 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)
  • تمت إضافة مَعلمة المعدَّلة لـ Crossfade (I87cfe، وb/159706180).
  • استخدم AnimationSpec بدلاً من AnimationBuilder في واجهات برمجة التطبيقات ذات المستوى الأعلى لتوضيح مفهوم مواصفات الرسوم المتحركة الثابتة
    • يمكنك تحسين انتقال DSL عن طريق إزالة متطلب lambda لإنشاء AnimationSpecs، مثل tween وspring. وبدلاً من ذلك تأخذ معلمات الإنشاء مباشرةً.
    • تحسين سهولة استخدام AnimationSpec بشكل عام لإتاحة أدوات الإنشاء بدلاً من الاعتماد على أدوات الإنشاء
    • غيِّر مدة ومهلة KeyFrames وTween إلى Int. يساهم ذلك في إزالة عمليات تحويل النوع غير الضرورية وتحميل الطرق بشكل زائد (لإتاحة كل من Long وInt). (Ica0b4)
  • تم استبدال استخدام IntPx بـ IntPxPosition. وتم استبدال IntPxPosition بـ IntOffset. تم استبدال IntPxSize بـ IntSize. (Ib7b44)
  • من أجل دمج عدد الفئات المستخدمة لتمثيل معلومات المقاسات، يمكنك توحيد استخدام فئة المقاس بدلاً من PxSize. يوفر هذا مزايا الفئة المضمنة للاستفادة من القيمة الطويلة لحزم قيمتين عائمتين لتمثيل العرض والارتفاع الممثلين كأعداد عشرية. (Ic0191)
  • من أجل دمج عدد الفئات المستخدمة لتمثيل معلومات تحديد المكان، يجب توحيد استخدام فئة الإزاحة بدلاً من PxPosition. يوفر هذا فوائد الفئة المضمنة للاستفادة من القيم الطويلة لعدد 2 قيم عائمة لتمثيل إزاحة س و ص الممثلة كأعداد عشرية. (I3ad98)
  • تم استبدال الاستخدام لفئة Px في فئات إنشاء مختلفة كجزء من جهود إعادة البناء الكبيرة للاعتماد فقط على أنواع Dp والأنواع الأساسية لمعلمات البكسل (I086f4)
  • تمت إضافة دعم animate() لـ Dp وPx وSize وPosition وBounds وPxPosition وPxSize وPxBounds وIntPx وIntPxSize وIntPxPosition وIntPxBounds وAnimationVector (Ib7518).
  • تقبل ميزة Crossfade الآن مَعلمة AnimationBuilder الاختيارية للسماح بتهيئة الصورة المتحركة (I6d6e0)
  • تم استبدال جميع استخدامات الألوان القابلة للقيم الفارغة في واجهة برمجة التطبيقات بغير قابلة للقيم الفارغة واستخدام Color.Unset بدلاً من null (Iamaa7)
  • تمت إزالة فئة ValueHolder. تمت إعادة هيكلة فئات GIF وAnimationFloat لجعل حقل قيمة الرسوم المتحركة مجردًا بحيث يمكن للفئات الفرعية مشاهدة تحديث القيمة.
    • تمت إضافة فئات نماذج لـ ArtValue وFloat وغيرها.
    • تمت إضافة مجموعة جديدة من واجهة برمجة التطبيقات @Composable خفيفة الوزن للتحريك بين القيم. (I79530)
  • تغييرات قد تؤدي إلى تغيُّر واجهة برمجة تطبيقات البيئة المحيطة يمكنك الاطّلاع على مستندات "Ambient<T>" والسجلّ للحصول على التفاصيل (I4c7ee، وb/143769776).
  • وضع التكرار الجديد: عكس يعكس هذا الوضع التكرار السابق حيث يتم تكرار الرسم المتحرك في RepeatableSpec أو VectorizedRepeatableSpec. (Ibe0f5)
  • إضافات واجهة برمجة التطبيقات إلى ElectronicAnimationClock: hasObservers: Boolean ومَعلمة أداة الإنشاء dispatchOnSubscribe: Boolean (Iaa134)
  • تمت إضافة واجهات برمجة تطبيقات للحصول على الحدود الدنيا/الأقصى في ArtFloat (Icd9cc)

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

  • تمت إعادة تسمية runOnIdleCompose إلى runOnIdle (I83607).
  • تمت إعادة تسمية العديد من واجهات برمجة تطبيقات الاختبار لتصبح أكثر سهولة. وتمت إعادة تسمية جميع واجهات findXYZ API إلى onNodeXYZ. تمت إعادة تسمية جميع واجهات برمجة التطبيقات doXYZ إلى performXYZ. (I7f164)
  • تم تقديم واجهات برمجة تطبيقات ذات مستوى منخفض للصور المتحركة بدون حالة. واجهات برمجة التطبيقات هذه (I63bf7)
  • لم يعد العنصر "إعادة التركيب" تجريدًا مفيدًا. يُفترض أن تحدث معظم عمليات إعادة التركيب نتيجة تعيينات MutableState. لإجراء ذلك، ننصحك باستخدام الدالة invalidate لإعادة تركيب النطاق الحالي. (Ifc992)
  • تم استبدال الاستخدام لفئة Px في فئات إنشاء مختلفة كجزء من جهود إعادة البناء الكبيرة للاعتماد فقط على أنواع Dp والأنواع الأساسية لمعلمات البكسل. تم حذف فئة Px بالكامل (I3ff33)
  • استبدال استخدام فئة Px في فئات إنشاء مختلفة كجزء من جهود إعادة البناء الكبيرة للاعتماد فقط على أنواع Dp والأنواع الأساسية لمعلمات البكسل (Id3434)
  • يمكن أن يعمل التلاشي المتقاطع الآن باستخدام قيمة أولية (Iad6a4 وb/155947711)
  • استبدال استخدام فئة Px في فئات إنشاء مختلفة كجزء من جهود إعادة البناء الكبيرة للاعتماد فقط على أنواع Dp والأنواع الأساسية لمعلمات البكسل (I19d02)
  • عمليات تنفيذ CanvasScope موحّدة، لذلك لا يتوفر الآن سوى DrawScope وContentDrawScope تمت إعادة تسمية CanvasScope إلى DrawScope. تم تحديث DrawScope لتنفيذ واجهة الكثافة وتوفير الفئة الفرعية LayoutDirection الفرعية لـ DrawScope المحذوفة في ContentDrawScope. تم تحديث تطبيق Painter وPainterModifier لعدم الإبقاء على خاصيّة RTL بنفسهما، لأنّ DrawScope يوفّر ذلك بالفعل بدون تقديمه يدويًا (I1798e)
  • تم تحديث واجهات برمجة التطبيقات التي يتم إنشاؤها على مستوى أعلى والتي تعرض لوحة رسم لعرض CanvasScope بدلاً من ذلك. يلغي ذلك حاجة المستهلكين إلى صيانة كائنات الطلاء الخاصة بهم. بالنسبة إلى المستهلكين الذين ما زالوا يطلبون الوصول إلى لوحة رسم، يمكنهم استخدام طريقة الإضافة drawCanvas التي توفر استدعاء لإصدار أوامر الرسم باستخدام "لوحة الرسم" الأساسية. (I80afd)
  • تمت إضافة معلمتَي الجاذبية الرأسية والجاذبية الأفقية إلى الصف والعمود، على التوالي. (I7dc5a)
  • تمت إعادة تسمية وحدة ui-text باسم ui-text-core (I57dec).
  • تحسين واجهة برمجة تطبيقات DrawModifier:
    • تم إنشاء نطاق المُستلِم لـ draw() ContentDrawScope
    • تمت إزالة جميع المعلمات على draw()
    • واجهة DrawScope هي نفس واجهة تطبيق CanvasScope السابق
    • يحتوي ContentDrawScope على طريقة drawContent() (Ibaced، b/152919067)
  • تُعد runOnIdleCompose وrunOnUiThread دوال عمومية الآن بدلاً من طرق في ComposeTestRule. (Icbe8f)
  • [Mutable]تم نقل عوامل تشغيل تفويض المواقع على مستوى الولاية إلى الإضافات لإتاحة تحسينات تفويض المواقع على Kotlin 1.4. وعلى المتّصلين إضافة عمليات استيراد لمواصلة استخدام by state { ... } أو by mutableStateOf(...). (I5312c)
  • تم إيقاف ColoredRect نهائيًا. يمكنك استخدام Box(Modifier.preferredSize(width, height).drawBackground(color)) كبديل. (I499fa، b/152753731)
  • تم استبدال أداة التعديل بالإضافة إلى عامل التشغيل بوظائف إضافة على الإعدادات الأصلية (I225e4).
  • عنصر قابل للإنشاء من خلال المركز المتوقف. يجب استبداله إما بالمُعدّل LayoutSize.Fill + LayoutAlign.Center، أو بأحد عناصر المربع أو الحزمة القابلة للإنشاء مع تطبيق التعديلات المناسبة (Idf5e0).
  • تمت إعادة تسمية Layoutflex إلى Layoutweight. تمت إعادة تسمية معلَمة ضيقة للتعبئة. (If4738)
  • تم استبدال دالة التعتيم القابلة للإنشاء بمعدِّل drawOpacity. (I5fb62)
  • توفّر الاختبارات التي تستخدم AndroidComposeTestRule الآن ساعة متحرّكة في جذر المقطوعة الموسيقية تتيح إيقافها مؤقتًا واستئنافها وتحسينها يدويًا. (Id54c5)
  • إتاحة الاتجاه من اليمين إلى اليسار في أداة التعديل LayoutPadding (I9e8da)
  • تم دمج الكثافة ونطاق الكثافة في واجهة واحدة. يمكنك الآن استخدام الدالة Densityambient.current بدلاً منبينDensity() . بدلاً من withDensity(density) only 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.disposeAccounts نهائيًا. يمكنك بدلاً من ذلك استخدام طريقة dispose على Composition التي يعرضها setContent. وقد تم نقل androidx.compose.Compose.subcomposeInto إلى androidx.ui.core.subcomposeInto إلى ComponentNode#emitInsertAt. تمت إعادة تسمية ComponentNode#emitInsertAt إلى ComponentNode#insertAt ComponentNode#emitRemoveAt قد تمت إعادة تسميته إلى ComponentNode#emitRemoveAt تمت إعادة تسمية Node#emitMode.