الصور المتحركة في Compose
androidx.compose.animation
androidx.compose.animation.core
androidx.compose.animation.graphics
(الاطّلاع على مستندات مرجع واجهة برمجة التطبيقات لجميع حِزم Compose)
| آخر الأخبار | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأولي |
|---|---|---|---|---|
| 17 يونيو 2026 | 1.11.3 | - | 1.12.0-beta01 | - |
البنية
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"، وهي التطور التالي للتصميم المتعدد الأبعاد. يتضمّن الإصدار 3 من Material تصميمات ومكوّنات محدّثة وميزات تخصيص 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.11.3" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.animation:animation:1.11.3") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.5.15" } kotlinOptions { jvmTarget = "1.8" } }
لمزيد من المعلومات حول الاعتماديات، يُرجى الاطّلاع على إضافة اعتماديات الإصدار.
الملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.
يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.
الإصدار 1.12
الإصدار 1.12.0-beta01
17 يونيو 2026
تم طرح androidx.compose.animation:animation-*:1.12.0-beta01. يتضمّن الإصدار 1.12.0-beta01 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة المَعلمة
permitTransformDuringDeferredTransitionإلىSharedContentConfigللتحكّم في ما إذا كان يجب أن تتحوّل العناصر المشترَكة بصريًا مع الحاوية الرئيسية خلال المرحلة المؤجّلة منDeferredTransition. (I4b67b) - تمت إعادة تصميم عملية الانتقال إلى فئة محكمة الإغلاق وتحسين
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 أو إصدار أحدث من "مكوّن Android الإضافي" عند استخدام Compose. (Id45cd، b/413674743) - إنهاء الحركة
SeekableTransitionStateقبل الإنشاء (1bf9dc، b/410055849)
الإصدار 1.11
الإصدار 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، مع التركيز على ثبات العناصر المشترَكة وموثوقية سلاسل المحادثات وأدوات المطوّرين الجديدة.
الميزات الجديدة
- تصحيح الأخطاء المرئية في ميزة Lookahead: قدّمنا مجموعة جديدة من إمكانات تصحيح الأخطاء المرئية التي تتيح عرض المعلومات المرئية ذات الصلة بالعناصر المشترَكة و
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 هذه التعديلات.
الميزات الجديدة
- واجهة برمجة تطبيقات جديدة تتيح تفعيل العناصر المشترَكة وإيقافها ديناميكيًا، كما تتيح احتساب ما إذا كان هناك انتقال حالي لعنصر مشترَك.
- واجهة برمجة تطبيقات جديدة لإعداد حدود هدف بديل عند التخلص من العنصر المشترَك المستهدَف أثناء الانتقال
- واجهة برمجة تطبيقات جديدة للحصول على
LayoutCoordinatesLookaheadScope(I18dd4، b/409819304، b/395670637) - المعدِّل الجديد
Modifier.skipToLookaheadPositionفيSharedTransitionScopeلتثبيت تصميم في الموضع المستهدف أثناء الانتقال المشترك (I88734)
تغييرات واجهة برمجة التطبيقات
- تم تبسيط
renderInSharedTransitionOverlayمن خلال إزالة تعبيرclipInOverlayDuringTransitionlambda لأنّه نادرًا ما يتم استخدامه. تم تقديم طريقة المصنع الجديدة لـSharedContentConfig. (Id01b2) - تمت إضافة مجموعة من الإعدادات التلقائية لعناصر مشتركة وحدود مشتركة وإعدادات
renderInSharedTransitionOverlay. يمكن الآن الوصول إلى هذه الإعدادات التلقائية من خلال واجهات برمجة التطبيقات العامة. (Id23cc) - تمت إعادة تسمية
ScaleToBoundsResizeMode إلىscaleToBounds(I5ac50)
إصلاح الأخطاء
- تغيير الحد الأدنى التلقائي لإصدار Android من المستوى 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 يوليو 2022
تم طرح 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.2.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) - تمت إضافة
LocalResourcescomposition 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)
- تفعيل ميزة "البحث الاستباقي" في
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)- يستبدل
SeekableTransitionStatesnapTo()بـ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 هذه التعديلات.
إصلاح الأخطاء
- يمكن الآن قراءة السمة Transition
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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- يستبدل
SeekableTransitionStatesnapTo()بـ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 هذه التعديلات.
إصلاح الأخطاء
- إصلاح مشكلة التوافق مع
KeyframesSpec(I2bdf3، b/322214617)
الإصدار 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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- نوع جديد من انتقالات الدخول/الخروج التي توسّع المحتوى أو تقلّصه استنادًا إلى حجم الحاوية المتحركة أثناء صورة الدخول/الخروج المتحركة أصبحت الآن واجهة
LookaheadScopeComposable المرحة والثابتة متاحة. (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()إلى أنواعها المتخصّصة المقابلة للعناصر الأساسية. رقم تعريف أداة Lint هو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) - أعِد تسمية الدالة infix fun باستخدام
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
- تتوفّر تسمية الأدوات في r
ememberInfiniteTransitionوجميع دوال الإضافة في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)
تحديثات الاعتماديات
- يعتمد الآن على Kotlin
1.6.10.
الإصدار 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 بشأن حجم مساحة اللمس. على سبيل المثال، سيتم توسيع مساحة اللمس الخاصة بالزر إلى حدّ أدنى يبلغ 48x48 بكسل مستقل الكثافة، حتى إذا ضبطت حجم الزر على قيمة أصغر. يتوافق ذلك مع سلوك "مكوّنات التصميم المتعدد الأبعاد"، ما يوفّر سلوكًا متسقًا في حال استخدام كلّ من 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ليعتمد على إصدار Kotlin1.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)
إصلاح الأخطاء
- تم نقل
InfiniteAnimationPolicyإلى :compose:ui (I5eb09، b/160602714)
الإصدار 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 هذه التعديلات.
تحديثات الاعتماديات
- تم تعديلها لتعتمد على Kotlin
1.5.31
الإصدار 1.0.3
29 سبتمبر 2021
تم طرح androidx.compose.animation:animation:1.0.3 وandroidx.compose.animation:animation-core:1.0.3. يتضمّن الإصدار 1.0.3 هذه التعديلات.
تحديثات الاعتماديات
- تم تعديلها لتعتمد على Kotlin
1.5.30
الإصدار 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 الرسمية لمزيد من التفاصيل.
المشاكل المعروفة
إذا كنت تستخدم الإصدار 4 من استوديو Android Bumblebee Canary أو الإصدار
7.1.0-alpha04/7.1.0-alpha05من "المكوّن الإضافي لنظام Gradle المتوافق مع Android"، قد تواجه التعطّل التالي:java.lang.AbstractMethodError: abstract method "void androidx.lifecycle.DefaultLifecycleObserver.onCreate(androidx.lifecycle.LifecycleOwner)"لحلّ هذه المشكلة، عليك زيادة minSdkVersion مؤقتًا إلى 24 أو أكثر في ملف
build.gradle. سيتم حلّ هذه المشكلة في الإصدار التالي من استوديو Android Bumblebee و7.1من "مكوّن Android الإضافي لنظام Gradle". (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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
AnimatedContentComposable جديد وتدير تغيير المحتوى باستخدام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 هذه التعديلات.
هذا هو الإصدار الأول من Compose 1.0.0 Beta.
تغييرات واجهة برمجة التطبيقات
- تم استبدال "
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 بدلاً من تعبير lambda بسيط. يمكنك إنشاء حالة من خلال
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الآن استخدام مفاتيح التذكير للإشارة إلى الوقت الذي يجب فيه إعادة تشغيل روتين تحديد إدخال المؤشر المشترك من أجل التبعيات الجديدة. (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 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم تعديل Velocity لتضمين أجزاء مكوّنة وعمليات رياضية. (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)
- تمت إزالة
- تمت إضافة خيار مؤقت للسماح بتشغيل 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 إلى 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 هذه التعديلات.
إصلاح الأخطاء
- تم إيقاف 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 القديم نهائيًا واستخدام Box الجديد في compose.foundation.layout. سيكون سلوك المربّع الجديد هو ترتيب العناصر الفرعية فوق بعضها البعض عندما يحتوي على عناصر فرعية متعددة، وهذا يختلف عن المربّع السابق الذي كان يتصرف بشكل مشابه للعمود. (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") } }
إصلاح الأخطاء
تم إيقاف 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لسد الفجوة بين الساعات الجديدة المستندة إلى الروتينات المشتركة وواجهات برمجة التطبيقات التي لا تزال تستخدم الساعات القديمة المستندة إلى عمليات معاودة الاتصال.أصبح سعر
ManualAnimationClockبالعملةMonotonicFrameClockهو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 بدلاً من ذلك. توفّر الكلمة الأساسية "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)
- تمت إضافة مَعلمة المعدِّل إلى Crossfade (I87cfe، b/159706180)
- استخدِم AnimationSpec بدلاً من AnimationBuilder في واجهات برمجة التطبيقات ذات المستوى الأعلى
لتوضيح مفهوم مواصفات الحركة الثابتة
- تحسين لغة DSL الخاصة بالانتقال من خلال إزالة شرط استخدام تعبير lambda لإنشاء AnimationSpec، مثل tween وspring بدلاً من ذلك، تأخذ هذه الدوال مَعلمات الدالة الإنشائية مباشرةً.
- تحسين سهولة الاستخدام العامة لـ AnimationSpec من خلال توفير أدوات إنشاء بدلاً من الاعتماد على أدوات الإنشاء
- تغيير المدة والتأخير لكل من KeyFrames وTween إلى Int. يؤدي ذلك إلى إلغاء عمليات تحويل الأنواع غير الضرورية وتجاوز تحميل الطريقة (لدعم كل من Long وInt). (Ica0b4)
- تم استبدال استخدام IntPx بـ Int، واستبدال IntPxPosition بـ IntOffset. تم استبدال IntPxSize بـ IntSize. (Ib7b44)
- من أجل دمج عدد الفئات المستخدَمة لتمثيل معلومات الحجم، يجب توحيد استخدام فئة Size بدلاً من PxSize. يوفّر ذلك مزايا فئة مضمّنة للاستفادة من قيمة طويلة لتعبئة قيمتَين عائمتَين لتمثيل العرض والارتفاع كقيم عائمة. (Ic0191)
- من أجل توحيد عدد الفئات المستخدَمة لتمثيل معلومات تحديد المواقع، يجب توحيد استخدام فئة Offset بدلاً من PxPosition. ويوفّر ذلك مزايا فئة مضمّنة للاستفادة من قيمة طويلة لتعبئة قيمتَين عائمتَين لتمثيل الإزاحتَين x وy الممثّلتَين كقيم عائمة. (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. راجِع مستندات السجلّ و
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)
- يمكن الآن استخدام Crossfade مع قيمة فارغة كقيمة أولية (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) - تم نقل عوامل تشغيل تفويض السمة State [Mutable]إلى الإضافات
لإتاحة تحسينات تفويض السمة في Kotlin 1.4. على المتصلين إضافة عمليات استيراد لمواصلة استخدام
by state { ... }أوby mutableStateOf(...). (I5312c) - تم إيقاف ColoredRect نهائيًا. يمكن استخدام
Box(Modifier.preferredSize(width, height).drawBackground(color))كبديل. (I499fa، b/152753731) - استبدال المعدِّل وعلامة الجمع بدوال إضافية للمصنع (I225e4)
- تم إيقاف دالة Center البرمجية القابلة للإنشاء. يجب استبداله إما بالمعدِّل 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)