Wear Compose
| آخر الأخبار | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار الأولي |
|---|---|---|---|---|
| 25 مارس 2026 | 1.6.0 | - | - | - |
تحديد الاعتماديات
لإضافة اعتمادية على Wear، يجب تضمين مستودع Google Maven في مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف الاعتماديات الخاصة بالعناصر التي تحتاج إليها في ملف build.gradle لتطبيقك أو وحدتك:
Groovy
dependencies { implementation "androidx.wear.compose:compose-foundation:1.6.0" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.6.0" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.6.0" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.6.0") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
Kotlin
dependencies { implementation("androidx.wear.compose:compose-foundation:1.6.0") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.6.0") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.6.0") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.6.0") // NOTE: DO NOT INCLUDE a dependency on androidx.compose.material:material. // androidx.wear.compose:compose-material is designed as a replacement // not an addition to androidx.compose.material:material. // If there are features from that you feel are missing from // androidx.wear.compose:compose-material please raise a bug to let us know. }
لمزيد من المعلومات حول الاعتماديات، يُرجى الاطّلاع على إضافة اعتماديات الإصدار.
الملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية من خلال النقر على زر النجمة.
يُرجى الاطّلاع على مستندات Issue Tracker للحصول على مزيد من المعلومات.
الإصدار 1.6 من Wear Compose
الإصدار 1.6.0
25 مارس 2026
تم طرح androidx.wear.compose:compose-*:1.6.0. يتضمّن الإصدار 1.6.0 هذه التعديلات.
التغييرات المهمة منذ الإصدار 1.5.0:
- تم طرح مكتبة Wear Compose Navigation3 التي تتكامل مع مكوّنَي
NavDisplayوSceneStrategyفي مكتبة Navigation 3، ما يضيف منطق التمرير السريع للإغلاق الخاص بأجهزة Wear باستخدامSwipeDismissableSceneStrategyالجديد. - تمت إضافة إمكانية استخدام
TransformingLazyColumnمعreverseLayout، والتقاط الصور باستخدامTransformingLazyColumnDefaults.snapFlingBehaviorوModifier.minimumVerticalContentPadding، ما يتيح تحديد مساحة متروكة مفضّلة للمحتوى للعناصر في القائمة عندما تكون في الحواف العلوية أو السفلية. - تمت إضافة عمليات تحميل زائدة جديدة للرمز
AlertDialogتستخدمTransformingLazyColumnللحفاظ على الاتساق مع التمرير في شاشات Material3 الأخرى. - تم تحسين عرض النص المنحني، لا سيما بالنسبة إلى خطوط الكتابة اليدوية، من خلال إتاحة تشويه النص باستخدام المَعلمة الجديدة
CurvedTextStylewarpOffset، والتي يتم تفعيلها تلقائيًا في الإصدار 34 من واجهة برمجة التطبيقات والإصدارات الأحدث. - تمت إضافة
LocalAmbientModeManager، وهيCompositionLocalجديدة تتيح تحديد واجهة مستخدم وسلوك مختلفَين للوضعَين التفاعلي والمحيطي. - للحصول على قائمة أكثر اكتمالاً بالميزات التي تم طرحها في الإصدار 1.6.0، يُرجى الاطّلاع على ملاحظات الإصدار beta01.
الإصدار 1.6.0-rc01
11 مارس 2026
تم طرح androidx.wear.compose:compose-*:1.6.0-rc01. يتضمّن الإصدار 1.6.0-rc01 هذه التعديلات.
- يعدّل هذا الإصدار نسخة Compose for Wear OS 1.6.0 إلى إصدار محتمل، ولكن لا توجد أي تغييرات مهمة أخرى مقارنةً بالإصدار 1.6.0-beta01.
الإصدار 1.6.0-beta01
25 فبراير 2026
تم طرح androidx.wear.compose:compose-*:1.6.0-beta01. يتضمّن الإصدار 1.6.0-beta01 هذه التعديلات.
يشير الإصدار 1.6.0-beta01 من Compose for Wear OS إلى أنّ هذا الإصدار من المكتبة يتضمّن جميع الميزات وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء ما تمّت الإشارة إليه على أنّه تجريبي). يتضمّن الإصدار 1.6.0-beta01 من Wear Compose الوظائف الجديدة التالية:
- مكتبة Wear Compose Navigation3، التي تتكامل مع مكوّنَي
NavDisplayوSceneStrategyفي مكتبة Navigation 3، وتضيف منطق التمرير السريع للإغلاق الخاص بأجهزة Wear باستخدامSwipeDismissableSceneStrategyالجديد. - تمت إضافة إمكانية استخدام
TransformingLazyColumnمعreverseLayout، والتقاط الصور باستخدامTransformingLazyColumnDefaults.snapFlingBehaviorوModifier.minimumVerticalContentPadding، ما يتيح تحديد مساحة متروكة مفضّلة للمحتوى للعناصر في القائمة عندما تكون في الحواف العلوية أو السفلية. - تمت إضافة عمليات تحميل زائدة جديدة للرمز
AlertDialogتستخدمTransformingLazyColumnللحفاظ على الاتساق مع التمرير في شاشات Material3 الأخرى. - تم تحسين عرض النص المنحني، لا سيما بالنسبة إلى خطوط الكتابة اليدوية، من خلال إتاحة تشويه النص باستخدام المَعلمة الجديدة
CurvedTextStylewarpOffset، والتي يتم تفعيلها تلقائيًا في الإصدار 34 من واجهة برمجة التطبيقات والإصدارات الأحدث. - تمت إضافة
LocalAmbientModeManager، وهوCompositionLocalجديد يتيح تحديد واجهة مستخدم وسلوك مختلفَين للوضعَين التفاعلي والمحيطي. - تم تعديل
TimePickerليتوافق مع النوع الجديدMinutesSecondsوليتضمّن المَعلمة الجديدةinitialSelectionلتحديد مكوّن الوقت المحدّد في البداية. - عمليات تحميل زائد جديدة على البطاقات لتوفير صيغ غير قابلة للنقر حيث تكون البطاقات عرضية فقط ولا يُقصد منها الاستجابة لنقرات المستخدمين
- تمت إضافة
LocalRippleConfigurationللتحكّم في مظهر التموج. - تمّت إضافة المَعلمة
snapSensitivityإلىRotaryScrollableDefaults.snapBehaviorوPagerScaffoldDefaults، وهي تتضمّن الآن القيم التلقائية المقترَحة لكلّ منSnapPositionalThresholdوHighSnapPositionalThresholdلاستخدامها معPagerDefaults.snapFlingBehavior.
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية القيم التلقائية المقترَحة لـ
Modifier.minimumVerticalContentPaddingمنminimumListVerticalContentPaddingإلىminimumVerticalListContentPaddingللتأكيد على أنّ مساحة العرض هذه تشير إلى القائمة، وتم تعديل المستندات ذات الصلة. (I496ca، b/426154225) - يتم الآن تشويه النص المنحني تلقائيًا، ما يؤدي إلى تحسين عرض النص المنحني، خاصةً للخطوط المائلة. (I6979d، b/450526792، b/481617443)
إصلاح الأخطاء
- إصلاح التفاعل بين بطاقتَي TLC
animateItemوminimumVerticalContentPadding(Ia865c، b/483663045) - إنّ الإزاحة المشوّهة للنص المنحني مفعّلة تلقائيًا الآن فقط في الإصدار 34 من واجهة برمجة التطبيقات والإصدارات الأحدث، وذلك بسبب الاعتماد على
PathIteratorمن مكتبةandroidx.graphics.pathغير المتاحة لاختبار المطوّرين باستخدام Robolectric قبل الإصدار 34 من واجهة برمجة التطبيقات (ما يؤدي إلى تعطيل اختبارات المطوّرين الحالية). (Ie5bae، b/484319336) - تحسين متانة النص المنحني المشوّه (If2b34، b/483390353)
- تم تعديل
ConfirmationDialogDefaults.SuccessIconلتجاهل اتجاه التنسيق من اليمين إلى اليسار كي لا يتم عكس علامة الاختيار. (Ic6add، b/481966029)
الإصدار 1.6.0-alpha10
11 فبراير 2026
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha10. يتضمّن الإصدار 1.6.0-alpha10 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية
Modifier.responsiveVerticalPaddingإلىModifier.minimumVerticalContentPadding، مع استخدام مَعلمات الحشو كوحدات Dp بدلاً من واجهةResponsiveVerticalPadding. تم نقل الإعدادات التلقائية المقترَحة منResponsiveVerticalPaddingDefaultsإلى عناصر الإعدادات التلقائية الخاصة بالمكوّنات، مثلButtonDefaultsوCardDefaultsوما إلى ذلك (Icaab2، b/426154225) - تمت إضافة
WearComposeFoundationFlags.isTransformingLazyColumnClickableThresholdEnabledللتحكّم في الوظائف الجديدة التي تم طرحها فيTransformingLazyColumn، والتي تتجاهل الآن النقرات التي تتجاوز حد 20dp في أعلى وأسفل التصميم، وذلك لمنع النقرات غير المقصودة عندما يكون العنصر مرئيًا جزئيًا فقط. تم أيضًا تعديل التغيير ليتم اعتراض النقرات على العناصر الطرفية فقط في الأحداث التي تقع ضمن مساحة التفاعل، وذلك لتجنُّب تجاهل إيماءات السحب. (I1ba28، b/480910891) - يستخدم
rememberAmbientModeManagerالآنLocalActivityفي عملية التنفيذ للحصول على النشاط الحالي، بدلاً من استخدام النشاط كمَعلمة (Idf114، b/473603258). - تم تغيير
AmbientModeليكون غير شامل من أجل إمكانية التوسيع (I92cc3، b/473603258) - تم تعديل
rememberSwipeDismissableSceneStrategyStateلإزالة المَعلمةswipeToDismissBoxState، لأنّها تفصيل تنفيذي حتى المستوى 35 من واجهة برمجة التطبيقات فقط (I5907c، b/476105162) - [TLC] تمت إضافة
Modifier.responsiveVerticalPaddingإلىTransformingLazyColumn، ما يتيح إجراء تعديلات تلقائية على المساحة المتروكة للمحتوى بما يتوافق مع إرشادات تصميم Material 3 في Wear OS. (Ia7e73، b/426154225)
إصلاح الأخطاء
- تم تعديل شرط الجلب المسبق
TransformingLazyColumnليتم احتساب الأولوية استنادًا إلى حواف إطار العرض بدون مساحة متروكة (I48d85، b/476420552) - تتيح
Pickerالآن الشفافية السلسة على الخلفيات المخصّصة، مثل التدرجات أو الصور، وذلك من خلال تمريرColor.UnspecifiedكـgradientColorفي أداة اختيار الألوان. بالنسبة إلىTimePickerوDatePicker، يمكن تحقيق هذا التأثير من خلال إلغاءMaterialTheme.colorScheme.backgroundمحليًا وتعيين القيمةColor.Unspecified. (Icc476، b/458429791، b/458429791) - تمّ تقديم حدّ أدنى للنقر يبلغ 20dp على عناصر
TransformingLazyColumnفي أعلى الشاشة وأسفلها، وذلك لمنع النقرات غير المقصودة عندما تكون العناصر مخفية إلى حدّ كبير. (I2c9cb، b/443285887) - تم تحسين طريقة التعامل مع ميزة "الحدّ من الحركة" في
OpenOnPhoneDialog. (Ib1d12، b/48558283)
الإصدار 1.6.0-alpha09
28 يناير 2026
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha09. يتضمّن الإصدار 1.6.0-alpha09 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إعادة تسمية
PagerScaffoldDefaults.SnapPositionalThresholdإلىLowSnapPositionalThresholdوRotaryScrollableDefaults.SnapSensitivityإلىLowSnapSensitivity(I157ee، b/449949891) - تمت إزالة المعدِّل من
SwipeDismissableSceneStrategy. (Iff30f، b/449949891)
إصلاح الأخطاء
- إصلاح تأخّر الرسوم المتحركة عند التمرير الزائد على الشاشة الدوّارة في سلوك المحاذاة (I7db89، b/474016470)
- إصلاح مشكلة حظر
SwipeDismissableSceneStrategyالرجوع إلى الخلف في النظام على الإصدار 36 من واجهة برمجة التطبيقات أو الإصدارات الأحدث (Icf20b، b/476105162) - إصلاح مشكلة عدم ظهور تأثيرات
SwitchButtonبشكل صحيح عند تغيير حجم الشكل أو تلاشيه (I7a7eb، b/378644361) - تحسين الصورة المتحركة الخاصة بعرض رمز علامة الاختيار
CheckboxButton(I89944، b/378646769)
الإصدار 1.6.0-alpha08
14 يناير 2026
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha08. يتضمّن الإصدار 1.6.0-alpha08 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم تعديل
RotaryScrollableDefaults.snapBehaviorلتلقّي المَعلمةsnapSensitivityمن النوع float، وأصبحتPagerScaffoldDefaultsتعرض الآن القيم التلقائية المقترَحةSnapPositionalThresholdوHighSnapPositionalThresholdلاستخدامها معPagerDefaults.snapFlingBehavior. (I7e11c، b/449949891) - تمت إضافة إمكانية محاذاة
TransformingLazyColumnلكل من الإدخال باللمس وإدخال البيانات عبر وحدة تحكم دورانية. عند ضبط ميزة "المحاذاة"، يُنصح بتوفير كل منflingBehaviorباستخدامTransformingLazyColumnDefaults.snapFlingBehaviorوrotaryScrollableBehaviorباستخدامRotaryScrollableDefaults.snapBehaviorللحصول على تجربة متّسقة. (I5326f، b/422455104) - تمت إضافة
LocalAmbientModeManager، وهو عنصر جديد قابل للإنشاء لتحديد واجهات مستخدم وسلوكيات مختلفة بسهولة في الوضعين التفاعلي والمحيط. (I00161، b/427724331)
إصلاح الأخطاء
- تم إصلاح مشكلة عدم ارتداد القوائم التي تتضمّن سلوك التدوير السريع بعد التمرير السريع. (I05216، b/470317969)
- تم إصلاح مشكلة تأثير التموّج في زرَي الزيادة والإنقاص في شريط التمرير Material3. يمتد التأثير الآن بشكل صحيح على كامل عرض مكوّن شريط التمرير. (I8c0c4، b/378658409)
الإصدار 1.6.0-alpha07
17 ديسمبر 2025
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha07. يتضمّن الإصدار 1.6.0-alpha07 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة عنصر مكتبة
wear-compose:compose-navigation3(I01b5c، b/427463127) - تمت إضافة
SwipeDismissableSceneStrategyلدمج Wear معNavigation3. يمكن استخدامه معNavDisplayلعرض محتوى Wear Compose. (I7aa08، b/427463127) - نقدّم لك
ResponsiveTransformingLazyColumn، وهو مكوّن جديد من Material3 يستند إلىTransformingLazyColumnمن أساسيات Wear Compose، ويحتسب تلقائيًا مساحة الحشو العمودية المتجاوبة ويطبّقها استنادًا إلى نوع محتوى القائمة. (I102f4، b/426154225)
إصلاح الأخطاء
- تم إصلاح مشكلة عدم إعادة رسم
PageIndicatorبشكلٍ صحيح عند تغيير فهرس الصفحة الحالية ضمنPagerState(على سبيل المثال، من خلال استدعاءscrollToPage()أو استخدامanimateScrollToPage()مع تقليل الحركة). (I97150، b/465669950) - حلّ مشكلة دلالات
TransformingLazyColumnفي عملية احتسابscrollOffset(Idec30، b/417941554) - إضافة مساحة متروكة لإجراء التراجع عن التصحيح
SwipeToReveal(I770f8، b/382259843) - تم تنفيذ
PredictiveBackSceneللتعامل معNavigation3في الإصدار 36 من واجهة برمجة التطبيقات والإصدارات الأحدث. (Idedf6، b/427463127)
الإصدار 1.6.0-alpha06
3 ديسمبر 2025
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha06. يتضمّن الإصدار 1.6.0-alpha06 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة
LocalRippleConfigurationلتوفير إمكانية التحكّم في مظهر التموج (I9e0fa، b/382336566) - تمت إضافة عمليات تحميل زائدة جديدة للرمز
AlertDialogتستخدمTransformingLazyColumnلتوفير تحكّم متقدّم في الرسوم المتحركة الخاصة بتمرير العناصر. تمت إضافة تحسينات على التنسيق للشاشات الأكبر حجمًا. (I862ff، b/438468382) - تمت إضافة مَعلمة التحويل إلى
ButtonGroup، لاستخدامها مع الحاويات المتغيرة ديناميكيًا، مثلTransformingLazyColumn. (I8743b، b/453710565)
إصلاح الأخطاء
- تم حلّ المشكلة المتعلّقة بظهور العنوان
AlertDialogوزرَّي التأكيد والرفض عدة مرات في التكوين (I8e1b0، b/463955367) - اجعل الرمز
TimeTextأكثر قوة عند الاستماع إلى تغييراتTimeZone. (I1c276، b/457909952) - تحسين أداء
SplitRadioButtonوSplitCheckboxButtonمن خلال تقليل عدد عمليات إعادة الإنشاء (I3ddc9، b/455845192)
الإصدار 1.6.0-alpha05
19 نوفمبر 2025
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha05. يتضمّن الإصدار 1.6.0-alpha05 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إضافة
RotarySnapSensitivityلسلوك الالتقاط الدوّار وPagerSensitivityلسلوك التمرير السريع في أدوات عرض الصفحات، وذلك للسماح للتطبيقات بضبط مستوى حساسية السلوك الدوّار وسلوك التمرير السريع، خاصةً في أدوات عرض الصفحات. (Ic3a83، b/449949891) - تغييرات مبسطة على
rememberTransformingLazyColumnStateتم إجراؤها عند تقديم التنسيق المعكوس لـTransformingLazyColumn، وتم دمجها في دالة واحدة واستخدام قيمة مراقبة لاستخدام فهرس نقطة الارتكاز التلقائي. (I09302، b/453731755) - تمت إضافة قيمة تلقائية جديدة
GenericFailureIconلاستخدامها فيFailureConfirmationDialog، وتعرض هذه القيمة رمز خطأ عامًا. تمت إعادة تسميةFailureIconالحالية إلىConnectionFailureIcon. (I8e965، b/453730430)
إصلاح الأخطاء
- أصبحت السمة
TimePickerأكثر قوةً عند تحليل أنماط اللغات المعقّدة. (I7b169، b/456538838) - تم إصلاح تنسيق
TransformingLazyColumnالأوّلي عندما تكون قيمةverticalArrangementهيArrangement.Center. (Id18ef، b/451481233) - تمت محاذاة أداة إنشاء
TransformingLazyColumnStateمع الدالةrememberTransformingLazyColumnState(I36d6a، b/453731755) - تم تعديل رمز علامة الصح في
CheckboxButtonليصبح دائريًا. (Ie645e، b/378645751) - تم تعديل رمز علامة الصح في
SwitchButtonليصبح دائريًا. (I31fbf، b/378642590) - تم تصحيح الإزاحة
scrollToItemفيTransformingLazyColumnالتي كانت تعكس اتجاه التمرير. (Ib2c93، b/451481233) - تحسين أداء
SwitchButtonوSplitSwitchButton(I708de، b/448781327)
الإصدار 1.6.0-alpha04
22 أكتوبر 2025
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha04. يتضمّن الإصدار 1.6.0-alpha04 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تنفيذ
reverseLayoutلـTransformingLazyColumn(I19f9e، b/352513793) - تمت إضافة
ConfirmationDialogDefaults.VariantFailureIconلاستخدامه فيFailureConfirmationDialog. قد يكون رمز الخطأ العام الجديد هذا مفضّلاً في بعض الحالات مقارنةً بالرمزConfirmationDialogDefaults.FailureIconالذي يشير إلى انقطاع الاتصال بالهاتف. (Ifc851، b/443115305)
إصلاح الأخطاء
- تحسين أداء "أداة الاختيار" من خلال إعادة تصميم استخدام
LaunchedEffect(I94519، b/418192973) - تم إصلاح الخطأ في
SwipeDismissableNavHostعلى الإصدار 36 من واجهة برمجة التطبيقات أو الإصدارات الأحدث، حيث كان الضغط على زر الرجوع أثناء الصورة المتحركة لإيماءة إظهار شاشة الرجوع يؤدي إلى إيقاف الصورة المتحركة وإعادة تشغيلها. تستخدم عملية التنفيذ الآنSeakableTransitionState.animateToبدلاً من Animatable، ما يؤدي إلى تحسين الأداء بشكل طفيف. (I2241f، b/428156670) - تم إصلاح خطأ في ترتيب إشعارات تسهيل الاستخدام في
AlertDialog، حيث تم الإعلان عن زر التأكيد على أنّه "زر". تأكيد" بدلاً من "تأكيد" العادية. الزرّ". (Ic2381، b/429378202) - تحسين إمكانية رؤية الأرقام
TimePickerعلى الشاشات الصغيرة (I68386، b/447625365) - تمت إزالة نسخة Lazy Layout المتشعبة من Wear Compose Foundation، ما يعني أنّ
TransformingLazyColumnيستخدم الآن تنفيذ Lazy Layout في Compose Foundation، بما في ذلك الجلب المُسبَق، ويستفيد من تحسين الأداء في توقيتات اللقطات في معظم الحالات. (Idd743، b/445911630)
الإصدار 1.6.0-alpha03
8 أكتوبر 2025
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha03. يتضمّن الإصدار 1.6.0-alpha03 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة المَعلمة إلى
TimePickerلتحديد مكوّن الوقت الذي يتم التركيز عليه في البداية. يتم تلقائيًا اختيار المكوّن الأول المتاح استنادًا إلى اللغة وTimePickerType. (Ie5dfe، b/437015874) - تمّت إزالة المَعلمة
targetProgressغير المستخدَمة في الطريقةCircularProgressIndicatordrawCircularProgressIndicator. (Ieeb3c، b/430544552)
إصلاح الأخطاء
- إضافة دعم مفقود لـ
TransformingLazyColumnverticalAlignment- تتوافق الآن مع الترتيبات العادية التي تستند إلى أعلى الشاشة أو أسفلها أو وسطها (I2e630، b/444143326) - تحسين عملية احتساب عرض النص المنحني لاحتساب المسافات قبل النص وبعده (قد يؤدي ذلك إلى إتلاف لقطات الشاشة التي تتضمّن نصًا منحنيًا، خاصةً عندما يكون له خلفية مثل
TimeText) (I924a4، b/446601899) - تم تعديل الإصدار
WarpedCurvedTextRendererمن Compose Foundation إلىEmojiCompatInitializerمنandroidx.emoji2لإصلاح خطأ في فئة وقت التشغيل. (I589b4، b/444422736) - تم تعديل
ScalingLazyColumnللتركيز على العقدة القابلة للتمرير باستخدامCollectionInfo، وذلك لكي تعمل مع أداة التحكّم الدوّارة في المزيد من السياقات، مثلMaterial3AlertDialog. (I6be3c، b/445332360)
الإصدار 1.6.0-alpha02
24 سبتمبر 2025
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha02. يتضمّن الإصدار 1.6.0-alpha02 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تحسين عرض النص المنحني، لا سيما للخطوط المائلة، من خلال تقديم ميزة "تشويه النص" باستخدام المَعلمة الجديدة
CurvedTextStylewarpOffset. (If5dcb)
إصلاح الأخطاء
- تم تحسين التخزين المؤقت للصور المتحركة للعناصر أثناء التمرير في
TransformingLazyColumn. (I62ae8) - تم تعديل صيغتَي
OpenOnPhoneDialogوConfirmationDialogلضبطFLAG_KEEP_SCREEN_ON، وذلك لكي يتم تشغيل الحركات حتى اكتمالها ويتم إغلاق مربّعات الحوار تلقائيًا على النحو المطلوب. (Iad7d4) - تم إصلاح الخطأ الذي كان يؤدي إلى تعطُّل
Modifier.edgeSwipeToDismissعند استخدامه معSwipeDismissableNavHostعلى الإصدار 36 من واجهة برمجة التطبيقات والإصدارات الأحدث. (Ifc13d) - تم تعديل المستندات والتعليقات المرتبطة بالمعلَمة الجديدة
CurvedTextStyle warpOffsetللإشارة بشكل صحيح إلى حالة "غير محدّد". (I41aa5)
الإصدار 1.6.0-alpha01
10 سبتمبر 2025
تم طرح androidx.wear.compose:compose-*:1.6.0-alpha01. يتضمّن الإصدار 1.6.0-alpha01 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة أشكال غير قابلة للنقر لكل من
CardوTitleCardوOutlinedCardوAppCard(I509bb، b/406690146) - تمت إزالة المَعلمة
interactionSourceمن واجهات برمجة التطبيقات الجديدة للبطاقات غير القابلة للنقر. (If0c7a، b/440323280) - تمت إضافة نوع
MinutesSecondsجديد إلى مكوّنTimePicker، والذي يعرض أعمدة الدقائق والثواني فقط، مع حذف عمود الساعات (Ia9e94، b/438004664)
إصلاح الأخطاء
- إصلاح استخدام
HorizontalPagerScaffoldلمَعلمة المعدِّل كي لا تفقدHorizontalPagerمؤشر الصفحة عند إضافةModifier.fillMaxSize()(I07ae1، b/441682601) - محاذاة اتجاه
ScrollIndicatorمع اتجاه تخطيط المحتوى تلقائيًا (I0da0f، b/441489028) - تم إصلاح مشكلة
ScrollAwayعند استخدامها معTransformingLazyColumn. لم يكن يتم التمرير بشكل صحيح فيTimeTextبعد الانتقال إلى شاشة أخرى والرجوع. (Ic0ef1، b/433549148) - تم تصحيح
TransformingLazyColumnإعداد التقارير عن دلالاتSCROLL_BACKWARDSوSCROLL_FORWARDSلحالات الاستخدام الحدّية في أعلى الشاشة أو أسفلها. (I5c28d، b/405205994) - تم إصلاح خطأ في
SwipeDismissableNavHostكان يتسبّب في عدم وضع علامة "مكتملة" على عمليات الانتقال الجارية بعد التمرير سريعًا للرجوع على الإصدار 36 من واجهة برمجة التطبيقات. (Ife72e، b/441089689) - عدِّل القيمة التلقائية
OpenOnPhoneMaxSweepAngleإلى 200 درجة لتجنُّب اقتطاع بعض ترجمات عبارة "الاطّلاع على الهاتف". (Ib2e4c، b/428243902)
الإصدار 1.5 من Wear Compose
الإصدار 1.5.6
3 ديسمبر 2025
تم طرح androidx.wear.compose:compose-*:1.5.6. يتضمّن الإصدار 1.5.6 هذه التعديلات.
إصلاح الأخطاء
- تحسين التخزين المؤقت للصور المتحركة للعناصر أثناء التمرير في
TransformingLazyColumn(I62ae8، b/441701460) - تم تعديل صيغتَي
OpenOnPhoneDialogوConfirmationDialogلضبطFLAG_KEEP_SCREEN_ON، وذلك لكي يتم تشغيل الحركات حتى اكتمالها ويتم إغلاق مربّعات الحوار تلقائيًا على النحو المطلوب. (Iad7d4، b/437986990) - تم إصلاح الخطأ الذي كان يؤدي إلى تعطُّل
Modifier.edgeSwipeToDismissعند استخدامه معSwipeDismissableNavHostعلى الإصدار 36 من واجهة برمجة التطبيقات والإصدارات الأحدث. (Ifc13d، b/441901722)
الإصدار 1.5.5
5 نوفمبر 2025
تم طرح androidx.wear.compose:compose-*:1.5.5. يتضمّن الإصدار 1.5.5 هذه التعديلات.
إصلاح الأخطاء
- تحسين مستوى ظهور الرقم
TimePickerعلى الشاشات الصغيرة (I70fbe)
الإصدار 1.5.4
22 أكتوبر 2025
تم طرح androidx.wear.compose:compose-*:1.5.4. يتضمّن الإصدار 1.5.4 هذه التعديلات.
إصلاح الأخطاء
- تحسين أداء "أداة الاختيار" من خلال إعادة تصميم استخدام
LaunchedEffect(I94519، b/418192973) - تم إصلاح الخطأ في
SwipeDismissableNavHostعلى الإصدار 36 من واجهة برمجة التطبيقات أو الإصدارات الأحدث، حيث كان الضغط على زر الرجوع أثناء الصورة المتحركة لإيماءة إظهار شاشة الرجوع يؤدي إلى إيقاف الصورة المتحركة وإعادة تشغيلها. تستخدم عملية التنفيذ الآنSeakableTransitionState.animateToبدلاً من Animatable، ما يؤدي إلى تحسين الأداء بشكل طفيف. (I2241f، b/428156670) - تم إصلاح خطأ في ترتيب إشعارات تسهيل الاستخدام في
AlertDialog، حيث تم الإعلان عن زر التأكيد على أنّه "زر". تأكيد" بدلاً من "تأكيد" العادية. الزرّ. (Ic2381، b/429378202)
الإصدار 1.5.3
8 أكتوبر 2025
تم طرح androidx.wear.compose:compose-*:1.5.3. يتضمّن الإصدار 1.5.3 هذه التعديلات.
إصلاح الأخطاء
- إضافة دعم مفقود لـ
TransformingLazyColumnverticalAlignment- تتوافق الآن مع الترتيبات العادية التي تستند إلى أعلى الشاشة أو أسفلها أو وسطها (I2e630، b/444143326)
الإصدار 1.5.2
24 سبتمبر 2025
تم طرح androidx.wear.compose:compose-*:1.5.2. يتضمّن الإصدار 1.5.2 هذه التعديلات.
إصلاح الأخطاء
- تم تحسين التخزين المؤقت للصور المتحركة للعناصر أثناء التمرير في
TransformingLazyColumn. (I62ae8) - تم تعديل الصيغ
OpenOnPhoneDialogوConfirmationDialogلضبط FLAG_KEEP_SCREEN_ON، وذلك لضمان اكتمال تشغيل الرسوم المتحركة وإغلاق مربّعات الحوار تلقائيًا على النحو المطلوب. (Iad7d4) - تم إصلاح الخطأ الذي كان يؤدي إلى تعطُّل
Modifier.edgeSwipeToDismissعند استخدامه معSwipeDismissableNavHostعلى الإصدار 36 من واجهة برمجة التطبيقات والإصدارات الأحدث. (Ifc13d) - تم تعديل المستندات والتعليقات المرتبطة بالمعلَمة الجديدة
CurvedTextStyle warpOffsetللإشارة بشكل صحيح إلى حالة "غير محدّد". (I41aa5)
الإصدار 1.5.1
10 سبتمبر 2025
تم طرح androidx.wear.compose:compose-*:1.5.1. يتضمّن الإصدار 1.5.1 هذه التعديلات.
إصلاح الأخطاء
- إصلاح استخدام
HorizontalPagerScaffoldلمعلَمة عنصر التعديل حتى لا يفقد HorizontalPager مؤشر الصفحة عند إضافةModifier.fillMaxSize()(I07ae1، b/441682601) - محاذاة اتجاه
ScrollIndicatorمع اتجاه تخطيط المحتوى تلقائيًا (I0da0f، b/441489028) - تم إصلاح مشكلة
ScrollAwayعند استخدامها معTransformingLazyColumn. لم يكن يتم التمرير بشكل صحيح فيTimeTextبعد الانتقال إلى شاشة أخرى والرجوع. (Ic0ef1، b/433549148) - تم تصحيح
TransformingLazyColumnإعداد التقارير عن دلالاتSCROLL_BACKWARDSوSCROLL_FORWARDSلحالات الاستخدام الحدّية في أعلى الشاشة أو أسفلها. (I5c28d، b/405205994) - تم إصلاح خطأ في
SwipeDismissableNavHostكان يتسبّب في عدم وضع علامة "مكتملة" على عمليات الانتقال الجارية بعد التمرير سريعًا للرجوع على الإصدار 36 من واجهة برمجة التطبيقات. (Ife72e، b/441089689) - عدِّل القيمة التلقائية
OpenOnPhoneMaxSweepAngleإلى 200 درجة لتجنُّب اقتطاع بعض ترجمات عبارة "الاطّلاع على الهاتف". (Ib2e4c، b/428243902)
الإصدار 1.5.0
27 أغسطس 2025
تم طرح androidx.wear.compose:compose-*:1.5.0. يتضمّن الإصدار 1.5.0 هذه التعديلات.
التغييرات المهمة منذ الإصدار 1.4.0
الإصدار الأول من مكتبة Wear Compose Material 3 التي تتوافق مع نظام التصميم الجديد Material 3 Expressive يتضمّن هذا الإصدار ما يلي:
- تم تعديل
MaterialThemeوتصميم الألوان الديناميكية. - مكوّنات جديدة
AppScaffold, ScreenScaffoldوHorizontalPagerScaffoldوVerticalPagerScaffoldلتحديد بنية الشاشة وتنسيق الرسوم المتحركةScrollIndicatorوTimeTextوHorizontalPageIndicatorوVerticalPageIndicator - تغيير شكل
IconButtonوTextButtonوIconToggleButtonوTextToggleButton، مع أشكال متغيرة يتم تحريكها عند الضغط عليها أو تحديدها EdgeButton، الذي يتضمّن شكلاً خاصًا مصمّمًا لأسفل الشاشة- تنفّذ
ButtonGroupمجموعة تعبيرية من الأزرار، في صف يتغيّر شكله عند لمسه. -
AlertDialogوConfirmationDialogمع صيغ مختلفة لمحتوى مربّع الحوار الإضافي - المكوّنين
TimePickerوDatePicker. - تشمل مؤشرات التقدم
CircularProgressIndicator(مع اختلاف مقسَّم) وArcProgressIndicatorوLinearProgressIndicator.
بالإضافة إلى ذلك، يتضمّن الإصدار 1.5.0 من Wear Compose Foundation ما يلي:
-
TransformingLazyColumn، وهي قائمة كسولة قابلة للتمرير عموديًا وتتيح تغيير الحجم وتأثيرات التحوّل - إتاحة تقسيم المحتوى إلى صفحات في Wear Compose Foundation باستخدام
HorizontalPagerوVerticalPager - مجموعات التركيز الهرمية: تُستخدم لإضافة تعليقات توضيحية إلى العناصر القابلة للإنشاء في أحد التطبيقات لتتبُّع الجزء النشط من التركيب وتنسيق التركيز.
مزيد من المعلومات عن (Material 3 Expressive لنظام التشغيل Wear OS)
تغييرات إضافية
- للاطّلاع على قائمة أكثر اكتمالاً بالميزات التي تم طرحها في الإصدار 1.5.0، يُرجى الاطّلاع على (ملاحظات إصدار الإصدار التجريبي 01).
الإصدار 1.5.0-rc02
13 أغسطس 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-rc02. يتضمّن الإصدار 1.5.0-rc02 هذه التعديلات.
إصلاح الأخطاء
- تم إصلاح خطأ في
TimePickerكان يؤدي إلى تعطُّل التنسيق عند استخدام سلاسل طويلة بلغات متعددة للفترة الزمنية (صباحًا/مساءً). (I0fa81)
الإصدار 1.5.0-rc01
30 يوليو 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-rc01. يتضمّن الإصدار 1.5.0-rc01 هذه التعديلات.
إصلاح الأخطاء
- يتم الآن تشغيل
TimePickerبالكامل حسب اللغة المحلية للمستخدم، وذلك باستخدامDateFormat.getBestDateTimePatternلتحديد ترتيب أدوات الاختيار والفواصل ومحتواها. يؤدي ذلك إلى إصلاح ترتيب الأعمدة غير الصحيح للغات الصينية واليابانية والكورية، وحلّ مشاكل التنسيق من اليمين إلى اليسار في لغات مثل العربية، واستخدام فواصل مترجَمة، وتوفير تنسيقات الساعات من 0 إلى 11 ومن 1 إلى 12 استنادًا إلى اللغة (I5d543) - تعرض السمة
DatePickerالآن شهرًا رقميًا في بعض اللغات، مثل الصينية واليابانية والكورية، لتجنُّب الخلط بين التنسيقات الرقمية واللغوية (مثلاً، 2025 | 07 | 02 بدلاً من 2025 | 7月 | 02). يطبّق هذا التغيير قاعدة إرشادية تتحقّق مما إذا كانت اللغة تستخدم لاحقات لغوية للسنة، وإذا كان الأمر كذلك، يتم تبديل تنسيق الشهر من نصي (MMM) إلى رقمي (MM) لضمان الاتساق. (Ia93fe) - أصبح المساحة العمودية للعنوان في مكوّن "أداة الاختيار" ثابتة الآن، ما يمنع حدوث تغيير مرئي عند اختيار عمود في أداة الاختيار، لا سيما في وضع
Talkback. (I7f8b7) - تم إصلاح خطأ في تسهيل الاستخدام ناتج عن عرض
HorizontalPageIndicatorوVerticalPageIndicatorبملء الشاشة. لم تعُد مؤشرات الصفحات تظهر بملء الشاشة، وسيتم تحديد موضعها تلقائيًا عند استخدامها معHorizontalPagerScaffoldأوVerticalPagerScaffold. عند عدم استخدام بنية صفحة ذات أرقام، حدِّد المحاذاة بشكل صريح باستخدامmodifier = Modifier.align(Alignment.BottomCenter)معHorizontalPageIndicatorوmodifier =Modifier.align(Alignment.CenterEnd)معVerticalPageIndicator. (I3a0ad) - أصبح اتجاه التمرير السريع في
SwipeToRevealمتوافقًا الآن معLayoutDirectionsالتي تكتب من اليمين إلى اليسار ومن اليسار إلى اليمين. (I6d427) - تمت إعادة تفعيل ميزة التوسيط العمودي
SwipeToRevealللإجراءات. إذا كانت القيمةhasPartiallyRevealedState = true، يجب أن تتم إعادة ضبطRevealStateعلىRevealValue.Coveredمن قِبل المتصل عند حدوث التمرير. (I6473d) - تعمل أداة
SwipeDismissableNavHostالآن على اقتطاع المحتوى بشكل صحيح في الإصدار 36 من واجهة برمجة التطبيقات والإصدارات الأحدث. (Ib9a44)
الإصدار 1.5.0-beta06
16 يوليو 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-beta06. يتضمّن الإصدار 1.5.0-beta06 هذه التعديلات.
إصلاح الأخطاء
- إصلاح الرسوم المتحركة
EdgeButtonعندما يكونLazyColumnأوScalingLazyColumnيحتويان علىreverseLayout = true(I46a1a) - تم إصلاح خطأ في
ScreenScaffoldكان يؤدي إلى عدم عمل ميزة "النقر للاستكشاف" في TalkBack إذا تم توفيرScrollIndicator/PageIndicator. (I6dcee) - تتيح
TransformingLazyColumnالآن إمكانية التحويل المخصّص منTransformationSpecمن خلال قراءة قيمةitemHeightالتي يوفّرهاTransformationSpecفي أداة "الطلاء في الخلفية". (I6a599) - انتقالات الألوان المتحركة المفعّلة/غير المفعّلة لـ
IconButton، لتكون متوافقة معIconToggleButton(Ife10a) - تمت إزالة الحد الأدنى لتثبيت القسم في
CircularProgressIndicatorلتجنُّب الانتقال الملحوظ إلى الحد الأدنى لحجم النقطة عند تحريكها. في إطار هذا التغيير، لم يعُد يتم استخدام المَعلمةtargetProgressفيdrawCircularProgressIndicator. (I33309) - يحتوي أداة الاختيار الآن على الدور الدلالي
ValuePickerالذي يمكن أن تستخدمه برامج قراءة الشاشة لتسهيل استخدام أدوات الاختيار. يتضمّن أداة الاختيار أيضًا تصنيفات نقر معدَّلة لتسهيل الاستخدام، وهي تفرّق بين تعديل القيمة في وضع القراءة فقط واختيار القيمة الحالية في الحالات الأخرى. (I33309)
الإصدار 1.5.0-beta05
2 يوليو 2022
تم طرح androidx.wear.compose:compose-*:1.5.0-beta05. يتضمّن الإصدار 1.5.0-beta05 هذه التعديلات.
إصلاح الأخطاء
- تم تعديل المستندات لتوضيح استخدام
Modifier.edgeSwipeToDismiss(I78cb5) - تم إصلاح الخطأ الذي كان يؤدي إلى إمكانية عرض عناصر متعدّدة تم الكشف عنها باستخدام
SwipeToRevealفي القوائم الكسولة (I1d4f6) - تمت الآن إعادة تحجيم أشكال الحاويات في
TransformingLazyColumnلتجنُّب قص المحتوى. (I9221a) - تتضمّن الآن التسمية
TimePickerوDatePickerالخاصة بالساعة/الدقيقة/الثانية أو السنة/الشهر/اليوم دلالات العناوين لقارئات الشاشة (I77d8b) - تمت إزالة التوقف المؤقت بين التكرارات في
CircularProgressIndicatorغير المحدّد (Iaf0bb) - تم إصلاح خطأ في الحركة في
TransformingLazyColumnعند إزالة عناصر. (I73034) - تم تصحيح طريقة التعامل مع العناصر الأساسية في
TransformingLazyColumnعند إزالة العناصر. (I841a8) - تعرض
PickerGroupالآن رسومًا متحركة لأدوات الاختيار أفقيًا عند تفعيل ميزة "التوسيط التلقائي" وتغيير أداة الاختيار المحدّدة (المتوسّطة). (Ic82c4)
الإصدار 1.5.0-beta04
18 يونيو 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-beta04. يتضمّن الإصدار 1.5.0-beta04 هذه التعديلات.
إصلاح الأخطاء
- تم إصلاح خطأ في التنسيق في
TransformingLazyColumn، حيث يتم الآن محاذاة المحتوى الذي يتناسب مع الشاشة بشكل صحيح من أعلى الشاشة (I80115) - تم إصلاح مشكلة في
TransformingLazyColumnحيث تم تغيير حجم العنصر السفلي بشكل غير صحيح عند الانتقال إلى أسفل القائمة التي تتضمّنEdgeButton. يتبع مستوى تقدّم التمرير الآن عملية نزول تدريجي عند استعادة التنسيق. (Iea375) - تعرض السمة
TransformingLazyColumnالآن ارتفاع العنصر داخل أداة الرسم في الخلفية، ما يسمح للسمةTransformationSpecsالمخصّصة بتنفيذ عملية التحوّل. (I022f0) - تعمل السمة
SwipeToRevealالآن على توسيط الإجراءات التي تم الكشف عنها عموديًا بشكل صحيح. (I4419b) - تم إصلاح خطأ في
SwipeToRevealكان يمنع عمله بشكل صحيح مع ميزة "التمرير سريعًا للإغلاق" في حال استخدام كل من طريقتَي العرض وCompose على الشاشة. (I5dc0e) - تم إصلاح الخطأ الذي كان يؤدي إلى رسم إجراءات
SwipeToRevealبإزاحة عمودية عند التمرير. (I29444) - تعمل القيم
AlertDialogوConfirmationDialogوOpenOnPhoneDialogوSwipeToRevealالآن على تقريب المساحات المتروكة والأحجام التي يتم احتسابها كنسبة مئوية من حجم الشاشة. (I76367) ButtonDefaults.outlinedButtonBorderيتم الآن تعديل حجم If2ddd بعد تغيير حالة التفعيل/الإيقاف- تم إصلاح خطأ في ارتفاع
EdgeButtonحدث على شاشات معقّدة تحتوي على Pager وScreenScaffold. (I946e3) - تم إصلاح مشكلة تزامن قد تؤدي إلى توقّف الصور المتحركة للعناصر النائبة. (I53530)
- تحسين أداء
HorizontalPageIndicatorوVerticalPageIndicatorمن خلال الرسم على Canvas (Ifae1e) - تم تحسين شكل EdgeButton لتسهيل الانتقال بين علامة الحذف والدوائر التي تشكّل المخطّط التفصيلي. (I7721e)
- تم إصلاح خطأ في
LevelIndicatorكان يؤدي إلى إيقاف الصور المتحركة بسبب عمليات إعادة إنشاء غير ضرورية. (I45d08)
الإصدار 1.5.0-beta03
4 يونيو 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-beta03. يتضمّن الإصدار 1.5.0-beta03 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تعرض ميزة
OpenOnPhoneDialogالآن نص الرسالة فقط ضمن TalkBack، وتتخطّى دلالات الرمز. تم تعديلOpenOnPhoneDialogDefaultsلإزالة المَعلمةiconContentDescriptionوالمَعلمةcontentDescriptionمنicon(). بالإضافة إلى ذلك، يتضمّنConfirmationDialogDefaultsالآن مَعلمات معدِّل في عناصرSuccessIconوFailureIconالقابلة للإنشاء. (Id2ae2)
إصلاح الأخطاء
- تم تغيير ترتيب تطبيق تأثير المَعلمات
SurfaceTransformation. في السابق، كانت عمليات التحويل المطبَّقة على مكوّنات Wear Material3 تتم على النحو التالي: أداة رسم الخلفية، وعملية تحويل الحاوية، وعملية تحويل المحتوى. الآن، يتم عكس أول عنصرَين، ونطبّق أي معدِّل تم تمريره بينهما، وبالتالي يتأثر بتحويلات الحاوية. يحلّ هذا الإجراء حالات مثل استخدام تأثير التموّج لعنصر نائب مع عناصر في بطاقة TLC باستخدام مَعلمة التحويل. (I786cf) - تمت إضافة
RevealState.Saverلاستخدامها في استعادة حالةSwipeToRevealعند إعادة إنشاء النشاط أو العملية. تستخدم الدالةrememberRevealStateالآن أداة التوفير هذه تلقائيًا. (Ie0ecb) - يجب أن تكون أزرار الإجراءات الأساسية والثانوية مضبوطة تلقائيًا على
ButtonDefault.Height(تم إصلاح الخطأ الذي كانت فيه هذه الأزرار تملأ الحد الأقصى للارتفاع للأزرار الأطول).SwipeToReveal(Ibfba1) - تم تغيير
SwipeToRevealلإعادة ضبط آخر مكوِّن تم التفاعل معه عند تنفيذ إيماءة التمرير السريع لليمين. (Ia8450) - تم تغيير
SwipeToRevealإلى الحالةRevealingعندما يكون موضع نهاية التمرير السريع بين نقاط الارتكاز الظاهرة وغير الظاهرة، ويكون أقرب إلى نقطة الارتكاز الظاهرة. (If4458) - تم الآن عكس محتوى
ButtonGroupبشكل صحيح في تخطيط من اليمين إلى اليسار (Ib378d) - أصبحت
AnimatedTextمتوافقة الآن مع اتجاه النص من اليمين إلى اليسار (I4533c) TransformingLazyColumnيعيد الآن تغيير حجم العناصر بشكل صحيح عند إزالة العنصر السفلي (Idacab)- تجري أداة
TransformingLazyColumnالآن عملية قياس واحدة فقط، ما يحسّن الأداء من خلال تقليل أوقات عرض اللقطات. (I501a1)
الإصدار 1.5.0-beta02
20 مايو 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-beta02. يتضمّن الإصدار 1.5.0-beta02 هذه التعديلات.
إصلاح الأخطاء
- تم تعديل ملفات تعريف خط الأساس لمكتبات Foundation وMaterial وMaterial3. (I53f06)
- تم إصلاح خطأ في
TransformingLazyColumn، حيث تم تغيير حجم العناصر عند إزالة العنصر السفلي. (Idacab) - تم إصلاح خطأ في
TransformingLazyColumn، حيث كانت القائمة عالقة في أعلى أو أسفل القائمة. (I49d00) - يجب أن يعلن
OpenOnPhoneDialogضمن TalkBack عن النص المنحني بدلاً من وصف محتوى الرمز. (I4efe8) - تم إصلاح خطأ في
SwipeToRevealكان يؤدي إلى عرض رابط مرجعي غير صحيح فيRevealState.currentValueعندما تكون قيمةhasPartiallyRevealedStateهي "خطأ". (I9c7cf) - أصبحت أزرار التراجع
SwipeToRevealButtonDefaults.Heightتلقائيًا. (I1f6c8) - تم تحسين أداء
BasicSwipeToDismissBoxمن خلال إيقاف استخدام Canvas لرسم شاشات التعتيم. (I68f2c) - تم إصلاح خطأ متعلق بإمكانية الوصول في شريط التمرير، حيث لم تتطابق النسبة المئوية المُعلَن عنها مع القيمة بعد التحديثات (I91146)
- تم إصلاح خطأ في تنفيذ
placeholderShimmer. (Iee39b - تم تحسين أداء
TransformingLazyColumnمن خلال تحسين عملية احتسابScrollProgressبنسبة %30. (I4c4cb)
الإصدار 1.5.0-beta01
7 مايو 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-beta01. يتضمّن الإصدار 1.5.0-beta01 هذه التعديلات.
يشير الإصدار 1.5.0-beta01 من Compose for Wear OS إلى أنّ هذا الإصدار من المكتبة يتضمّن جميع الميزات وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء ما تمّت الإشارة إليه على أنّه تجريبي).
يتضمّن الإصدار 1.5.0-beta01 من Wear Compose مكتبة Wear Compose Material3 التي تتوافق مع نظام تصميم واجهة المستخدم الجديد المعروف باسم Material 3 Expressive. ننصحك بالترقية من Material إلى Material3 للاستفادة من التصميم المرئي الجديد في التطبيقات، ومن المكوّنات الجديدة على النحو التالي:
MaterialThemeللحصول على أنظمة ألوان وأساليب خطوط وأشكال محدّثة وموسّعة لإضافة عمق وتنوّع إلى تصاميمك- ميزة "تطبيق المظهر الديناميكي" التي تنشئ تلقائيًا نظام ألوان لتطبيقك ليتطابق مع ألوان خلفية شاشة الساعة
- تتكيّف المكوّنات الجديدة تلقائيًا مع أحجام الشاشات الأكبر بشكلٍ تلقائي
- تغيير الشكل: تتوافق مكوّنات الأزرار الدائرية، مثل
IconButtonوTextButtonوIconToggleButtonوTextToggleButton، مع أشكال متغيرة يتم تحريكها عند الضغط عليها أو وضع علامة فيها. EdgeButton: زر جديد على الحافة بتصميم خاص في أسفل الشاشة- الأساسات: تقديم
AppScaffoldوScreenScaffoldلتحديد بنية الشاشة وتنسيق الصور المتحركةScrollIndicatorوTimeText - الأزرار: تتوفّر أزرار عديدة على شكل ملعب مع حاويات مرنة ذات خانة واحدة وأشكال متعدّدة الخانات للأزرار التي تتضمّن رموزًا وتصنيفات. يتم توفير
CheckboxButtonوSwitchButtonعند الحاجة إلى أزرار تبديل، بينماRadioButtonهو زر الاختيار المتاح (يتم توفير أشكال "مقسّمة" من أزرار التبديل والاختيار أيضًا). -
ButtonGroup: تنفّذ مجموعة تعبيرية من الأزرار في صف واحد تتغيّر أشكالها عند لمسها. - تتضمّن صيغ
AlertDialogأزرار موافقة/إلغاء أوEdgeButton. - يتوفّر
ConfirmationDialogلعرض رسالة مع المهلة، ما يتيح استخدام رسوم متحركة خاصة لحالات النجاح والفشل وخيار "فتح على الهاتف". - تتوفّر أيضًا أشكال مختلفة من أدوات الاختيار، مثل
TimePickerوDatePicker، بالإضافة إلى مكوّنات Picker وPickerGroupلإنشاء شاشات أدوات اختيار خاصة بك. ProgressIndicators- مؤشرات التقدّم الدائرية والخطية متوافقة (يحتويCircularProgressIndicatorعلى أشكال متنوّعة مقسّمة وغير محدّدة).- البطاقات: يتوفّر عدد من أشكال البطاقات، بما في ذلك
TitleCardالذي يقدّم تخطيطات محدّدة للبطاقات التي تتضمّن عنوانًا أو وقتًا أو عنوانًا فرعيًا أو خانات محتوى. يمكن أيضًا منحTitleCardخلفية صورة لتعزيز معنى المعلومات الواردة في البطاقة. - تنسّق عناصر أدوات التقسيم إلى صفحات
HorizontalPagerScaffoldوVerticalPagerScaffoldوAnimatedPageالرسوم المتحركةHorizontalPageIndicatorوVerticalPagerIndicator. تم إصدارHorizontalPagerوVerticalPagerفي مكتبة Wear Compose Foundation. - العناصر النائبة: ترسم شكلاً هيكليًا فوق أحد المكوّنات، وذلك في الحالات التي لا يتوفّر فيها أي محتوى مؤقت.
- شرائط التمرير وأزرار الزيادة والنقصان: تتيح شرائط التمرير وأزرار الزيادة والنقصان للمستخدمين إمكانية الاختيار من بين مجموعة من القيم. تكون شرائط التمرير أكثر إحكامًا ويمكن تقسيمها، بينما يكون عنصر "الخطوات" عبارة عن مكوّن بملء الشاشة يتم عادةً إقرانه بعنصر
StepperLevelIndicator. -
SwipeToReveal: تُستخدَم لإضافة إجراءات إضافية إلى عنصر قابل للإنشاء عند التمرير سريعًا من اليمين إلى اليسار.
بالإضافة إلى ذلك، يتضمّن الإصدار 1.5.0-beta01 من Wear Compose Foundation المكوّنات الجديدة التالية:
-
TransformingLazyColumn: قائمة يتم تحميلها عند الحاجة إليها، ويمكن التمرير فيها عموديًا، وتتيح تغيير الحجم وتأثيرات التحوّل - مجموعات التركيز الهرمية: تُستخدَم لإضافة تعليقات توضيحية إلى العناصر القابلة للإنشاء في أحد التطبيقات، وذلك لتتبُّع الجزء النشط من التركيب وتنسيق التركيز.
- أدوات النداء الآلي: مكوّنا
HorizontalPagerوVerticalPager، تم إنشاؤهما استنادًا إلى مكوّنات Compose Foundation مع تحسينات خاصة بنظام التشغيل Wear لتحسين الأداء والالتزام بإرشادات Wear OS.
تغييرات واجهة برمجة التطبيقات
- تم تعديل واجهة برمجة التطبيقات Hierarchical Focus API - تمت إعادة تسمية
Modifier.hierarchicalFocusإلىModifier.hierarchicalFocusGroupوإزالة مَعلمة معاودة الاتصال، وإزالة التحميل الزائد لـModifier.hierarchicalFocusRequesterباستخدام المَعلمةFocusRequester، وإنشاءCompositionLocalوLocalScreenIsActiveجديدتَين حتى تتمكّن المكوّنات من إعلام المستخدم بالشاشة النشطة والتحقّق منها. (I5ff7c). - تم إيقاف
SwipeToRevealنهائيًا من Wear Compose Foundation لصالح واجهاتSwipeToRevealAPI في Wear Compose Material وWear Compose Material3. يُرجى استبدال عمليات استيراد Wear FoundationSwipeToRevealبعمليات استيراد Wear Compose Material أو Wear Compose Material3 لمواصلة استخدام واجهات برمجة التطبيقات. (Ia147d). - تم نقل تبعيات Wear Compose Material3
SwipeToRevealفي Foundation إلى حزمة material3، مثلRevealValueوRevealDirectionوRevealActionTypeوRevealStateوrememberRevealState. على المطوّرين تغيير عمليات استيراد هذه الفئات والدوال منandroidx.wear.compose.foundationإلىandroidx.wear.compose.material3. (I640e6). - تم تعديل واجهة برمجة التطبيقات
SwipeToRevealWear Compose Material3 على النحو التالي: تمت إضافة المَعلماتprimaryActionوonFullSwipeوsecondaryActionوundoPrimaryActionوundoSecondaryActionوhasPartiallyRevealedStateإلى العنصر القابل للإنشاءSwipeToReveal، وتمت إزالة إمكانية تخصيصpositionalThresholdوanimationSpecمنRevealState، وتمت إزالةlastActionTypeوrevealThresholdوالعرض منRevealState، وتم تغيير طريقة وضع التصميمRevealStateلقبولRevealDirectionبدلاً من نقاط الارتكاز، وتمت إزالة الدوالcreateRevealAnchorsونقاط الارتكاز وbidirectionalAnchors، وتمت إعادة تسمية الدوالSwipeToRevealScopeprimaryActionوsecondaryActionوundoPrimaryActionوundoSecondaryActionإلىPrimaryActionButtonوSecondaryActionButtonوUndoActionButtonوتحويلها إلى دوال مركّبة، وتم وضع علامة "داخلي" علىRevealActionType. (I885d0). - تم تعديل واجهة برمجة التطبيقات
SwipeToRevealعلى النحو التالي: تمت إعادة تسميةonFullSwipeإلىonSwipePrimaryAction، وإعادة تسميةSwipeToRevealNonAnchoredSampleللإشارة إلى استخدام المَعلمةhasPartiallyRevealedState، وإزالةactionButtonHeightلأنّ الارتفاع التلقائي هو الارتفاع التلقائي للزر ويمكن ضبط ارتفاع أكبر باستخدام معدِّل، وإزالةSmallActionButtonHeightمنSwipeToRevealDefaults، وجعل مَعلمة القيمة في الدالتَين الإنشائيتَينRevealValueوRevealDirectionخاصة. (I465ce).
إصلاح الأخطاء
- تم إصلاح طريقة معالجة
EdgeButtonفيScreenScaffoldلكي يتم تحريكEdgeButtonإلى مكانه بعد إزالة عنصرTransformingLazyColumn. (I6d366). - تم تعديل Wear Compose dependencies على مكتبات Compose إلى الإصدار 1.8.0. (I2ef3f).
- تم تعديل حركة شريط التقدم غير المحدّد
CircularProgressIndicatorلكي لا يتراجع مؤقتًا. (Ieddb1). - تم إصلاح الخطأ
SwipeDismissableNavHost: لم يكن التركيز ينتقل بشكل صحيح بعد التمرير سريعًا للرجوع، ما أدّى إلى تعذُّر إدخال البيانات عبر وحدة تحكم دورانية (كان ذلك للإصدار 36 من واجهة برمجة التطبيقات أو الإصدارات الأحدث التي تستخدم ميزة "إيماءة إظهار شاشة الرجوع"). (Ieddb1). - مستندات معدَّلة لواجهة برمجة التطبيقات Hierarchical Focus API (Idf2ff)
- تم تعديل مستندات "الزر" و"البطاقة" لتوضيح كيفية إلغاء
containerPainterوdisabledContainerPainterللقيمcontainerColorوdisabledContainerColor(I4a453). - تم التراجع عن تغيير في
TimeTextفي الإصدار السابق والذي نقلBroadcastReceiverإلى سلسلة محادثات عاملة، لأنّه تسبّب في حدوث مشاكل للتطبيقات التي تدير سلاسل المحادثات الخاصة بها أثناء التنقّل. (I34d02). - تم تعديل عيّنات Picker لإزالة طلبات التذكير غير الضرورية واستخدام
rememberUpdatedStateفي Picker بدلاً من ذلك لتذكُّر أحدث دالة lambdacontentDescription. (Icb5b1). - تم تعديل أنماط النصوص في
TimePickerوDatePickerلكي لا تؤدي تغييرات الخط إلى اقتطاع النص. (I26194). - تتم الآن محاذاة النص تلقائيًا في
ListHeaderوListSubHeaderإلى الوسط وإلى البداية على التوالي. (I78339). - تم تعديل عيّنات Foundation وMaterial Swipe to Reveal وعروضها التوضيحية للإعلان عن إجراءات تسهيل الاستخدام المخصّصة (يجب إضافة الإجراءات المخصّصة كدلالات على المحتوى، وليس على العنصر
SwipeToRevealالقابل للإنشاء نفسه). (Ie92a3). - تم تعديل القيمة التلقائية
MaxLinesالتي تم ضبطها على المحتوىEdgeButtonوفقًا لحجمه، وأصبحت الآن 1 للأحجام الصغيرة جدًا، و2 للأحجام الصغيرة والمتوسطة، و3 للأحجام الكبيرة. (Ie35f6). - تم تبسيط
LocalReduceMotionبحيث يتم تسجيل المراقب مرة واحدة فقط، وذلك لتحسين الأداء. (Ib1979). - تم تقليل عدد عمليات إعادة الرسم في
ScrollIndicatorلتحسين الأداء. (Ia7a67). - تم إصلاح خطأ في
TransformingLazyColumn، حيث لم يتم تغيير حجم العنصر المرئي العلوي في القائمة بشكل صحيح عندما وصل EdgeButton إلى ارتفاعه الكامل. (I30580).
الإصدار 1.5.0-alpha14
23 أبريل 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha14. يتضمّن الإصدار 1.5.0-alpha14 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم نقل جميع تبعيات Material
SwipeToRevealفي FoundationSwipeToRevealإلى حزمة Material، مثلRevealValueوRevealDirectionوRevealActionTypeوRevealStateوrememberRevealState. على المطوّرين تغيير عمليات استيراد هذه الفئات والدوال منandroidx.wear.compose.foundationإلىandroidx.wear.compose.material. (Ib7cb8) - تم تعديل واجهة برمجة التطبيقات الخاصة بـ
HierarchicalFocusCoordinatorلتصبح معدِّلات بدلاً من عناصر قابلة للإنشاء. - ملاحظات حول نقل البيانات:
- يمكن استبدال
HierarchicalFocusCoordinator(function, content)بإضافةModifier.hierarchicalFocus(function())إلىcontentأو العنصر القابل للإنشاء المحيط. - يمكن استبدال
ActiveFocusListener { if (it) focusRequester.requestFocus() }بإضافةModifier.hierarchicalFocusRequester(focusRequester) - يمكن استخدام المَعلمة الجديدة
Modifier.hierarchicalFocusفي حالات أخرى أقل شيوعًا لاستخدامActiveFocusListener - يمكن استبدال
focusRequester(rememberActiveFocusRequester())بـhierarchicalFocusRequester() - يمكن استبدال
val focusRequester = rememberActiveFocusRequester()بـremember { FocusRequester() }وإضافةModifier.hierarchicalFocusRequester(focusRequester). (Ie319a)
- يمكن استبدال
إصلاح الأخطاء
- تمت زيادة حد السرعة الذي يجب أن تتجاوزه إيماءات التمرير السريع لتفعيل تغيير الحالة للمكوّنات التالية:
SwipeToRevealوBasicSwipeToDismissBoxوSwipeDismissableNavHost(فقط لإصدارات واجهة برمجة التطبيقات 35 والإصدارات الأقدم منSwipeDismissableNavHost). (If47bf) - تم إصلاح مشكلة في الحركة عند إضافة عناصر جديدة إلى
TransformingLazyColumn. (I589b2)
الإصدار 1.5.0-alpha13
9 أبريل 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha13. يتضمّن الإصدار 1.5.0-alpha13 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تتطلّب المشاريع التي تم إصدارها باستخدام Kotlin 2.0 استخدام الإصدار 2.0.0 أو إصدار أحدث من KGP (Idb6b5)
- تمّت إضافة السمة
targetPageإلىPagerState(I4de8b)
إصلاح الأخطاء
- منع إعادة الإنشاء غير الضرورية أثناء إيماءة إظهار شاشة الرجوع (Iecd6d)
- تم إصلاح السمة
isScrollableالخاصة بـScrollInfoProviderلعرض القيمة الحالية. (Icbfb8)
الإصدار 1.5.0-alpha12
26 مارس 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha12. يتضمّن الإصدار 1.5.0-alpha12 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تحسين التنفيذ التلقائي للرمز
SwipeToRevealفيgestureInclusionلتجاهل الإيماءات فقط إذا كانت حالة المكوّن هي Covered. (I7e3d6) - بالنسبة إلى
SwipeToReveal، تم تغييرbidirectionalGestureInclusionإلى قيمة بدلاً من دالة، وتمت إضافة@FloatRangeإلى المَعلمةedgeZoneFractionفيgestureInclusion. (Ica7c3)
إصلاح الأخطاء
- غيِّر
SwipeToRevealbidirectionalGestureInclusionلعرض عنصر بدلاً من فئة. (I29597) - تم إيقاف استخدام ردود الفعل اللمسية عند إجراء اختبارات ضمن
RoboElectric. (I58bd1) - تعديل
SwipeToRevealالمساحات المتروكة بين المحتوى وأزرار الإجراءات، وكذلك المساحة المتروكة بين الرمز والنص في أزرار الإجراءات (Ic46cb)
الإصدار 1.5.0-alpha11
12 مارس 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha11. يتضمّن الإصدار 1.5.0-alpha11 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم تعديل
PagerState، وإزالةPagerStateCompose Foundation كصنف أساسي وإضافة السماتcurrentPageوcurrentPageOffsetFractionوpageCount. تم تعديل واجهةGestureInclusion، وإعادة تسمية الطريقة إلىignoreGestureStart. (I4ae07) - أضِف
requireOffsetإلىSwipeToDismissBoxStateكطريقة مقترَحة للحصول على إزاحة بمقدارSwipeToDismissBoxState. (I21042) - تمت إضافة
CurvedModifier.semantics، مع إتاحة وصف المحتوى وفهرس التنقّل (I0b093) في البداية - أضفنا
CurvedModifier.clearAndSetSemanticsلتوفير وسيلة لإيقاف الدلالات المنحنية. سيستمرCurvedTextفي ضبط وصف المحتوى تلقائيًا على النص، ولكن لن يعلنtimeTextCurvedTextوtimeTextSeparatorعن محتوياتهما الآن. (I4b568) - تمت إعادة تسمية طريقة التعامل التلقائية مع الإيماءات بالسحب في
HorizontalPagerإلىPagerDefaults.gestureInclusion. يتم الآن تجاهل إيماءات التمرير السريع التي تبدأ من الحافة اليسرى للصفحة الأولى فقط، وعندما تكون ميزة TalkBack غير مفعّلة. وفي الحالات الأخرى، لن يتجاهل أداة عرض الصفحات إيماءات التمرير السريع، وبالتالي لن تكون متاحة لمعالجات التمرير السريع للإغلاق. (Iee486) - تمت إضافة ميزة التمرير السريع الدائري إلى واجهة برمجة التطبيقات
rotaryScrollable. تمت إضافة تجاوز حد التمرير والتمرير المتداخل إلى سلوك التمرير السريع فيrotaryScrollable. من المفترض أن يؤدي هذا التغيير إلى توفير وظائف متساوية لكل من التمرير باللمس والتمرير باستخدام أداة التحكم الدوّارة، وذلك في ما يتعلق بتجاوز حد التمرير والتمرير المتداخل. (I71926) - تمت إضافة منطقة التمرير السريع من الحافة إلى
SwipeToReveal. أصبح السلوك التلقائي في الإصدارSwipeToRevealمن Foundation هو عدم السماح بالتمرير سريعًا عندما تبدأ الإيماءة من الحافة. أصبح السلوك التلقائي في Material3SwipeToRevealالآن هو عدم السماح بالتمرير السريع عندما تبدأ الإيماءة من الحافة، وذلك عندما يتم ضبطSwipeDirectionعلى اتجاه واحد. (I32ef0) - تستخدم أداة TLC الآن قيمة contentPadding فارغة تلقائيًا بدلاً من وضع العنصرَين الأول والأخير في المنتصف. (I77ab7)
إصلاح الأخطاء
- تم تحديث مكتبات Wear Compose إلى برنامج التجميع Kotlin 2.0. (I2de79)
- تم إصلاح عينة
LetterSpacingالمنحنية على الأساس. (Iebf7c)
الإصدار 1.5.0-alpha10
26 فبراير 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha10. يتضمّن الإصدار 1.5.0-alpha10 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- اجعل
SwipeToRevealDefaultsعلنيًا. (I0c34c) - لقد استبدلنا المَعلمة
swipeToDismissEdgeZoneFractionفيHorizontalPager. بدلاً من ذلك، تم تقديم مَعلمة جديدة، وهيgestureInclusion، يمكن استخدامها لتحقيق السلوك اللازم للتمرير سريعًا لإغلاق النافذة. تتلقّىgestureInclusionمثيلاً منGestureInclusionالذي يحدّد ما إذا كان يجب المتابعة في حدث التمرير اللاحق أم لا. يعني السماح بإيماءة أنّ أداة Pager تستخدمها، وإلا سيتم التعامل معها في مكان آخر، مثل معالج التمرير السريع للإغلاق. يتمثّل السلوك التلقائي الجديد في عدم السماح بالإيماءات على الحافة اليسرى من الصفحة الأولى في Pager، وبالتالي السماح بالتمرير سريعًا لإغلاق الصفحة في هذه المنطقة. ستسمح جميع الصفحات الأخرى لـ Pager باستخدام جميع الإيماءات، ما يعني أنّه لا يمكن تفعيل الإيماءة "التمرير السريع للإغلاق" من هذه الصفحات. لتحقيق سلوك التمرير السريع للإغلاق على جميع الصفحات، ما عليك سوى تقديم مثيلGestureInclusionمخصّص (راجِعPagerDefaults.disableLeftEdgeOnFirstPage) يتجاهل الصفحة الحالية. من التغييرات الأخرى التي تم إدخالها هنا أنّ مكوّن Pager لم يعُد يملأ الشاشة تلقائيًا، وبدلاً من ذلك، يجب إضافةModifier.fillMaxSize()لتحقيق هذا السلوك. (I9d3aa) - أعدنا تسمية
createAnchorsإلىcreateRevealAnchorsفي واجهة برمجة التطبيقات "السحب للكشف" (If5999) - لقد أزلنا
RevealScopeمن واجهة برمجة التطبيقات "التمرير السريع للكشف عن المحتوى". (Ie4ad5) - لقد أزلنا Revealing وRevealed من
RevealValueفي واجهة برمجة التطبيقات "التمرير السريع للكشف". (I8dbc5) - أعدنا تسمية
SwipeDirectionإلىRevealDirectionفي واجهة برمجة التطبيقات "التمرير السريع للكشف". (I7472f) - لقد غيّرنا توقيع المَعلمة
positionalThresholdللدالةrememberRevealStateالخاصة بـSwipeToReveal. (I29c0a) - أضفنا المَعلمة الجديدة
overscrollEffectإلىScalingLazyColumnوTransformingLazyColumnوScreenScaffold. (I0cee8) - عند استخدام
PagerDefaults#snapFlingBehaviour، تم استبدال المَعلمةpagerSnapDistanceبمَعلمة IntmaxFlingPages، والتي يمكن استخدامها لتحديد الحدّ الأقصى لعدد الصفحات التي يجب أن يمرّرها Pager. (I8cfc0) - يحتوي Wear Pager الآن على
PagerScopeخاص به بدلاً من استخدامPagerScopeCompose Foundation. (I9195b) - أضفنا دعمًا لـ
lineHeightفي "النص المنحني" (I1c936) - أضفنا
initialAnchorItemIndexوinitialAnchorItemOffsetإلىTransformingLazyColumnStateوrememberTransformingLazyColumnStateلكي يمكن تحديد موضع التمرير الأولي فيTransformationLazyColumn. (I0a0d5) - إيقاف
runWithTimingDisabledنهائيًا واستخدامrunWithMeasurementDisabledبدلاً منه، لأنّه يصف السلوك بشكلٍ أوضح، أي أنّه يتم إيقاف جميع المقاييس مؤقتًا. بالإضافة إلى ذلك، يجب عرض الفئة الرئيسيةMicrobenchmarkScopeلأنّه لا يمكن إعادة تعريف الدالةrunWithMeasurementDisabledلفتح الوصول، لأنّها مضمّنة. (I9e23b، b/389149423، b/149979716) - لقد أضفنا
TransformingLazyColumnItemScrollProgress.Unspecifiedإلى واجهة برمجة التطبيقات لتجنُّب عرض الإعلانات في مربّعات علىTransformingLazyColumnItemScrollProgress. (I0835d)
إصلاح الأخطاء
- تحسين مستند Kdoc الخاص بـ
CurvedTextStyle(Id45e3) - لقد جعلنا
SwipeableV2(جزء من عملية تنفيذSwipeToReveal) داخليًا بدلاً من أن يكون متاحًا للجميع، ولكنّه يقتصر على مجموعة المكتبة. (Idbb94) - أضفنا اختبارات إلى
HierarchicalFocusCoordinator(I1ce54، b/395548918) - أجرينا تحسينات على
SwipeToRevealفي عيّنات Wear Compose Foundation. (I5f307) - إصلاح البيانات الدلالية لمحور التمرير في
verticalScrollAxisRangeضمنTransformingLazyColumnلتسهيل الاستخدام (I68123) - تحسين أداء ردود الفعل اللمسية الدوّارة على Wear4+ من خلال إزالة سلاسل الخلفية غير الضرورية (I39cfe)
- غيِّر
SwipeDismissableNavHostلاستخدامPredictiveBackNavHostفقط على الإصدار 36 من واجهة برمجة التطبيقات والإصدارات الأحدث. (I59bed) - أضفنا إجراء وقائيًا لتجنُّب حدوث عُطل عند الوصول إلى إعدادات "تقليل الحركة". (I01e2c)
- لقد نفّذنا عملية الجلب المُسبَق لتطبيق
TransformingLazyColumnمن أجل تقليل التشويش (Icca88).
الإصدار 1.5.0-alpha09
29 يناير 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha09. يتضمّن الإصدار 1.5.0-alpha09 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- في
CurvedTextStyle، قسّمنا تباعُد الأحرف إلى تباعُد الأحرف في اتجاه عقارب الساعة وتباعُد الأحرف في عكس اتجاه عقارب الساعة. هذا الإجراء مطلوب لأنّ الحروف التي تدور في اتجاه عقارب الساعة تتوسّع من خط الأساس، بينما الحروف التي تدور في عكس اتجاه عقارب الساعة تتضيّق (لذا يجب زيادة تباعد الحروف) (I4b848). - تم تبسيط
CompositionLocalLocalReduceMotionلعرض قيمة منطقية بدلاً من عنصرReduceMotion. تم الآن إيقاف واجهةReduceMotionنهائيًا. يمكن استبدال الاستدعاءات السابقة، مثلLocalReduceMotion.current.enabled()، بالاستدعاءLocalReduceMotion.current(I4937f) - في
PagerDefaults، تمت إعادة تسميةsnapAnimationSpecإلىSnapAnimationSpec. (I20c9a)
الإصدار 1.5.0-alpha08
15 يناير 2025
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha08. يتضمّن الإصدار 1.5.0-alpha08 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد عدّلنا جميع مكتبات Wear Compose إلى وضع "واجهة برمجة التطبيقات الصريحة". (Iebf9f)
- لقد جعلنا مَعلمة الرسوم المتحركة الخاصة بميزة "المحاذاة التلقائية" في أداة عرض الصفحات جزءًا من
PagerDefaults. (Ifff64) - أضفنا مَعلمة إزاحة إلى
SwipeToDismissBoxState. (I586bd)
إصلاح الأخطاء
- يمكن الآن استخدام تقنية اللمس على المنصات الدوّارة في إصدارات Wear OS بعد الإصدار V (Idb03e).
الإصدار 1.5.0-alpha07
11 ديسمبر 2024
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha07. يتضمّن الإصدار 1.5.0-alpha07 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- توفّر
TransformingLazyColumnStateالآن طريقة لمراقبة مستوى التقدّم الحالي في التمرير استنادًا إلى فهارس عناصر الارتساء. (I72b01) - أضفنا صورًا متحركة إلى
TransformingLazyColumnعند إضافة عناصر وإزالتها ونقلها، إذا كانت تتضمّنModifier.animateItemالجديد. (Iecb9c) - تعرض
TransformingLazyColumnالآن قيمًا لـbeforeContentPaddingوafterContentPadding. (Iccd5f) - توفّر
TransformingLazyColumnالآنLocalTransformingLazyColumnItemScopeالمحلي الخاص بالتصميم، والذي يمكن للمكوّنات (مثلCardوButtonفي Material3) استخدامه لتغيير الشكل تلقائيًا عند وضعه داخلTransformingLazyColumn. يمكن للمتصلين إيقاف ميزة "التغيير التلقائي للشكل" باستخدام أداة التغليف الجديدةTransformExclusion. (I1652f)
إصلاح الأخطاء
- عدّلنا الحدّين الأدنى والأقصى لسرعات الإلقاء الدوار على الأجهزة التي تستهدف الإصدار U والإصدارات الأحدث. (I33559)
- تم إصلاح عُطل حدث إذا لم يكن العنصر في
TransformingLazyColumnيحتوي على أي عناصر قابلة للإنشاء (Idb99d) - أتحنا استخدام ردود الفعل اللمسية الدوّارة على الإصدار Android Vanilla ice cream.
ScrollFeedbackProvider(Ibc553) - لقد طبّقنا مساحة أكبر للّمس عند استخدام
SwipeToRevealمن أجل تقليل فرص بدء التمرير سريعًا عن طريق الخطأ عند التمرير عموديًا. (Ic0672) - عدّلنا
SwipeDismissableNavHostلاستخدامPredictiveBackHandlerعندما يكون متاحًا مع المستوى 35 من واجهة برمجة التطبيقات والإصدارات الأحدث. في هذه الحالة، سيتم تطبيق رسوم متحركة جديدة. (I08c11)
الإصدار 1.5.0-alpha06
13 نوفمبر 2024
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha06. يتضمّن الإصدار 1.5.0-alpha06 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد بسّطنا
ScrollInfoProviderلـPagerStateمن خلال إزالة المَعلمةorientationالتي لم تعُد ضرورية. السلوك الجديد هو أن يظلّTimeTextفي مكانه عند تصفّح المحتوى أفقيًا وعموديًا. (I71767) - تم تقديم
TransformingLazyColumnفي الإصدارات السابقة. سنزيل الآن أسماءLazyColumnالمستعارة (التي كانت تتم إعادة توجيهها إلىTransformingLazyColumn) لصالح الاسم الجديدTransformingLazyColumn. أزلنا أيضًا السمةheightالخاصة بـTransformingLazyColumnVisibleItemInfo، لذا يُرجى استخدامmeasuredHeightبدلاً منها. (I0ea1e) - لقد غيّرنا
PagerDefaults.snapFlingBehaviorsnapAnimationSpecمن مواصفاتTweenإلى مواصفاتSpring.(I10d02، b/349781047، b/303807950) - لقد رقّينا الإصدار
LocalReduceMotionCompositionLocalإلى إصدار ثابت (Ia6f32)
إصلاح الأخطاء
- عدّلنا
Modifier.rotaryScrollableلاستخدامfocusTargetWithSemanticsمن أجل توفير دعم أفضل للدلالات في أجهزة التحكم الدوّارة. (Ief0a0) - لقد عدّلنا الحد الأدنى من إصدار واجهة برمجة التطبيقات المطلوب إلى 1.7.4 لمكتبات Compose. (I88b46)
- أوقفنا ميزة تغيير شكل العرض في
TransformingLazyColumnكحلّ بديل لمشكلة قصّ المحتوى. (I3dfb8) - لقد أصلحنا خطأً كان يتسبّب في اختفاء العناصر بعد تجاوز حد التمرير باستخدام
TransformingLazyColumn(Id7668) - أضفنا
LazyLayoutSemanticsإلىTransformingLazyColumn. (Ia8f56)
الإصدار 1.5.0-alpha05
30 أكتوبر 2024
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha05. يتضمّن الإصدار 1.5.0-alpha05 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا إمكانية استخدام
animateScrollToعلىTransformingLazyColumnStateحتى يمكن تحريك عملية الانتقال إلى عنصر. (I4097d) - أضفنا
requestScrollToفيTransformingLazyColumnStateلتأجيل الانتقال إلى المقياس التالي. (I20a5e) - أتحنا استخدام
contentPaddingفيTransformingLazyColumn. (I3a69c)
إصلاح الأخطاء
- لقد أصلحنا خللاً في عرض
TransformingLazyColumnعندما يكون ارتفاع المحتوى أقصر من ارتفاع الشاشة. (I6c3e1) - يتتبّع
ScrollInfoProvderTransformingLazyColumnالآن العنصر الأول بشكل صحيح. (I1e4a3) - يحفظ
TransformingLazyColumnStateالآن حالته (anchorItemIndexوanchorItemScrollOffset). (I3d265)
الإصدار 1.5.0-alpha04
16 أكتوبر 2024
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha04. يتضمّن الإصدار 1.5.0-alpha04 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أعدنا تسمية Wear Compose Foundation
LazyColumnإلىTransformingLazyColumnليكون التمييز بينه وبين Compose FoundationLazyColumnأكثر وضوحًا. (I0608b) - تمت إضافة دعم أداة التدوير إلى أدوات عرض الصفحات الأفقية/العمودية، ما يتيح للمستخدمين التنقّل في أدوات عرض الصفحات باستخدام أجهزة إدخال البيانات عبر وحدة تحكم دورانية. (I9770d)
- لقد عدّلنا
PagerDefaultsالجديد لتوضيح أنّ أداة تقسيم المحتوى إلى صفحات ستنتقل إلى الصفحة تلقائيًا. (Iff7d0) - أصبحت
TransformingLazyColumnItemScrollProgressالآن فئة قيمة من المفترض أن تحسّن الأداء. (Ic399e) - يتوافق
TransformingLazyColumnالآن مع أجهزة التحكم الدوّارة بدون الحاجة إلى أي إعدادات إضافية. (I05206) - يتوافق
TransformingLazyColumnStateالآن معscrollToItem. (I507b3) - إزالة
@ExperimentalWearFoundationApiمن واجهة برمجة التطبيقاتSwipeToReveal(I34a66)
الإصدار 1.5.0-alpha03
2 أكتوبر 2024
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha03. يتضمّن الإصدار 1.5.0-alpha03 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا إمكانية التمرير في اتجاهَين في
SwipeToReveal، وذلك في الحالات النادرة التي لا تتيح فيها الشاشة الحالية إغلاقها من خلال التمرير. . لا يزال الإعداد التلقائي هو التمرير سريعًا للكشف عن المحتوى عند التمرير من اليمين إلى اليسار فقط، ويُنصح بشدة باحترام السلوك التلقائي لتجنُّب التعارض مع التمرير سريعًا للإغلاق. (Ifac04) - لقد عدّلنا
LazyColumnStateلتجاوزcanScrollForwardوcanScrollBackward، ما يؤدي الآن إلى إيقاف التمرير عندما يكون العنصر الأول أو الأخير في وسط الشاشة تمامًا. (Ia77d7) - أضفنا مكوّنَين جديدَين هما
HorizontalPagerوVerticalPagerيتناولان المشاكل الشائعة، مثل التعامل مع التركيز والتفاعل مع الإيماءة السريعة التي يوفّرها النظام لإغلاق الشاشة والتي قد تحدث على Wear. (I2902b) - أضفنا إمكانية استخدام
LazyColumnلعرضkeyوcontentTypeالخاصين بالعميل من خلالlayoutItems. (I1bd9c)
إصلاح الأخطاء
- عدّلنا الرسوم المتحركة للنص المنحني لتصبح أكثر سلاسة، وذلك باستخدام علامات الطلاء. (I73a15)
- عدّلنا مستندات Material Dialog لتوضيح أنّه لا يتم استدعاء
onDismissRequestبعد ضبط علامة العرض على "خطأ". (Ifd8d6) - أصلحنا خطأً في الصورة المتحركة الخاصة بالخلفية الضبابية في مربّع حوار Material (I126bf).
الإصدار 1.5.0-alpha02
18 سبتمبر 2024
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha02. يتضمّن الإصدار 1.5.0-alpha02 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا إمكانية استخدام Wear Compose
LazyColumnمعScreenScaffold(وأضفنا عملية تنفيذScrollInfoProviderلـLazyColumnState). (Ib8d29) - أضفنا
viewportSizeإلىLazyColumnLayoutInfo. (I4187f)
إصلاح الأخطاء
- أصلحنا خطأً بحيث يتم الآن إيقاف التمرير الدائري في
ScalingLazyColumnعند ضبط العلامةuserScrollEnabledعلىfalse. (I490ab، b/360295825) - أجرينا إصلاحًا لخطأ بهدف معالجة المساحة المتروكة العمودية غير المتوقّعة في النص المنحني. أصبح ارتفاع النص المنحني يتطابق بشكل أكبر مع المساحة الفعلية التي يشغلها النص. يُرجى العِلم أنّ هذا التغيير سيؤدي على الأرجح إلى إيقاف اختبارات لقطات الشاشة التي تتضمّن نصًا منحنيًا (Iaa6ef).
- لقد أعدنا إصدارًا سابقًا من إصلاح خطأ في
Dialogحيث تم استدعاء معاودة الاتصالonDismissRequestعندما تم ضبطshowDialogعلى "خطأ"، لأنّ ذلك أدى في بعض الحالات إلى استدعاءonDismissRequestعدة مرات. (I64656)
الإصدار 1.5.0-alpha01
4 سبتمبر 2024
تم طرح androidx.wear.compose:compose-*:1.5.0-alpha01. يتضمّن الإصدار 1.5.0-alpha01 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد أضفنا
LazyColumnجديدًا إلى مكتبة Wear Compose Foundation مع واجهات برمجة التطبيقاتLazyColumnStateوLazyColumnScopeالمرتبطة به. يشكّل ذلك الأساس لإنشاء تأثيرات قابلة للتخصيص لتغيير الحجم والشكل باستخدام Wear Compose. (Ib3b22) - لقد أضفنا نسخة مفهرسة من
itemsIndexedإلىLazyColumnScopeكجزء من واجهة برمجة التطبيقات الجديدةLazyColumn. (Ib4a57) - أضفنا معدِّلات
LazyColumnمن أجل إتاحة سلوكيات تغيير الحجم والشكل. (Ie229a) - تمت ترقية
HierarchicalFocusCoordinatorإلى إصدار ثابت. (I31035) - أضفنا إمكانية ضبط تباعد الأحرف في النص المنحني. (I3c740)
- تمت إضافة المَعلمة
rotationLockedإلىCurvedLayout.curvedComposableلمنع تدوير المكوّنات. (I66898) - تمت إزالة واجهة برمجة التطبيقات المؤقتة
LocalUseFallbackRippleImplementationمن wear material وwear material3 (I62282) - تمت إزالة
WearDevices.SQUAREمن المعاينة المتعدّدة@WearPreviewDevices(I11c02)
إصلاح الأخطاء
- يعمل
SwipeToRevealالآن على وضع العناصر التي تم الكشف عنها في الجزء المرئي من الشاشة، ما يساعد عند استخدامSwipeToRevealداخل قائمة، وبالتالي يمكن التفاعل مع العناصر دائمًا ولا تخرج أبدًا عن نطاق الشاشة. (I38929) - تعمل السمة
SwipeToRevealالآن على إعادة ضبط قيمةlastActionTypeإلى None عند اكتمالanimatedTo. (I59b03) - تم تحسين المستندات الخاصة بالمعلَمة الجديدة
rotationLockedعلىcurvedComposable. (Ifbd57) - تم إصلاح عُطل يحدث عند تمرير
NaNإلىperformFlingفيScalingLazyColumnSnapFlingBehavior. (Ic13da) - تم إصلاح الخلل في أداة تعديل حجم التصميم المنحني (I0fedf)
- أضفنا إمكانية تحديد تباعد الأحرف في "sp". (I9f6e3)
- لقد أصلحنا خطأ في Material2 Dialog حيث لم يتم استدعاء
onDismissRequestعند إخفاء مربّع الحوار (I64656) - تمت إعادة تسمية
LayoutCoordinates.introducesFrameOfReferenceإلىLayoutCoordinates.introducesMotionFrameOfReferenceلتعكس الغرض منها بشكل أفضل. تمت إعادة تسمية الدالة ذات الصلة لحساب الإحداثيات استنادًا إلى هذا العَلَم. (I3a330)
الإصدار 1.4
الإصدار 1.4.1
12 فبراير 2025
تم طرح androidx.wear.compose:compose-*:1.4.1. يتضمّن الإصدار 1.4.1 هذه التعديلات.
إصلاح الأخطاء
- لقد اتّخذنا إجراءات وقائية لتجنُّب حدوث عُطل عند الوصول إلى إعدادات "تقليل الحركة" العامة، والتي تم تفعيلها على بعض المنصات التي لم يتم توفير هذا الإعداد فيها. (I01e2c)
الإصدار 1.4.0
4 سبتمبر 2024
تم طرح androidx.wear.compose:compose-*:1.4.0. يتضمّن الإصدار 1.4.0 هذه التعديلات.
التغييرات المهمة منذ الإصدار 1.3.0
- تتيح السمتان
ScalingLazyColumnوPickerالآن إدخال البيانات عبر وحدة تحكم دورانية تلقائيًا، لذا يُنصح بإزالة معالجة أداة التحكّم الدوّارة الصريحة والاعتماد على السلوك التلقائي للنظام. استخدِم المَعلمةrotaryScrollableBehaviorإذا لزم الأمر لضبط سلوك التمرير أو المحاذاة. بالنسبة إلى سلوك المحاذاة، ننصحك بتوفير إمكانات سلوك المحاذاة والتمرير باللمس باستخدام المَعلمةflingBehavior. -
Modifier.rotaryScrollableهو معدِّل جديد يربط أحداث التدوير بالحاويات القابلة للتمرير، ما يتيح للمستخدمين التمرير باستخدام زر التاج أو الإطار الدوّار على جهاز Wear OS. - توفّر
SwipeDismissableNavHostالآن مؤثرًا حركيًا عند الدخول للانتقالات داخل التطبيق. - يظهر الرمز
PositionIndicatorالآن تلقائيًا عند عرض شاشة لأول مرة.
تغييرات إضافية
- للحصول على مجموعة أكثر اكتمالاً من التغييرات التي تم تقديمها في الإصدار 1.3.0، يُرجى الاطّلاع على ملاحظات الإصدار beta01.
الإصدار 1.4.0-rc01
21 أغسطس 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-rc01. يتضمّن الإصدار 1.4.0-rc01 هذه التعديلات.
- لقد عدّلنا تبعيات Compose إلى الإصدار 1.7.0-rc01 وثبّتنا Wear Compose Navigation على androidx.lifecycle 2.8.3.
الإصدار 1.4.0-beta03
12 يونيو 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-beta03. يتضمّن الإصدار 1.4.0-beta03 هذه التعديلات.
إصلاح الأخطاء
- لقد عدّلنا
Modifier.rotaryScrollableلاستبدال استخدام "قابل للتركيز" بـ "focusTarget"، ما يؤدي إلى تحسين الأداء. (Id294b) - لقد حللنا مشكلة كانت تتسبّب في تكرار
ProgressIndicatorإعلانها ضمنTalkBack. (I94563) - لقد عدّلنا الملفات الأساسية لمكتبة Wear Compose. (I3cbc3)
الإصدار 1.4.0-beta02
29 مايو 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-beta02. يتضمّن الإصدار 1.4.0-beta02 هذه التعديلات.
إصلاح الأخطاء
- لقد زدنا عرض الحدود الذي يتم تمريره إلى قارئ الشاشة من النص المنحني من أجل حلّ المشاكل المتعلّقة بالاقتطاع (Id865f).
- لقد قصرنا حدود
HorizontalPageIndicatorالذي تم تمريره إلى برامج قراءة الشاشة، ففي السابق كان المؤشر يشغل الشاشة بأكملها (Id8d7a).
الإصدار 1.4.0-beta01
14 مايو 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-beta01. يتضمّن الإصدار 1.4.0-beta01 هذه التعديلات.
يشير الإصدار 1.4-beta01 من Compose for Wear OS إلى أنّ هذا الإصدار من المكتبة يتضمّن جميع الميزات وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء الأجزاء التي تم وضع علامة "تجريبية" عليها). يتضمّن الإصدار 1.4 من Wear Compose الوظائف الجديدة التالية:
- أضفنا
Modifier.rotaryScrollable، وهو معدِّل جديد يربط الأحداث الدوّارة بالحاويات القابلة للتمرير، ما يتيح للمستخدمين التمرير من خلال زر التاج أو الإطار الدوّار على جهاز Wear OS. بالإضافة إلى ذلك، يتيحScalingLazyColumnوPickerالآن إدخال البيانات باستخدام أداة التحكّم الدوّارة تلقائيًا. استخدِم المَعلمةrotaryScrollableBehaviorلضبط سلوك التمرير أو المحاذاة. بالنسبة إلى سلوك المحاذاة، يُنصح بتوفير المحاذاة من خلال المَعلمةflingBehaviorأيضًا للتمرير باللمس. - توفّر
SwipeDismissableNavHostالآن مؤثرًا حركيًا عند الدخول للانتقالات داخل التطبيق. - يظهر الرمز
PositionIndicatorالآن تلقائيًا عند عرض شاشة لأول مرة. - تمت إضافة
SelectableChipوSplitSelectableChipكخيار بديل لـToggleChip. استخدِم هذا الخيار معRadioButtonلتوفير دلالات قابلة للتحديد بدلاً من دلالات قابلة للتبديل لتسهيل الاستخدام. - تتيح السمة
ListHeaderالآن تعديلات الارتفاع عندما تحتاج المحتويات إلى ارتفاع إضافي لاستيعاب أحجام الخطوط الكبيرة.
إصلاح الأخطاء
- لقد أصلحنا الخطأ الذي كان يتسبب في إعلان الشرائح القابلة للاختيار عن النقر المزدوج للتبديل عندما تكون الشرائح مختارة. (I7ed88)
الإصدار 1.4.0-alpha08
1 مايو 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-alpha08. يتضمّن الإصدار 1.4.0-alpha08 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أجرينا التغييرات التالية على واجهة برمجة التطبيقات الجديدة الخاصة بأزرار التحكم الدوّارة: أعدنا تسمية
Modifier.rotaryإلىModifier.rotaryScrollable، وأعدنا تسمية الواجهةRotaryBehaviorإلىRotaryScrollableBehaviorوالدالةhandleScrollEventإلىperformScroll، وأعدنا تسميةRotaryScrollableAdapterإلىRotaryScrollableLayoutInfoProviderوأزلنا السمةscrollableState. (I0c8a6) - أجرينا تغييرات إضافية على واجهة برمجة التطبيقات الخاصة بأداة التحكم الدوّارة: أعدنا تسمية
RotaryScrollableLayoutInfoProviderإلىRotarySnapLayoutInfoProvider(لأنّ هذا الموفّر مطلوب فقط لأداة التحكم الدوّارة مع ميزة "المحاذاة")، وغيّرنا نوع المَعلمةsnapOffsetفيRotaryScrollableDefaults.snapBehavior snapOffsetمن Int إلى Dp. (Iddebe) - أعدنا تسمية المَعلمة
clickInteractionSourceفيSplitSelectableChipلتصبحcontainerInteractionSource. (Ia8f84) - لقد عدّلنا أسماء مَعلمات معاودة الاتصال عند النقر في
SplitSelectableChip، وذلك منonClickإلىonSelectionClickومنonBodyClickإلىonContainerClick. (I32237)
إصلاح الأخطاء
- عدّلنا الحشو الأفقي لعنصر
PositionIndicatorإلى 2dp (كان 5dp)، وذلك لإصلاح خلل يتداخل فيهPositionIndicator(شريط التمرير) مع المحتوى القابل للتمرير. يُرجى العِلم أنّ هذا التغيير من المتوقّع أن يؤدي إلى إتلاف لقطات الشاشة الحالية التي تتضمّنPositionIndicatorبسبب تغيير المساحة المتروكة. (I57472) - لقد حسّنّا مستندات واجهة برمجة التطبيقات الجديدة الخاصة بأجهزة التحكم الدوّارة من خلال توضيح الاختلافات بين أجهزة التحكم الدوّارة ذات الدقة المنخفضة والدقة العالية. (I63abe)
- لقد عالجنا خطأ خارج النطاق في
SwipeDismissableNavHostكان من الممكن أن يحدث عندما تكون قيم ألفا المستوفاة أقل من صفر. (Ib75a1، b/335782510)
الإصدار 1.4.0-alpha07
17 أبريل 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-alpha07. يتضمّن الإصدار 1.4.0-alpha07 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا
Modifier.rotary، وهو معدِّل جديد يربط الأحداث الدوّارة بالحاويات القابلة للتمرير، ما يتيح للمستخدمين التمرير من خلال زر التاج أو الإطار الدوّار على جهاز Wear OS. بالإضافة إلى ذلك، تتيحScalingLazyColumnوPicker الآن إدخال البيانات عبر وحدة تحكم دورانية تلقائيًا، مع توفّر عمليات تحميل زائد جديدة تتضمّن المَعلمةrotaryBehaviorلتحديد إعدادات التمرير أو المحاذاة. إذا تم ضبط المَعلمةrotaryBehaviorعلى snap، ننصحك بتوفير snap من خلال المَعلمةflingBehaviorأيضًا، وذلك للتمرير باللمس. (I2ef6f) - سيتم استبدال مصادر
NestedScroll"السحب والإفلات" بمصادرUserInputوSideEffectلاستيعاب التعريف الموسّع لهذه المصادر الذي يتضمّن الآن الصور المتحركة (Side Effect) وعجلة الماوس ولوحة المفاتيح (UserInput). (I40579) - أضفنا الرمزين
SelectableChipوSplitSelectableChipلتوضيح الفرق بين عناصر التحكّم في التبديل، مثلSwitch/Checkbox، وعناصر التحكّم القابلة للاختيار، مثلRadioButton. يحلّ هذا محلّ عمليات التحميل الزائد التي تمت إضافتها سابقًا للدالةToggleChip/SplitToggleChipمع المَعلماتselectionControl. (Ia0217) - تم تعديل معدِّل إذن الوصول إلى
IndeterminateStrokeWidthفيProgressIndicatorDefaultsإلى "متاح للجميع". (I5b5a4)
الإصدار 1.4.0-alpha06
3 أبريل 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-alpha06. يتضمّن الإصدار 1.4.0-alpha06 هذه التعديلات.
إصلاح الأخطاء
- لقد أضفنا مسودة داخلية لتوافق أداة التحكم الدوّارة، وذلك كجزء من الجهد الأكبر لنقل سلوك أداة التحكم الدوّارة إلى AndroidX من Horologist. (I617d1)
- لقد أضفنا مسودة داخلية لتوفير ميزة تقنية اللمس، وذلك في إطار الجهود الأوسع نطاقًا لنقل سلوك أداة التدوير إلى AndroidX من Horologist. (I5568a)
الإصدار 1.4.0-alpha05
20 مارس 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-alpha05. يتضمّن الإصدار 1.4.0-alpha05 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد أتحنا للجميع الوصول إلى السمتَين
initialCenterItemIndexوinitialCenterItemScrollOffsetالخاصتَين بـScalingLazyListState. (I0c616) - لقد أتحنا
FullScreenStrokeWidthمنProgressIndicatorDefaultsللجميع. (Ibea23)
إصلاح الأخطاء
- لقد حسّنّا أداء
PositionIndicatorمن خلال تقليل عدد طلبات البحث إلىlayoutInfoمنScalingLazyColumn. (Idc83d)
الإصدار 1.4.0-alpha04
6 مارس 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-alpha04. يتضمّن الإصدار 1.4.0-alpha04 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا حمولة زائدة جديدة للدالتَين
ToggleChipوSplitToggleChipتأخذ المَعلمةselectionControlبدلاً من المَعلمةtoggleControl. يجب استخدام هذه السمة مع عنصر التحكّمRadioButtonلتوفير دلالات قابلة للتحديد بدلاً من دلالات قابلة للتبديل لتسهيل الاستخدام (I1d6d9) - لقد عدّلنا أسماء المَعلمات للحِمل الزائد الجديد
selectionControlمنonSelectedإلىonSelectلكلّ منToggleChipوSplitToggleChip(I1a971)
الإصدار 1.4.0-alpha03
21 فبراير 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-alpha03. يتضمّن الإصدار 1.4.0-alpha03 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم إيقاف برنامج تضمين
Modifier.inspectableنهائيًا. ستؤدي واجهة برمجة التطبيقات هذه إلى إبطال المعدِّل أكثر من اللازم، لذا لا يُنصح باستخدامها الآن. ننصح المطوّرين بتنفيذ طريقةinspectableProperties()فيModifierNodeElementإذا كانوا يريدون عرض خصائص عنصر التعديل للأدوات. (Ib3236)
إصلاح الأخطاء
- أصلحنا خطأ في المستندات بشأن التعليقات التوضيحية
WearPreview*. (Id526d)
الإصدار 1.4.0-alpha02
7 فبراير 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-alpha02. يتضمّن الإصدار 1.4.0-alpha02 هذه التعديلات.
إصلاح الأخطاء
- أصلحنا خطأ في ميزة "التمرير سريعًا للكشف"، حيث كان من الممكن التفاعل مع إجراء تم تنفيذه (وإلغاؤه) على عنصر واحد من خلال بدء التمرير سريعًا لعنصر آخر.(Ide059)
- لقد عدّلنا
ListHeaderلتوفير تعديلات على الارتفاع عندما يحتاج المحتوى إلى ارتفاع إضافي لاستيعاب أحجام الخطوط الكبيرة. (I7290c، b/251166127)
الإصدار 1.4.0-alpha01
24 يناير 2024
تم طرح androidx.wear.compose:compose-*:1.4.0-alpha01. يتضمّن الإصدار 1.4.0-alpha01 هذه التعديلات.
الميزات الجديدة
- أضفنا صورة متحركة عند الدخول إلى
SwipeDismissableNavHostللانتقالات داخل التطبيق.(cfeb79a) - يظهر الرمز
PositionIndicatorالآن تلقائيًا عند عرض شاشة لأول مرة. تم إجراء هذا التغيير للمساعدة في استيفاء إرشادات جودة Wear OS. ويعني ذلك أنّه يجب تعديل اختبارات لقطات الشاشة على الشاشات التي تتضمّنPositionIndicator، لأنّPositionIndicatorلم يكن يتم عرضه من قبل. (419cef7)
تغييرات واجهة برمجة التطبيقات
- لقد أضفنا واجهة برمجة تطبيقات جديدة لتأثير التموج في مكتبتَي
wear:compose-materialوwear:compose-material3، وهي تحلّ محلّrememberRippleالمتوقّفة نهائيًا. تضيف أيضًاCompositionLocalوLocalUseFallbackRippleImplementationمؤقتَين للعودة إلى استخدام واجهات برمجة التطبيقاتrememberRipple/RippleThemeالمتوقّفة نهائيًا في "مكوّنات Material". ستتم إزالة هذا الخيار في الإصدار الثابت التالي، وهو يهدف فقط إلى تقديم مساعدة مؤقتة في عملية نقل البيانات في الحالات التي تقدّم فيهاRippleThemeمخصّصة. يمكنك الانتقال إلى developer.android.com للاطّلاع على معلومات حول عملية نقل البيانات والمزيد من المعلومات الأساسية حول هذا التغيير. (af92b21) - عدّلنا
ColorSchemeليصبح غير قابل للتغيير، ما يجعل تعديل الألوان الفردية أقل كفاءة، ولكنّه يجعل الاستخدام الأكثر شيوعًا للألوان أكثر كفاءة. ويعود سبب هذا التغيير إلى أنّ معظم التطبيقات لن يكون لديها تحديث الألوان الفردية كحالة استخدام رئيسية. لا يزال ذلك ممكنًا، ولكن سيتم إعادة إنشاء المزيد من العناصر مقارنةً بالسابق، ما سيؤدي إلى تقليل عدد عمليات الاشتراك في الحالة بشكل كبير في جميع رموز Material، وسيؤثر ذلك في تكلفة التهيئة ووقت التشغيل لحالات الاستخدام الأكثر شيوعًا. (f5c48b7) - تم تعديل مكوّنات Wear material وWear material3 التي تعرض
MutableInteractionSourceفي واجهة برمجة التطبيقات الخاصة بها لتصبح تعرض الآنMutableInteractionSourceقابلاً للقيم الخالية، والقيمة التلقائية هي null. لا توجد تغييرات دلالية هنا: يعني تمرير قيمة فارغة أنّك لا تريد نقلMutableInteractionSourceإلى الأعلى، وسيتم إنشاؤه داخل المكوّن إذا لزم الأمر. يسمح التغيير إلى قيمة فارغة لبعض المكوّنات بعدم تخصيصMutableInteractionSourceمطلقًا، ويسمح لمكوّنات أخرى بإنشاء مثيل فقط عند الحاجة، ما يحسّن الأداء في جميع هذه المكوّنات. إذا كنت لا تستخدمMutableInteractionSourceالذي تمرّره إلى هذه المكوّنات، ننصحك بتمرير قيمة فارغة بدلاً من ذلك. يُنصح أيضًا بإجراء تغييرات مماثلة في مكوّناتك. (f8fa920) - عدّلنا
rememberExpandableStateلحفظ حالة التوسيع. يضمن ذلك تخزين البيانات عند الانتقال إلى شاشة أخرى واستعادتها عند الرجوع إلى الشاشة الأصلية. (5c80095)
إصلاح الأخطاء
- عدّلنا الإعداد
ReduceMotionلاستخدام متتبِّع متوافق مع مراحل النشاط. (7c6b122) - عدّلنا أداة معالجة الأحداث Listener في
TouchExplorationStateProviderلتكون على دراية بدورة الحياة (be28b01) - أزلنا طبقة materialcore من
CompactButtonلتحسين الأداء (25db8e9) - لقد جعلنا
BasicSwipeToDismissBoxأكثر قوة في التعامل مع إزاحات NaN لتجنُّب الاستثناءات (b983739) - لقد عدّلنا
BasicSwipeToDismissBoxلضمان أن تكون قيم ألفا ضمن النطاق 0,1 - أصلحنا خطأً في
ToggleButtonوSplitToggleButtonوCheckboxوSwitchوRadioButtonلكي لا يتم تكرار إشعارات تسهيل الاستخدام (في السابق، كانت الأدوار الدلالية مكرّرة) (d11eeb7)
الإصدار 1.3
الإصدار 1.3.1
3 أبريل 2024
تم طرح androidx.wear.compose:compose-*:1.3.1. يتضمّن الإصدار 1.3.1 على هذه التعديلات.
إصلاح الأخطاء
- أصلحنا خطأ في ميزة "السحب للكشف"، حيث كان من الممكن التفاعل مع إجراء تم تنفيذه على عنصر واحد (وإلغاؤه) من خلال بدء سحب عنصر آخر. (Ide059)
الإصدار 1.3.0
24 يناير 2024
تم طرح androidx.wear.compose:compose-*:1.3.0. يتضمّن الإصدار 1.3.0 هذه التعديلات.
التغييرات المهمة منذ الإصدار 1.2.0
- أصبحت الفئة
SwipeToDismissBoxStateوالتعدادSwipeToDismissValueودالة الإضافةModifier.edgeSwipeToDismissجزءًا من الحزمةandroidx.wear.compose.foundation، بدلاً من الحزمةandroidx.wear.compose.material. تتيح لك هذه البنية المُعدَّلة تنفيذ ميزة معالجة الإيماءات بشكل مستقل عن اعتبارات التصميم الأخرى. يتم التعامل بشكل منفصل مع سير عمل التصميم المتعدد الأبعاد، مثل تطبيق الألوان من مظهر تم إعداده. - تساعدك الفئتان
SwipeToRevealCardوSwipeToRevealChipفي تنفيذrecommended swipe-to-reveal guidance. يوضّح الصفSwipeToRevealSampleكيفية استخدام هذه المكوّنات. أدخلنا في الإصدار 1.3.0-alpha02 تغييرًا يؤدي إلى زيادة ارتفاع العنصرَين
ChipوToggleChipمن أجل توفير دعم أفضل لتغيير حجم الخط الذي يختاره المستخدم. ويمكن أن يؤدي ذلك إلى حدوث بعض الاقتصاص. لحلّ هذه المشكلة، يستخدم شكلlargeالخاص بـMaterialThemeالآن نصف قطر أكبر للزاوية (26 وحدة بكسل مستقلة عن الكثافة بدلاً من 24 وحدة بكسل مستقلة عن الكثافة). تستخدم الكائنانChipوToggleChipنصف قطر الزاوية الجديد هذا لتجنُّب قص المحتوى في زوايا Chip وToggleChip.- لم يتغير معظم
ChipsوToggleChips، نظرًا إلى الارتفاع التلقائي البالغ 52 وحدة بكسل مستقلة عن الكثافة. ومع ذلك، قد تؤدي عناصرChipوToggleChipالتي تحتوي على أسطر متعددة من نص التصنيف الأساسي أو الثانوي، أو التي تم تجاوز ارتفاعها، إلى تعذُّر إجراء اختبارات لقطات الشاشة.
- لم يتغير معظم
تغييرات إضافية
للحصول على مجموعة أكثر اكتمالاً من التغييرات التي تم تقديمها في الإصدار 1.3.0، يُرجى الاطّلاع على ملاحظات الإصدار beta01.
اقتراحات بشأن التنفيذ
- إذا كان تطبيقك يتيح للمستخدمين التحريك الأفقي في محتوى الشاشة، كما هو الحال في التطبيقات المستندة إلى الخرائط، أوقِف معالجة التمرير السريع من خلال ضبط
userSwipeEnabledعلىfalseفي العنصر القابل للإنشاءSwipeDismissableNavHost، وأدرِج زرًا يتيح للمستخدمين الانتقال إلى الشاشة السابقة. - لإيقاف الصور المتحركة لمؤشر موضع أثناء الصور المتحركة الخاصة بالظهور التدريجي وتغيير الموضع ضمن قائمة قابلة للتمرير، استخدِم العنصر
SnapSpec. - أثناء انتظار تحميل تطبيق وسائط للمحتوى المراد تشغيله، اعرض عنصر
Placeholderفارغًا قابل للإنشاء. - لإنشاء مجموعة من العناصر القابلة للتوسيع عند الطلب، ننصحك باستخدام الفئة التجريبية
ExpandableStateMapping.
الإصدار 1.3.0-rc01
10 يناير 2024
تم طرح androidx.wear.compose:compose-*:1.3.0-rc01. يتضمّن الإصدار 1.3.0-rc01 هذه التعديلات.
إصلاح الأخطاء
-
لقد عدّلنا
MaterialThemeالشكل الكبير لاستخدام نصف قطر زاوية مستديرة يبلغ 26 وحدة بكسل مستقل الكثافة، وسيتم الآن استخدام هذا الشكل من خلال Chip وToggleChip. هذا التغيير مطلوب لإتاحة تعديل الارتفاع عندما يحتاج المحتوى إلى ارتفاع إضافي لاستيعاب أحجام الخطوط الكبيرة، وإلا سيؤدي شكل الملعب الحالي إلى اقتصاص بعض المحتوى النصي.الشكل 1: اقتطاع النص في الزوايا الشكل 2: النص غير مقصوص. قد يؤدي هذا التغيير إلى حدوث خطأ في اختبارات لقطات الشاشة. (I2e6ae)
الإصدار 1.3.0-beta02
13 ديسمبر 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-beta02. يتضمّن الإصدار 1.3.0-beta02 هذه التعديلات.
إصلاح الأخطاء
- لقد أعدنا إتاحة حركة التمرير المقصودة في
BasicSwipeToDismissBox. تم تعديل ذلك في إصدار سابق، بحيث يحدث جزء الشريحة من الانتقال أثناء لمس الإصبع للشاشة. (Id8e76)
الإصدار 1.3.0-beta01
15 تشرين الثاني (نوفمبر) 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-beta01. يتضمّن الإصدار 1.3.0-beta01 هذه التعديلات.
يشير الإصدار 1.3-beta01 من Compose for Wear OS إلى أنّ هذا الإصدار من المكتبة يتضمّن جميع الميزات وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء الأجزاء التي تم وضع علامة "تجريبية" عليها). يتضمّن الإصدار 1.3 من Wear Compose الوظائف الجديدة التالية:
- تم نقل
SwipeToDismissBoxStateوSwipeToDismissValueوModifier.edgeSwipeToDismissمنandroidx.wear.compose.materialإلىandroidx.wear.compose.foundation، بالإضافة إلى عملية التنفيذ الأساسية الخاصة بميزة "التمرير السريع للإغلاق" فيBasicSwipeToDismissBox. يتيح ذلك استخدام ميزة التعامل مع الإيماءات الخاصة بالإغلاق عن طريق التمرير بشكل مستقل عن التصميم المتعدد الأبعاد، مثلاً منSwipeDismissableNavHostفيandroidx.wear.compose.navigation. لا يزال من المستحسن استخدامSwipeToDismissBoxمنandroidx.wear.compose.materialمع التصميم المتعدد الأبعاد، لأنّه يستمد الألوان منMaterialTheme، ثم يفوّض عملية التنفيذ المتبقية إلىBasicSwipeToDismissBox. - يتيح
SwipeDismissableNavHostالآن مَعلمةuserSwipeEnabledجديدة يمكن من خلالها إيقاف معالجة التمرير السريع على الشاشات التي لا تتطلّب ذلك. - تم تحسين طريقة التعامل مع التركيز في
BasicSwipeToDismissBoxباستخدامHierarchicalFocusCoordinator. - تتضمّن
SwipeToRevealعناصرSwipeToRevealCardوSwipeToRevealChipجديدة قابلة للإنشاء في Material تتّبع إرشادات تجربة المستخدم المقترَحة لكل منCardوChip. يتيح أيضًا التراجع عن الإجراء الثانوي. - يؤدي ضبط السمة
DefaultTextStyleالآن إلى إيقاف مساحة الحشو في الخط لضمان الاتساق على مستوى نظام Android الأساسي. - يتم الآن تعديل ارتفاع
ChipوToggleChipلاستيعاب المحتوى الذي زاد حجمه بسبب الخطوط الكبيرة التي تسهّل الاستخدام - يتضمّن
PositionIndicatorالآن مواصفات فردية للصور المتحركة الخاصة بالتلاشي والظهور وتغيير الموضع. لأسباب تتعلّق بالأداء، ننصح بإيقاف ميزتَي "التلاشي" و"تغيير الموضع" عند استخدامها مع القوائم القابلة للتمرير. - توفّر
ExpandableStateMappingطريقة جديدة لإنشاءExpandableStatesعند الحاجة إليها وليس بالضرورة بنطاق@Composable. - يتيح
Placeholderالآن إعادة الضبط إذا لم يعُد المحتوى في الحالة "جاهز". بالإضافة إلى ذلك، ينطبق إعداد "تقليل الحركة" الآن على تأثير التلألؤ والحركة الممحاة علىPlaceholder.
المشاكل المعروفة
- لا تظهر
PositionIndicatorفي البداية عند عرض شاشة لأول مرة. ننوي إجراء تغيير في إصدار 1.4 الأوّلي من ألفا بحيث يتم عرضه في البداية، ولكن بدون أي صورة متحركة.
تغييرات واجهة برمجة التطبيقات
- لقد أعدنا تسمية المستوى الأساسي
SwipeToDismissBoxإلىBasicSwipeToDismissBox. يؤدي ذلك إلى توضيح الفرق بين مكوّن مستوى Foundation ومستوى MaterialSwipeToDismissBox. يستمد الأخير الألوان منMaterialThemeلاستخدامها في الخلفيات الشفافة، ويفوّض عملية التنفيذ المتبقية إلىBasicSwipeToDismissBox. (Ibecfc) - لقد صنّفنا
rememberExpandableStateMappingعلى أنّه تجريبي وحسّنّا أداءexpandableItem. (I5f6bc) - استبدلنا الفئة
SwipeToRevealActionفي واجهات برمجة التطبيقات الخاصة ببطاقة MaterialSwipeToRevealوChip بواجهة برمجة تطبيقات مستندة إلى الخانات باستخدام عناصر قابلة للإنشاءSwipeToRevealPrimaryActionوSwipeToRevealSecondaryActionوSwipeToRevealUndoAction. يُرجى الاطّلاع على عينة الرمز البرمجي للاطّلاع على أمثلة حول كيفية استخدام واجهة برمجة التطبيقات الجديدة. (Ia8943) - استبدلنا علامات الرسوم المتحركة
PositionIndicatorبمعلَماتAnimationSpec. يمكن إيقاف الصور المتحركة الفردية من خلال تمريرsnapكـAnimationSpec. (I6c523)
إصلاح الأخطاء
- لقد أصلحنا خطأً ناتجًا عن نص منحني محدود عندما يكون الحجم محدودًا (I50efe)
- تم حلّ عُطل محتمل مرتبط بقيمة NaN في
curvedComposable(I970eb) - لقد أعدنا الصورة المتحركة التي تميّز تغيير الموضع على
PositionIndicator. (Ieb424) - لقد أزلنا طبقة material-core من Chip الخاص بمكتبة Material لتحسين أدائه. (If2dcb)
الإصدار 1.3.0-alpha08
18 أكتوبر 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-alpha08. يتضمّن الإصدار 1.3.0-alpha08 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا علامات فردية إلى عمليات التحميل الزائد في
PositionIndicatorللتحكّم في الصور المتحركة المختلفة:showFadeInAnimationوshowFadeOutAnimationوshowPositionAnimation. تم إيقاف واجهة برمجة التطبيقات السابقة نهائيًا، ويتم إعادة توجيه الطلبات إلى الواجهة الجديدة. لأسباب تتعلّق بالأداء وتجربة المستخدم المتّسقة، عند استخدامPositionIndicatorمع قائمة قابلة للتمرير، ننصح بإيقاف العلامتَينshowFadeInAnimationوshowPositionAnimation. إذا تم استخدامPositionIndicatorكمؤشر مستقل، مثلاً لتغيير مستوى الصوت، ننصحك بتفعيل جميع الصور المتحركة الثلاث. (I44294) - لقد أوقفنا Material
SwipeToDismissBoxStateوSwipeToDismissValueوedgeSwipeToDismissنهائيًا بعد نقل وظيفة "التمرير السريع للإغلاق" إلىwear.compose.foundation. يُرجى استبدالها بالقيم المكافئةwear.compose.foundation. (Iee8c9)
إصلاح الأخطاء
- لقد عدّلنا ملفات البيانات الأساسية لمكتبات Wear Compose الأساسية والتصميم المتعدد الأبعاد والتنقل. (Idb060)
- لقد أعدنا تغييرًا سلوكيًا لـ
PositionIndicatorتم تقديمه في تغيير سابق، بحيث يتم تحريكPositionIndicatorعند عرض الشاشة لأول مرة. ننوي إجراء تغيير مماثل في إصدار أولي من الإصدار التجريبي 1.4، بحيث يتم عرضPositionIndicatorفي البداية، ولكن بدون أي حركة. (I41843) - لقد عالجنا بعض المشاكل المتعلّقة بالأداء في
PositionIndicator. (I1c654، b/302399827) - لقد حسّنّا أداء التنفيذ التلقائي لموفّر حالة "استكشاف اللمس" ليعتمد على
State<Boolean>بدلاً من الحالة المشتقة. (Ieec4d) - لقد ضبطنا مستطيلات
systemGestureExclusionللإصدار 13 من نظام التشغيل Android والإصدارات الأحدث. (Ib1f4b)
الإصدار 1.3.0-alpha07
4 أكتوبر 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-alpha07. يتضمّن الإصدار 1.3.0-alpha07 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا علامات فردية إلى
PositionIndicatorللتحكّم في الصور المتحركة المختلفة:showFadeInAnimationوshowFadeOutAnimationوshowPositionAnimation. تم إيقاف واجهة برمجة التطبيقات السابقة نهائيًا، ويتم إعادة توجيه الطلبات إلى الواجهة الجديدة. لأسباب تتعلّق بالأداء وتجربة المستخدم المتّسقة، عند استخدامPositionIndicatorمع قائمة قابلة للتمرير، ننصح بإيقاف العلامتَينshowFadeInAnimationوshowPositionAnimation. إذا تم استخدامPositionIndicatorكمؤشر مستقل، مثلاً لتغيير مستوى الصوت، ننصحك بتفعيل جميع الصور المتحركة الثلاث. (Ia2d63)
إصلاح الأخطاء
- أجرينا تحسينات على حركة التمرير السريع للكشف عن المحتوى من خلال إضافة صورة متحركة تلاشي إلى نص الإجراء الأساسي، وتلاشي الإجراء الثانوي أو تغيير مقياس الرمز عند التوسيع الكامل للتمرير السريع. (Ib7223)
- ننصح بإتاحة إجراءات "التمرير السريع للكشف"، وقد أضفنا إجراءات مخصّصة لتسهيل الاستخدام إلى أمثلة "التمرير السريع للكشف". (I42224)
- لقد حسّنّا أداء
SwipeToDismissBox، بما في ذلك إعادة تصميم الرمز البرمجي لضمان عدم تفعيل إعادة الإنشاء من خلال المنطق الأوّلي. يتم الآن رسمSwipeToDismissBoxبحجم ملء الشاشة. (Ie0aa2) - أصلحنا خطأً كان يؤدي إلى اختفاء الرمز
PositionIndicatorبشكل غير صحيح. (I2091a) - تحسين أداء
PositionIndicatorمن خلال تحسين عمليات إعادة التركيب تمت إضافة علامات جديدة للتحكّم في الصور المتحركة (fadeInوfadeOutوpositionChange) لاحقًا (راجِع "تغييرات واجهة برمجة التطبيقات") (Ifac7d) - أضفنا اختبارات Microbenchmark لـ
PositionIndicator(Idf875)
الإصدار 1.3.0-alpha06
20 سبتمبر 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-alpha06. يتضمّن الإصدار 1.3.0-alpha06 هذه التعديلات.
إصلاح الأخطاء
- أتحنا استخدام
Modifier.edgeSwipeToDismissمعSwipeToReveal. (I95774، b/293444286) - أضفنا نماذج للمادة
SwipeToRevealChipوSwipeToRevealCard. (Ieb974) - لقد عدّلنا ملفات تعريف خط الأساس لمكتبتَي Wear Compose Foundation وMaterial. (I1dd1f)
الإصدار 1.3.0-alpha05
6 سبتمبر 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-alpha05. يتضمّن الإصدار 1.3.0-alpha05 هذه التعديلات.
إصلاح الأخطاء
- أضفنا ميزة "التعامل" في "التمرير السريع للكشف" حتى يمكن تمرير عنصر واحد فقط في كل مرة. (I3cd7a)
- تم تحسين مستندات
ScalingLazyColumnDefaultsلتتطابق بشكل أفضل مع سلوكها الفعلي. (I886d3)
الإصدار 1.3.0-alpha04
23 أغسطس 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-alpha04. يتضمّن الإصدار 1.3.0-alpha04 هذه التعديلات.
الميزات الجديدة
- أضفنا إمكانية التراجع عن الإجراء الثانوي لرمز
SwipeToReveal. (I7a22d)
تغييرات واجهة برمجة التطبيقات
- أضِف
HorizontalPageIndicatorفي مكتبة Wear Material3. (Ifee99) - تم تعديل أدوات معاينة Wear Compose لاستخدام مكتبة
androidx.wear.tooling.preview. (Ib036e)
إصلاح الأخطاء
- تم إصلاح خطأ في الأزرار الدائرية حيث لم يتم ربط المعدِّلات بشكل صحيح. (I5e162)
الإصدار 1.3.0-alpha03
9 أغسطس 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-alpha03. يتضمّن الإصدار 1.3.0-alpha03 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا عنصرين جديدين قابلين للإنشاء في Material لتنفيذ
SwipeToRevealباستخدام البطاقات والرقائق. تتّبع هذه العناصر القابلة للإنشاء إرشادات تجربة المستخدم المقترَحة بشأن المكوّن، وتسهّل على المطوّرين تنفيذSwipeToRevealباستخدام المكوّنات الحالية في Wear Material. (I7ec65) - لقد فعّلنا التعليقات التوضيحية
FloatRangeكقيود على واجهة برمجة التطبيقات، والتي تم ذكرها سابقًا في التعليقات. (Icb401)
إصلاح الأخطاء
- نقلنا منطق التمرير الأولي في
ScalingLazyColumnإلى داخلonGloballyPositioned(). (Ic90f1) - نستخدم الآن
drawWithCacheفيPositionIndicatorوProgressIndicatorوSelectionControlsلتحسين عمليات تخصيص ضربات الفرشاة. (I5f225، b/288234617) - لقد حللنا مشكلة ظهور علامة الصح في مربّع الاختيار في الحالات غير المفعّلة. (Ib25bf)
- عدّلنا
Placeholderللسماح بإعادة الضبط لعرض العنصر النائب إذا لم يعُد المحتوى في حالة الجاهزية. (Ibd820) - أجرينا بعض الإصلاحات على اختبارات
Placeholderغير المستقرة (Idb560)
الإصدار 1.3.0-alpha02
26 يوليو 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-alpha02. يتضمّن الإصدار 1.3.0-alpha02 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد وفّرنا
ExpandableStateMapping، وهي طريقة جديدة لإنشاءExpandableStates، وذلك في الحالات التي يجب فيها إنشاءExpandableStatesعند الطلب، وليس بالضرورة ضمن نطاق@Composable(Iff9e0). - تم نقل
SwipeToDismissBoxمن حزمةandroidx.wear.compose.materialإلى حزمةandroidx.wear.compose.foundation. (I275fb) - تم تعديل ملفات واجهة برمجة التطبيقات لإضافة تعليقات توضيحية حول إيقاف التوافق. (I8e87a، b/287516207)
- لقد أتحنا ثوابت الارتفاع لكل من
ChipوCompactChipوToggleChipللجميع (Idbfde) - أتحنا للجميع استخدام مساحات الحشو الأفقية والعمودية لكل من
ChipوCompactChip. (Ieeaf7) - تمت إضافة وظيفة لإيقاف معالجة التمرير السريع في
SwipeDismissableNavHostمن خلال المَعلمة الجديدةuserSwipeEnabled. (Id2a0b، b/230865655) - لقد عدّلنا مكتبة Wear Compose Navigation لاستخدام
SwipeToDismissBoxالجديد من Wear Compose Foundation. (I4ff8e)
إصلاح الأخطاء
- لقد أصلحنا خطأ في ترتيب العناصر حسب محور z، حيث لم يعرض
expandedItemالمحتوى الصحيح بعد النقر على سلوك أحد الأزرار عندما يحتوي على أزرار. (I1899d، b/289991514) - تحسين معالجة التركيز على
SwipeToDismissBox(وبالتاليSwipeDismissableNavHost) باستخدامHierarchicalFocusCoordinator(I45362، b/277852486) - أجرينا إصلاحًا على طريقة التعامل مع الإيماءات في
SwipeableV2. (I89737) - لقد انتهينا من إعداد ملفات تعريف الأداء الأساسية لإصدار 1.2. (Id5740)
- بعد نقل
SwipeToDismissBoxإلى Foundation، يتم الآن إعادة توجيه عملية تنفيذ MaterialSwipeToDismissBoxإلى Foundation وتوفير قيم الألوان التلقائية من تصميمها.(If8451) - أضفنا دلالات العناوين إلى
ListHeader. (Ic5420) - سيتم الآن تعديل ارتفاع
ChipوToggleChipلاستيعاب المحتوى الذي زاد حجمه بسبب استخدام خطوط كبيرة لتسهيل الاستخدام، وذلك عند الحاجة. (Iaf302) - أصلحنا خطأ في الدور الدلالي لمنطقة
SplitToggleChipالقابلة للنقر، وذلك لتسهيل الاستخدام. (Ieed3a) - يؤدي إعداد "تقليل الحركة" الآن إلى إيقاف تأثير التلألؤ والحركة عند مسح العناصر النائبة. (I91046)
- يتيح الزران
StepperوInlineSliderالآن النقر المتكرر عند الضغط مع الاستمرار، ما يتيح لك زيادة قيمةStepperوInlineSliderأو خفضها بسرعة من خلال الضغط مع الاستمرار على الزرَّين + أو -. (I27359)
الإصدار 1.3.0-alpha01
21 حزيران (يونيو) 2023
تم طرح androidx.wear.compose:compose-*:1.3.0-alpha01. يتضمّن الإصدار 1.3.0-alpha01 هذه التعديلات.
إصلاح الأخطاء
- كما أعلنّا في
1.2.0-alpha07و1.2.0-alpha10، سنغيّر الآنDefaultTextStyleلإيقاف الحشو في الخطوط لضمان الاتساق على مستوى نظام Android الأساسي. سيؤدي ذلك إلى حلّ بعض حالات اقتطاع النص عند استخدام أحجام خطوط كبيرة، وقد يؤثر أيضًا في تصاميم الشاشة، لذا يجب تعديل اختبارات لقطات الشاشة. على سبيل المثال، نرى هنا اقتطاعًا للنص (Ic6a86)
- لم يعُد هذا الفراغ يظهر عند إيقاف خيار "المساحة المتروكة للخط":
- لقد عدّلنا
wear.compose.foundationليصبح إحدى تبعيات واجهة برمجة التطبيقاتwear.compose.material(I72004، b/285404743) - أصلحنا خطأ في
SwipeToDismissBox. يتم الآن تمرير مفاتيح الخلفية والمحتوى إلى كتلة "التذكير" لإنشاء معدِّلات جديدة عند تغيير المحتوى أو الخلفية. (Ib876c، b/280392104) - عدّلنا
TimeTextلاستخدام اللغة عند اختيار تنسيق الوقت 12 أو 24 ساعة. (If4a3d) - أصلحنا مشكلة عدم اتساق في المَعلمات التلقائية
SwipeToDismissBoxcontentScrimColor. (I2d70f) - أجرينا تحسينات على معالجة الحركة في
SwipeToReveal. (I28fb7)
المشاكل المعروفة
- تُعد إتاحة أحجام الخطوط التي يضبطها المستخدم من متطلبات تسهيل الاستخدام. نعلم أنّ شرائح Chips المتعدّدة الأسطر يمكن أن تؤدي إلى اقتصاص النص عند عرضها بأحجام خطوط كبيرة، لذا سنعدّل شريحة Chip في إصدار أولي من الإصدار التجريبي 1.3 لإجراء تعديلات على الارتفاع في هذه الحالات.
الإصدار 1.2
الإصدار 1.2.1
18 أكتوبر 2023
تم طرح androidx.wear.compose:compose-*:1.2.1. يتضمّن الإصدار 1.2.1 هذه التعديلات.
إصلاح الأخطاء
- تم إصلاح خطأ يؤدي إلى اختفاء
PositionIndicatorبشكل غير صحيح. (7a167f)
الإصدار 1.2.0
9 أغسطس 2023
تم طرح androidx.wear.compose:compose-*:1.2.0. يتضمّن الإصدار 1.2.0 هذه التعديلات.
التغييرات المهمة منذ الإصدار 1.1.0
- الإصدار الثابت من Compose for Wear OS 1.2.0 (مزيد من المعلومات)
- للاطّلاع على قائمة بالتغييرات الرئيسية في الإصدار 1.2 من Wear Compose، راجِع ملاحظات الإصدار (Compose for Wear OS 1.2 Beta01).
الإصدار 1.2.0-rc01
26 يوليو 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-rc01. يتضمّن الإصدار 1.2.0-rc01 هذه التعديلات.
إصلاح الأخطاء
- لقد انتهينا من إعداد ملفات تعريف الأداء الأساسية للإصدار 1.2 (Id5740)
الإصدار 1.2.0-beta02
7 يونيو 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-beta02. يتضمّن الإصدار 1.2.0-beta02 هذه التعديلات.
الميزات الجديدة
- أضفنا المتغيّر التجريبي الجديد
LocalReduceMotionCompositionLocalالذي يوقف تغيير الحجم والتلاشي علىScalingLazyColumn. (I58024)
إصلاح الأخطاء
- لقد عدّلنا ملفات تعريف خط الأساس لمكتبات Wear Compose الأساسية والمادية(I4725d).
- لقد أصلحنا عدم تطابق في القيم التلقائية للمَعلمتَين
SwipeToDismissBoxوcontentScrimColor(I2d70f). - لقد أصلحنا القيمة التلقائية
DefaultTextStyleالمستخدَمة في الإعدادIncludeFontPadding(I737ed)
الإصدار 1.2.0-beta01
24 مايو 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-beta01. يتضمّن الإصدار 1.2.0-beta01 هذه التعديلات.
ميزات Compose for Wear OS 1.2
يشير الإصدار 1.2-beta01 من Compose for Wear OS إلى أنّ هذا الإصدار من المكتبة يتضمّن جميع الميزات وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء الأجزاء التي تم وضع علامة "تجريبي" عليها). يتضمّن الإصدار 1.2 من Wear Compose الوظائف الجديدة التالية:
-
expandableItemوexpandableItemsهما مكوّنان جديدان منFoundationيتيحان توسيع العناصر ضمنScalingLazyColumn. استخدِمexpandableItemلعنصر واحد قابل للتوسيع، مثل النص الذي يضم عددًا من الأسطر. استخدِمexpandableItemsلمجموعة من العناصر القابلة للتوسيع وexpandableButtonلتبسيط إنشاء زر يتم تصغيره بعد توسيع المحتوى. -
HierarchicalFocusCoordinator: يتيح هذا العنصر التجريبي القابل للإنشاء وضع علامة على الأجزاء الفرعية من التركيب كأجزاء يمكن التركيز عليها أو لا يمكن التركيز عليها. Picker: تتضمّن واجهة برمجة التطبيقات الآنuserScrollEnabledللتحكّم في ما إذا كان أداة الاختيار نشطة أثناء تنقّل المستخدم.-
PickerGroup: عنصر مركّب جديد للتعامل مع أدوات اختيار متعددة معًا تتعامل هذه السمة مع التركيز بين أدوات الاختيار باستخدام واجهة برمجة التطبيقاتHierarchicalFocusCoordinatorوتتيح التوسيط التلقائي لعناصر أداة الاختيار. Placeholder: أجرينا تعديلات على الصور المتحركة "تأثير البريق" و"المسح". يتم الآن تطبيق تأثير المسح فورًا عندما يصبح المحتوى جاهزًا.ScalingLazyColumn: نقلناScalingLazyColumnوالصفوف المرتبطة به منandroidx.wear.compose.material.ScalingLazyColumnإلىandroidx.wear.compose.foundation.lazy.ScalingLazyColumn. يُرجى التحديث لاستخدام الإصدارFoundation.Lazy.SwipeToReveal: أضفنا دعمًا تجريبيًا لميزة "التمرير السريع للكشف عن المحتوى" كوسيلة للوصول إلى الإجراءات الثانوية، ما يكمّل نمط "الضغط مع الاستمرار" الحالي.Stepper: يتضمّن الآن تحميلًا زائدًا مع مَعلمةenableRangeSemanticsإضافية لتسهيل إيقاف دلالات النطاق التلقائية.Previews: أضفنا التعليقات التوضيحية المخصّصة التالية لمعاينة الدوال البرمجية القابلة للإنشاء على شاشات Wear: تعرضWearPreviewSmallRoundالدالة البرمجية القابلة للإنشاء على جهاز صغير دائري، وتعرضWearPreviewLargeRoundالدالة البرمجية القابلة للإنشاء على جهاز كبير دائري، وتعرضWearPreviewSquareالدالة البرمجية القابلة للإنشاء على جهاز مربّع. بالإضافة إلى ذلك، تعمل التعليقات التوضيحية التالية والمعاينة المتعددة: تعرضWearPreviewFontScalesمعاينات للعناصر القابلة للإنشاء على جهاز Wear مزوّد بأحجام خطوط متعددة، بينما تعرضWearPreviewDevicesمعاينات للعناصر القابلة للإنشاء على أجهزة Wear مختلفة.- لقد أضفنا
DefaultTextStyleإلى Wear Compose، ما يؤدي إلى ضبط القيمة التلقائية للسمةPlatformTextStyle.includeFontPaddingعلى "صحيح" (وهذا هو الإعداد الحالي). سيسمح لنا ذلك بمزامنة إيقاف المساحة المتروكة للخط تلقائيًا مع مكتبات Compose في إصدار أولي من الإصدار 1.3 - يمكنك الاطّلاع على 1.2.0-alpha10 لمزيد من المعلومات.
الميزات الجديدة
- أضفنا دعمًا تجريبيًا لإيقاف التحجيم وتأثير التلاشي عند تفعيل خيار reduce_motion. (I58024)
إصلاح الأخطاء
- تحسين مستندات
angularWidthDpفيCurvedSize.kt(Iab75c) - يسجّل
SwipeDismissableNavHostالآن تحذيرًا يتضمّن الأسباب المحتملة لعدم توفّر سجلّ الخلف. يتم ذلك لمنع حدوث أعطال غير متوقّعة بسببIllegalArgumentExceptionالذي تم طرحه عندما كانت حزمة الخلف فارغة. (I04a81، b/277700155)
الإصدار 1.2.0-alpha10
10 مايو 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha10. يتضمّن الإصدار 1.2.0-alpha10 هذه التعديلات.
الميزات الجديدة
- أضفنا ميزة "التمرير السريع للكشف" كوسيلة للوصول إلى الإجراءات الثانوية. يكمل هذا النمط نمط "الضغط مع الاستمرار"، وهو الطريقة الحالية التي يمكن للمستخدم من خلالها الكشف عن إجراءات ثانوية (مختلفة). (I60862)
تغييرات واجهة برمجة التطبيقات
- لقد أضفنا
RevealScopeإلى عناصر Action composables فيSwipeToReveal، ما يتيح الوصول إلى الإزاحة التي يتم فيها الكشف عن إجراءات إضافية. (I3fd56)
إصلاح الأخطاء
- تم إصلاح مشكلة تعذُّر إيقاف
ScalingLazyColumnعلى الإصدار 33 من Wear API بعد تمرير الإصبع ثم رفعه بسرعة (Ic4599) - أجرينا بعض التحسينات على أداء
PositionIndicatorلتقليل التشويش. (I35e92) - لقد أصلحنا خطأ في Chip و
CompactChipحيث لم يعُد الدور الدلالي مضبوطًا علىRole.Button. (I93f91، b/277326264)
المشاكل المعروفة
لقد رصدنا خطأً في "استوديو Android" يتسبّب في تعذّر عرض المعاينة عند إضافة التعليقات التوضيحية @WearPreviewDevices و @WearPreviewFontScales، ونخطّط لإصدار حلّ لهذا الخطأ قريبًا. يُرجى العِلم أنّ تعليقات Wear التوضيحية الأخرى تعمل على النحو المطلوب في الإصدار 2022.3.1 من "استوديو Android" والإصدارات الأحدث.
في الإصدار 1.2.0-alpha07، أضفنا DefaultTextStyle إلى Wear Compose، مع الحفاظ على قيمة PlatformTextStyle.includeFontPadding الحالية على "صحيح". لمزيد من المعلومات، يُرجى الاطّلاع على إصلاح مساحة العرض المتروكة للخط في Compose. سنغيّر DefaultTextStyle لإيقاف مساحة الحشو في الخط في إصدار أولي من الإصدار 1.3، وذلك لضمان التوافق مع نظام Android الأساسي. سيؤدي ذلك إلى حلّ بعض حالات اقتطاع النص بأحجام خطوط كبيرة، وقد يؤثّر أيضًا في تصاميم الشاشة، لذا يجب تعديل اختبارات لقطات الشاشة. على سبيل المثال، عند استخدام أحجام خطوط كبيرة، نلاحظ اقتطاع النص هنا:
- لم يعُد هذا الفراغ يظهر عند إيقاف خيار "المساحة المتروكة للخط":
يمكنك الآن استخدام الإعداد الجديد من خلال تجاهل الطباعة في المظهر، راجِع رمز المثال.
الإصدار 1.2.0-alpha09
19 أبريل 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha09. يتضمّن الإصدار 1.2.0-alpha09 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- إضافة
angularSizeDpإلى واجهة برمجة التطبيقاتCurvedModifierلضبط العرض الزاوي بوحدات بكسل مستقلة عن الكثافة (I89a52)
إصلاح الأخطاء
- لقد أصلحنا مشاكل تسهيل الاستخدام في العروض التوضيحية لأداة اختيار الوقت(Id0eb7)
الإصدار 1.2.0-alpha08
5 أبريل 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha08. يتضمّن الإصدار 1.2.0-alpha08 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد أعدنا تسمية
ExpandableItemsStateإلىExpandableState. (If85ea) - أضفنا
expandableButtonلتسهيل إنشاء زر يتم تصغيره عند توسيع المحتوى، وعدّلنا أيضًا أمثلة العناصر القابلة للتوسيع. (Iae309)
إصلاح الأخطاء
- عيّنات قابلة للتوسيع محسّنة لعرض المزيد من الاحتمالات تم تعديل حركة
expandableItemللحفاظ على توسّط المحتوى خلال الحركة. (I2f637) - تم تعديل
ToggleControlsلتجنُّب عمليات إعادة التركيب الإضافية عند تحريك الألوان يدويًا باستخدام State. (I5d319)
الإصدار 1.2.0-alpha07
22 مارس 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha07. يتضمّن الإصدار 1.2.0-alpha07 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- نقلنا مكوّنات "العنصر القابل للتوسيع" (التي تمت إضافتها في الإصدار 1.2.0-alpha06) من Material إلى Foundation، لأنّها لم تتضمّن أي إشارة ذات صلة إلى
MaterialTheme. (Ib0525)
إصلاح الأخطاء
- لقد أصلحنا تعطّلاً حدث في إحدى الشاشات باستخدام
PickerGroup، وذلك من خلال التأكّد من أنّPickerGroupيتعامل مع التركيز بشكلٍ صحيح عندما لا يكون أي عنصر Picker في حالة تركيز. تمت أيضًا إضافة إمكانية التمرير في RSB في عروض Picker التوضيحية. (If8c19) - لقد حسّنّا عمليات الانتقال بين مربّعات الحوار، وأصبح الانتقال إلى المقدمة أكثر سلاسة ليتوافق مع الانتقال إلى الخاتمة. (Ib5af9)
- لقد أضفنا
DefaultTextStyleإلى Wear Compose، ما يؤدي إلى ضبط القيمة التلقائية للسمةPlatformTextStyle.includeFontPaddingعلى "صحيح" (وهذا هو الإعداد الحالي). سيسمح لنا ذلك بمزامنة إيقاف المساحة المتروكة في الخط تلقائيًا مع مكتبات Compose في المستقبل. يمكنك الاطّلاع على إصلاح المساحة المتروكة في الخط في Compose للحصول على معلومات أساسية. (I2aee8) - تمت إعادة إصدار
UpsideDownCakeلمعاينة التبعية من خلال activity-compose التي كانت تحظر نشر التطبيقات على "متجر Google Play". (I6443d)
الإصدار 1.2.0-alpha06
8 مارس 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha06. يتضمّن الإصدار 1.2.0-alpha06 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضِف مكوّن
CurvedBox، الذي يضع المكوّنات فوق بعضها البعض في العالم المنحني. (I29200) - تمت إضافة "عناصر قابلة للتوسيع"، وهما مكوّنان جديدان يتيحان إما مجموعة من العناصر القابلة للتوسيع في
ScalingLazyColumnأو عنصرًا واحدًا قابلاً للتوسيع، مثل "النص" الذي يتوسّع فيه عدد الأسطر. (I95dd5) - أضفنا التعليقات التوضيحية المخصّصة التالية لمعاينة العناصر القابلة للإنشاء على شاشات Wear: تعرض
WearPreviewSmallRoundالعنصر القابل للإنشاء على جهاز صغير دائري، وتعرضWearPreviewLargeRoundالعنصر القابل للإنشاء على جهاز دائري كبير، وتعرضWearPreviewSquareالعنصر القابل للإنشاء على جهاز مربّع. بالإضافة إلى ذلك، تعمل التعليقات التوضيحية التالية والمعاينة المتعددة: تعرضWearPreviewFontScalesمعاينات للعناصر القابلة للإنشاء على جهاز Wear مع أحجام خطوط متعددة، بينما تعرضWearPreviewDevicesمعاينات للعناصر القابلة للإنشاء على أجهزة Wear مختلفة. لاستخدام هذه المعاينات، يجب أن تستخدم أحدث إصدار من "استوديو Android" (Giraffe Canary 6) أو إصدارًا أحدث. يُرجى العِلم أنّه إذا كانت هذه التعليقات التوضيحية لا تناسب غرضك، سيظلّ بإمكانك استخدام "وضع المعاينة"، كما أنّه يتيح إجراء المزيد من عمليات التخصيص من خلال المَعلمات. (I397ff) - لقد صنّفنا
HierarchicalFocusCoordinatorعلى أنّه تجريبي، وذلك لأنّه يُعدّ مرشحًا للانتقال إلى مكتبات الإنشاء الأساسية، نظرًا إلى إمكانية تطبيقه على نطاق واسع. (I3a768)
إصلاح الأخطاء
- تم إصلاح خطأ في
HierarchicalFocusCoordinator، فعندما يتم تغيير دالة lambda التي تم تمريرها للمَعلمةfocusEnabled، نستخدم الآن الدالة الجديدة بشكل صحيح. (Icb353) - عدّلنا لون المحتوى غير المفعّل التلقائي إلى "الخلفية" عند استخدام الألوان الأساسية كخلفية في
ButtonوCompactButtonوChipوCompactChipوToggleButton. ويؤدي ذلك إلى تحسين التباين لتسهيل الاستخدام. (I527cc)
الإصدار 1.2.0-alpha05
22 فبراير 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha05. يتضمّن الإصدار 1.2.0-alpha05 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم تعديل واجهة برمجة التطبيقات
PickerGroupللسماح بنقل الحد الأدنى من القيود إلى العنصر القابل للإنشاء بشكل اختياري. عند ضبط القيمة على "صحيح"، سيتم السماح بالحدود الدنيا التي تم تمريرها من العنصر القابل للإنشاء الرئيسي فيPickerGroup. إذا تم ضبطها على "خطأ"، ستعيدPickerGroupضبط الحد الأدنى للقيود. (I3e046) - أضفنا
animateScrollToOptionإلى Picker API من أجل إتاحة إمكانية إضافة صور متحركة آليًا إلى خيار Picker معيّن (I6fe67)
إصلاح الأخطاء
- عدّلنا
HorizontalPageIndicatorليتوافق مع التنسيقات من اليمين إلى اليسار. (Ia4359) - تمت إضافة اختبارات لقطات الشاشة للتنسيق من اليمين إلى اليسار في
HorizontalPageIndicator(I6fbb8) - تمت إضافة المزيد من الاختبارات إلى
SwipeDismissableNavHostTestالتي تستخدمTestNavHostController(I61d54)
الإصدار 1.2.0-alpha04
8 شباط (فبراير) 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha04. يتضمّن الإصدار 1.2.0-alpha04 هذه التعديلات.
الميزات الجديدة
-
PickerGroupللتعامل مع أدوات اختيار متعددة معًا باستخدام واجهة برمجة التطبيقات Focus API. تتعامل هذه الفئة مع التركيز بين أدوات الاختيار المختلفة، وتتيح التوسيط التلقائي لأدوات الاختيار استنادًا إلى المَعلمات، كما تسمح للمطوّرين بتغيير التركيز بين أدوات الاختيار المختلفة أثناء التعامل مع الأحداث من المجموعة. في وضع TalkBack، يتعاملPickerGroupمع تركيز TalkBack من خلال نقل التركيز إلى أداة الاختيار المحدّدة من المجموعة. (I60840)
تغييرات واجهة برمجة التطبيقات
- لقد أضفنا حمولة زائدة إلى Stepper مع مَعلمة
enableRangeSemanticsإضافية لتسهيل إيقاف دلالات النطاق التلقائي (Ia61d4)
إصلاح الأخطاء
- السماح بتضمين
ScalingLazyColumnفي صفحة يمكن التمرير فيها أفقيًا (Iec3f8 وb/266555016) - تحسين مستندات kdoc الخاصة بأداة Stepper وتنظيف اختبارات
StepperTest(Ic118e) - تم تعديل تبعية
androidx.navigationإلى الإصدار 2.5.3 (If58ed)
الإصدار 1.2.0-alpha03
25 كانون الثاني (يناير) 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha03. يتضمّن الإصدار 1.2.0-alpha03 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد نقلنا
ScalingLazyColumn(والفئات المرتبطة بها) منandroidx.wear.compose.material.ScalingLazyColumnإلىandrdoidx.wear.compose.foundation.lazy.ScalingLazyColumn(راجِع هذا المثال لمعرفة كيفية نقل البيانات). يتطابق هذا الموقع الجديد بشكل أكبر مع موقعcompose.foundation.lazy.LazyColumn، كما أنّه أكثر طبيعية لأنّه ليس أحد مكونات التصميم المتعدد الأبعاد التي تتضمّن آراء. نعمل حاليًا على إجراء هذا التغيير استعدادًا لإطلاق مكتبة Material3 الجديدة التي سنعمل عليها بالتوازي مع مكتبة Material الحالية. (I060e7)
في ما يلي التغييرات التي تم إجراؤها كجزء من عملية نقل ScalingLazyColumn من Material إلى Foundation.Lazy:
- تم إيقاف واجهات برمجة التطبيقات التي تستهدف الإصدار
ScalingLazyColumnمن Material (PositionIndicator). يُرجى التحديث إلى الإصدارFoundation.Lazy ScalingLazyColumn. بالإضافة إلى ذلك، تمت إضافة الحقلanchorTypeإلىScalingLazyListLayoutInfo. (I29d95) - تم وضع علامة الإيقاف النهائي على
ScalingLazyColumnفي حزمة Wear Compose Material (I16d34) - عدّلنا المعدِّل
ScrollAwayلاستخدامScalingLazyListStateمن Wear ComposeFoundation.Lazyوأوقفنا نهائيًا الإصدار الزائد الذي كان يستخدِمScalingLazyListStateمن Wear Compose Material. (Ifc42c) - عدّلنا واجهات برمجة تطبيقات مربّعات الحوار لاستخدام
ScalingLazyListStateمنFoundation.Lazyوأوقفنا نهائيًا عمليات التحميل الزائد التي كانت تستخدمScalingLazyListStateمن Material (Ic8960). - عدّلنا Picker APIs لاستخدام
ScalingParamsمنFoundation.Lazyوأوقفنا نهائيًا عمليات التحميل الزائد التي كانت تستخدم MaterialScalingParams. (Idc3d8)
إصلاح الأخطاء
- لقد أصلحنا خطأً تسبّب في إعادة إنشاء غير ضرورية في
ScalingLazyListState.centerItemIndexمن خلال التأكّد من أنّه لا يتم إرسال التعديلات إلا عندما تتغيّر القيمة فعليًا (Ia9f38). - لقد حسّنّا أداء
SwipeToDismissBox(I3933b) - تمت إضافة اختبارات قياس الأداء لـ
ScalingLazyColumnفي Wear Compose Foundation (Ie00f9) - عدّلنا بعض طرق فئات
ScalingLazyColumnالداخلية في Material لاستخدام الطرق المكافئة لها منFoundation.Lazy(I38aab) - أصلحنا بعض المشاكل في اختبارات "أداة الاختيار" وأضفنا المزيد من الاختبارات للتحقّق من التمرير مع الإزاحة (I6ac34).
- نقلنا
ScalingLazyColumnعيّنات الدمج لتعتمد علىFoundation.Lazyبدلاً من MaterialScalingLazyColumn(Ic6caa) - أضفنا مَعلمات
fromDate/toDateاختيارية إلى العرض التوضيحيDatePicker(I961cd)
الإصدار 1.2.0-alpha02
11 يناير 2023
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha02. يتضمّن الإصدار 1.2.0-alpha02 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- ستنفّذ اختبارات واجهة مستخدم Android Compose الآن عمليات تخطيط لكل إطار عند تنفيذ الإطارات للوصول إلى حالة عدم النشاط (على سبيل المثال، من خلال
waitForIdle). وقد يؤثّر ذلك في الاختبارات التي تؤكّد على إطارات فردية من الرسوم المتحركة للتخطيط. (I8ea08، b/222093277) - تمت إضافة المَعلمة
minLinesإلى Wear Text لضمان سلوك متّسق معBasicText(I24874) - تمت إتاحة
CompactChipTapTargetPaddingللجميع كي يظهر في المستندات (If1e70، b/234119038)
إصلاح الأخطاء
- إيقاف عمليات الإنشاء المتوافقة مع عدة منصات لحِزم
wear.compose(Iad3d7) - إصلاح مستندات kdocs الخاصة بـ
scrollToOption(I6f9a0) - تم تعديل
PlaceholderState.rememberPlaceholderState()لاستخدامrememberUpdatedStateحتى يتم تعديل الحالة إذا كانت دالةonContentReadyLambda. (I02635، b/260343754) - لقد أصلحنا مشكلة اهتزاز النص التي كانت تظهر في مكوّن
Pickerمن خلال الاستفادة من استراتيجية الدمج الجديدة التي تمت إضافتها إلىModifier.graphicsLayer. (I99302) - أصلحنا خطأً تسبّب في حدوث وميض في العرض التوضيحي
DatePicker(I660bd) - لقد حسّنّا إمكانية الوصول إلى العروض التوضيحية لأداة اختيار التاريخ والوقت بنظام 12 ساعة (I05e12).
- عدّلنا عروضنا التوضيحية لأداة اختيار الوقت والتاريخ لكي لا تتأثر أدوات الاختيار بتغييرات RSB عند إلغاء تحديدها (I4aecb).
الإصدار 1.2.0-alpha01
7 كانون الأول (ديسمبر) 2022
تم طرح androidx.wear.compose:compose-*:1.2.0-alpha01. يتضمّن الإصدار 1.2.0-alpha01 هذه التعديلات.
الميزات الجديدة
- عدّلنا وظيفة "العنصر النائب" التجريبية بحيث يتم تطبيق تأثير "المسح" على الفور عندما يصبح المحتوى جاهزًا بدلاً من انتظار بدء حلقة الرسوم المتحركة التالية. أجرينا أيضًا بعض التعديلات على الصور المتحركة الخاصة بتأثيرَي "اللمعان" و"المسح". (I5a7f4)
تغييرات واجهة برمجة التطبيقات
- أضفنا
HierarchicalFocusCoordinatorعنصرًا قابلاً للإنشاء لتفعيل وضع علامة على الأجزاء الفرعية من التركيب باعتبارها قابلة للتركيز أو غير قابلة للتركيز.(I827cb) - لقد أضفنا سمة جديدة لتجاوز الدور الدلالي لـ
ToggleButton.(I67132) - لقد عدّلنا
TimeTextDefaults.TimeFormat12Hoursلإزالة صباحًا/مساءً فيTimeText. سيؤدي ذلك إلى تغيير القيمة التلقائية لمَعلماتtimeSourceفي واجهة برمجة التطبيقاتTimeText. (I1eb7f) - لقد وسّعنا نطاق Picker API لتحسين إمكانية الوصول إلى الشاشات التي تتضمّن أداة اختيار متعددة. تتوفّر خاصية جديدة
userScrollEnabledللتحكّم في ما إذا كان أداة الاختيار نشطة عند تنقّل المستخدم. (I3c3aa)
إصلاح الأخطاء
- لقد غيّرنا عرض الحدّ التلقائي لعنصر
OutlinedButton/OutlinedCompactButtonمن 2.dp إلى 1.dp ليتوافق مع مواصفات تجربة المستخدم النهائية. (Icf84d) - للحدّ من تأثير ظهور العنصر الأول المُضاف إلى
ScalingLazyColumnفارغ على التمرير إلى الموضع الصحيح، أضفنا قيمةautoCentering topPaddingمُقدّرة عندما يكون المحتوى فارغًا. يحسب هذا التغيير مقدار المساحة المتروكة في أعلى الصفحة المطلوبة من خلال افتراض أنّ ارتفاع العنصر الأوّلي هو 0.dp. بالنسبة إلىScalingLazyListAnchorType.ItemStart، سيتم احتساب المساحة المتروكة الصحيحة في أعلى الصفحة، أما بالنسبة إلىScalingLazyListAnchorType.ItemCenter، فسيكون هذا الاحتساب غير صحيح لأنّه يجب معرفة ارتفاع العناصر لتحديد حجم المحتوى بشكل صحيح، ما يؤدي إلى تأثير بسيط للانتقال إلى الموضع المطلوب استنادًا إلى الارتفاع الفعلي للعناصر.(I239a4) - عدّلنا خلفية التعتيم المطبَّقة على الرسوم المتحركة
SwipeToDismissلتتطابق مع منصة Wear. (I9003e) - لقد أصلحنا طريقة معالجة
PositionIndicatorلكل منLazyListStateوScalingLazyListStateلعناصر القائمة التي يبلغ حجمها 0 لتجنُّب أخطاء القسمة على صفر.(Ic28dd)
الإصدار 1.1
الإصدار 1.1.2
8 شباط (فبراير) 2023
تم إصدار androidx.wear.compose:compose-foundation:1.1.2 وandroidx.wear.compose:compose-material:1.1.2 وandroidx.wear.compose:compose-navigation:1.1.2. يتضمّن الإصدار 1.1.2 هذه التعديلات.
إصلاح الأخطاء
- لقد أصلحنا خطأً تسبّب في إعادة إنشاء غير ضرورية في
ScalingLazyListState.centerItemIndexمن خلال التأكّد من أنّه لا يتم إرسال التعديلات إلا عندما تتغيّر القيمة فعليًا (Ia9f38).
الإصدار 1.1.1
11 يناير 2023
تم إصدار androidx.wear.compose:compose-foundation:1.1.1 وandroidx.wear.compose:compose-material:1.1.1 وandroidx.wear.compose:compose-navigation:1.1.1. يتضمّن الإصدار 1.1.1 هذه التعديلات.
إصلاح الأخطاء
- تم تعديل
PlaceholderState.rememberPlaceholderState()لاستخدامrememberUpdatedStateحتى يتم تعديل الحالة إذا كانت دالةonContentReadyLambda. (I02635، b/260343754)
الإصدار 1.1.0
7 كانون الأول (ديسمبر) 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0 وandroidx.wear.compose:compose-material:1.1.0 وandroidx.wear.compose:compose-navigation:1.1.0. يتضمّن الإصدار 1.1.0 هذه التعديلات.
التغييرات المهمة منذ الإصدار 1.0.0
- الإصدار الثابت من Compose for Wear OS 1.1.0 (مزيد من المعلومات)
- للاطّلاع على قائمة بالتغييرات الرئيسية في الإصدار 1.1 من Wear Compose، راجِع ملاحظات الإصدار (الإصدار التجريبي الأول من Compose for Wear OS 1.1).
الميزات الجديدة
- عدّلنا وظيفة "العنصر النائب" التجريبية بحيث يتم تطبيق تأثير "المسح" على الفور عندما يصبح المحتوى جاهزًا بدلاً من انتظار بدء حلقة الرسوم المتحركة التالية. أجرينا أيضًا بعض التعديلات على الصور المتحركة الخاصة بتأثيرَي "اللمعان" و"المسح". (I5a7f4)
إصلاح الأخطاء
- لقد غيّرنا عرض الحدّ التلقائي لعنصر
OutlinedButton/OutlinedCompactButtonمن 2.dp إلى 1.dp ليتوافق مع مواصفات تجربة المستخدم النهائية. (Icf84d) - للحدّ من تأثير ظهور العنصر الأول المُضاف إلى
ScalingLazyColumnفارغ على التمرير إلى الموضع الصحيح، أضفنا قيمةautoCentering topPaddingمُقدّرة عندما يكون المحتوى فارغًا. يحسب هذا التغيير مقدار المساحة المتروكة في أعلى الصفحة المطلوبة من خلال افتراض أنّ ارتفاع العنصر الأوّلي هو 0.dp. بالنسبة إلىScalingLazyListAnchorType.ItemStart، سيتم احتساب المساحة المتروكة الصحيحة في أعلى الصفحة، أما بالنسبة إلىScalingLazyListAnchorType.ItemCenter، فسيكون هذا الاحتساب غير صحيح لأنّه يجب معرفة ارتفاع العناصر لتحديد حجم المحتوى بشكل صحيح، ما يؤدي إلى تأثير بسيط للانتقال إلى الموضع المطلوب استنادًا إلى الارتفاع الفعلي للعناصر.(I239a4) - عدّلنا خلفية التعتيم المطبّقة على الرسوم المتحركة
SwipeToDismissلتتطابق مع منصة Wear.(I9003e) - لقد أصلحنا طريقة معالجة
PositionIndicatorلكل منLazyListStateوScalingLazyListStateلعناصر القائمة التي يبلغ حجمها 0 لتجنُّب أخطاء القسمة على صفر.(Ic28dd)
الإصدار 1.1.0-rc01
9 نوفمبر 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-rc01 وandroidx.wear.compose:compose-material:1.1.0-rc01 وandroidx.wear.compose:compose-navigation:1.1.0-rc01. يتضمّن الإصدار 1.1.0-rc01 هذه التعديلات.
إصلاح الأخطاء
- لقد أضفنا قواعد ملفات تعريف أساسية لكل من
PlaceholdersوScrollAwayوRadioButtonوSwitchوCheckboxوOutlinedButtonوOutlinedCompactButtonوOutlinedChipوOutlinedCompactChip. (I8249c) - لقد أصلحنا خطأً في
Modifier.scrollAway، فإذا كانت قيمةitemIndexالمحدّدة غير صالحة (على سبيل المثال، إذا كان فهرس العنصر خارج النطاق)، سيظلّTimeTextمعروضًا. (I2137a) - لقد عدّلنا الرسوم المتحركة
SwipeToDismissBoxلتتطابق مع عملية التنفيذ على المنصة. بعد حركة الضغط الأولية، تنزلق الشاشة الآن إلى اليمين بعد تفعيل عملية الإغلاق. (I41d34) - كتحسين، عدّلنا
Modifier.scrollAwayلقراءةscrollStateداخل كتلة القياس فقط لتجنُّب إعادة إنشاء المعدِّل بعد كل إعادة قياس. (I4c6f1) - أضفنا مستندات ونموذجًا إلى العناصر النائبة لعرض الترتيب الصحيح للسمتَين
Modifier.placeholderوModifier.placeholderShimmerعند تطبيقهما على العنصر نفسه القابل للإنشاء. (Ie96f4، b/256583229) - لقد غيّرنا عرض الحدّ التلقائي لعنصر
OutlinedCompactChip/OutlinedChipمن 2.dp إلى 1.dp ليتوافق مع مواصفات تجربة المستخدم النهائية. (Ib3d8e) - لقد أصلحنا خطأً في
rememberPickerStateحيث لم يتم حفظ المدخلات المعدَّلة، وبالتالي لم يتم تعديل العناصر القابلة للإنشاء بعد إجراء تغييرات على المدخلات. (I49ff6، b/255323197) - أجرينا بعض التعديلات على واجهة المستخدم الخاصة بالعناصر النائبة، وهي: 1) تغيير التدرّج اللامع إلى 1.5 مرة حجم الشاشة، و2) إضافة تغيير السرعة (منحنى بيزير التكعيبي) إلى تقدّم التأثير اللامع، و3) تسريع حركة المسح (250 ملي ثانية). (Id29c1)
- لقد أصلحنا خطأ في واجهة المستخدم في تأثير المسح الضوئي للعنصر النائب، حيث كانت خلفيات "الشريحة" و"البطاقة" تُمسح ضوئيًا قبل الأوان قليلاً بسبب عدم أخذ موضع المكوّن على الشاشة في الاعتبار. (I2c7cb)
- عدّلنا طريقة رسم خلفية العناصر النائبة لدمج الألوان بدلاً من وضعها في طبقات حيثما أمكن ذلك للحدّ من خطر مزج قنوات ألفا للطبقات المختلفة التي تم اقتصاصها من السماح للألوان الأساسية بالتسرّب من خلال حواف خلفية العناصر النائبة. (I2ea26)
- لقد صحّحنا طريقة احتساب
ScalingLazyListState.centerItemIndex/centerItemOffset، فإذا كان عنصران على جانبي خط منتصف إطار العرض، سيتم اعتبار العنصر الأقرب هوcenterItem. (I30709، b/254257769) - لقد أصلحنا خطأ في
ScalingLazyListState.layoutInfo.visibleItemsInfoكان يؤدّي إلى تسجيل إزاحات غير صحيحة أثناء عملية إعدادScalingLazyColumn. سيتم الآن عرض قائمة فارغة إلى أن تصبح جميع عناصر القائمة مرئية وتتضمّن الإزاحات الصحيحة. سيؤكّد البحث عنScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()اكتمال عملية تهيئةScalingLazyColumnوظهور العناصر. (I3a3b8)
الإصدار 1.1.0-beta01
24 أكتوبر 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-beta01 وandroidx.wear.compose:compose-material:1.1.0-beta01 وandroidx.wear.compose:compose-navigation:1.1.0-beta01. يتضمّن الإصدار 1.1.0-beta01 هذه التعديلات.
ميزات Compose for Wear OS 1.1
أشار الإصدار 1.1.0-beta01 من Compose for Wear OS إلى أنّ هذا الإصدار من المكتبة يتضمّن جميع الميزات وتم قفل واجهة برمجة التطبيقات.
- يتضمّن الإصدار 1.1 من Wear Compose الوظائف الجديدة التالية:
- أداة الاختيار: تحسينات على أداة الاختيار لتسهيل التنقّل في شاشات أدوات الاختيار المتعدد باستخدام قارئات الشاشة وإتاحة الوصول إلى وصف المحتوى
- يتم الآن استخدام المَعلمة Picker
contentDescriptionللخيار Picker المحدّد فقط، وتتلقّى قيمة String قابلة للتصغير (في عملية الإرسال السابقة، كان من الضروري تمرير عملية ربط من الخيار إلى وصف المحتوى، ولكن تم استخدام الخيار المحدّد فقط). - أصبحت عناصر أداة الاختيار الآن محاذية دائمًا للوسط، ما يؤدي إلى إصلاح خطأ كان يحدث عند ضبط
gradientRatioعلى صفر، وهو تغيير المحاذاة. Chip/ToggleChip: عدّلنا التدرجات التلقائية فيChip/ToggleChipلتتوافق مع أحدث مواصفات تجربة المستخدم. تم تعديلChipDefaults.gradientBackgroundChipColorsليبدأ من% 50 من اللون الأساسي بدلاً من %32.5.Chip/ToggleChip- تمت إضافة عمليات تحميل زائدة لتعديل أشكال ChipChip/Button/ToggleButton- تمت إضافة نمط جديد محدَّد الجوانب لكلّ من "الشرائح" و"الأزرار"، بالإضافة إلى عنصرَيOutlinedChipوOutlinedButtonالجديدَين القابلَين للإنشاء اللذَين يوفّرانChip/Buttonشفافًا مع إطار رفيع.- البطاقة: تم تعديل التدرّجات التلقائية للبطاقات لتتوافق مع أحدث مواصفات تجربة المستخدم. تم تعديل
CardDefaults.cardBackgroundPainterليبدأ من% 30 من اللون الأساسي وينتهي عند% 20 منonSurfaceVariant(كانت النسبة سابقًا من% 20 إلى% 10 منonSurfaceVariant). تم تغييرToggleChip.toggleChipColorsمن تدرّج خطي بنسبة% 75 من لون الخلفية إلى% 32.5 من اللون الأساسي إلى% 0 من لون الخلفية إلى% 50 من اللون الأساسي. -
Button/ToggleButton: تمت إضافة خصائص لتعديل أشكال الأزرار. - المظهر: تم تعديل عدد من الألوان التلقائية في
MaterialThemeلتحسين إمكانية الوصول، لأنّ الألوان الأصلية لم يكن فيها تباين كافٍ، ما أدّى إلى صعوبة تمييز خلفيات الشرائح أو البطاقات أو الأزرار عن لون خلفية المظهر. InlineSlider/Stepper: تمت إضافة أدوار الأزرار لكي تتمكّنTalkbackمن التعرّف عليها كأزرار.- تم الآن ضبط موضع وحجم العنصر الأساسي
PositionIndicatorبحيث يشغل المساحة المطلوبة فقط. ويكون ذلك مفيدًا، على سبيل المثال، إذا تمت إضافة معلومات دلالية إليه، سيحصل TalkBack الآن على الحدود الصحيحةPositionIndicatorعلى الشاشة. CurvedText/TimeText: تمت إضافةModifier.scrollAway، ما يؤدي إلى تمرير عنصر عموديًا داخل/خارج إطار العرض، استنادًا إلى حالة التمرير (مع عمليات التحميل الزائد للعمل معColumnوLazyColumnوScalingLazyColumn). تُستخدَمScrollAwayعادةً لتمريرTimeTextخارج إطار العرض عندما يبدأ المستخدم في تمرير قائمة من العناصر للأعلى.CurvedText/TimeText: تمت إضافة دعمfontFamilyوfontStyleوfontSynthesisفيCurvedTextStyle، ويمكن استخدامها علىcurvedTextوbasicCurvedText-
CurvedText/TimeText- تمت إضافةfontWeightإلى الدالة الإنشائية ودالة النسخ فيCurvedTextStyle ToggleControls: تمت إضافة عناصر تحكّم متحركة لتفعيلCheckboxوSwitchوRadioButtonأو إيقافها لاستخدامها معToggleChipوSplitToggleChip. يمكن استخدامها بدلاً من الرموز الثابتة التي يوفّرهاToggleChipDefaults(switchIconوcheckboxIconوradioIcon).- عنصر نائب: تمت إضافة دعم تجريبي للعناصر النائبة. يتضمّن هذا التأثير ثلاثة تأثيرات مرئية مختلفة مصمّمة للعمل معًا.
- أولاً، يتم استخدام تأثير فرشاة الخلفية النائبة في الحاويات، مثل "الشرائح" و"البطاقات"، للرسم فوق الخلفية العادية عند انتظار تحميل المحتوى.
- ثانيًا، أضِف عنصر تعديل (
Modifier.placeholder()) لرسم أداة عنصر نائب على شكل ملعب فوق المحتوى الذي يتم تحميله. - ثالثًا، تأثير التدرّج اللوني/التلألؤ الخاص بالمعدِّل (
Modifier.placeholderShimmer()) الذي يتم رسمه فوق المؤثرات الأخرى للإشارة إلى المستخدمين بأنّنا ننتظر تحميل البيانات.- تم تصميم كل هذه التأثيرات لتكون منسّقة وتتوهّج وتتلاشى بطريقة منظَّمة.
- تم تعديل التبعيات الأساسية في Compose من الإصدار 1.2 إلى الإصدار 1.3
تغييرات واجهة برمجة التطبيقات
- يمكن الآن تحديد مَعلمات الخط (
fontFamilyوfontWeightوfontStyleوfontSynthesis) مباشرةً كمَعلماتcurvedText(Idc422)
إصلاح الأخطاء
- ستعمل الرمزان
curveTextوbasicCurvedTextالآن بشكل صحيح مع TalkBack (يحتويان على عقدة compose-ui بحجم وموضع مناسبَين (ولكن فارغة) مرتبطة بهما، باستخدام النص كوصف للمحتوى) (I7af7c، b/210721259) - تم إصلاح الخطأ في
PickerعندPickerState.repeatedItems = falseلإضافة إعداد صريح لمعلَمات autoCentering فيScalingLazyColumnالداخلي لأدوات الاختيار لضمان إمكانية تمرير الخيار الأول إلى منتصف العرض. (I8a4d7)
الإصدار 1.1.0-alpha07
5 أكتوبر 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha07 وandroidx.wear.compose:compose-material:1.1.0-alpha07 وandroidx.wear.compose:compose-navigation:1.1.0-alpha07. يتضمّن الإصدار 1.1.0-alpha07 هذه التعديلات.
الميزات الجديدة
- أضفنا ميزة تجريبية تتيح استخدام العناصر النائبة. يتضمّن هذا التأثير ثلاثة تأثيرات مرئية مختلفة مصمّمة للعمل معًا. أولاً، يتم استخدام تأثير فرشاة الخلفية النائبة في الحاويات، مثل "الشرائح" و"البطاقات"، للرسم فوق الخلفية العادية عند انتظار تحميل المحتوى. ثانيًا، أضِف عنصر تعديل (
Modifier.placeholder()) لرسم أداة عنصر نائب على شكل ملعب فوق المحتوى الذي يتم تحميله. ثالثًا، تأثير التدرّج اللوني/التلألؤ الخاص بالمعدِّل (Modifier.placeholderShimmer()) الذي يتم رسمه فوق المؤثرات الأخرى للإشارة إلى المستخدمين بأنّنا ننتظر تحميل البيانات. تم تصميم كل هذه التأثيرات لتكون منسّقة وتتوهّج وتتلاشى بطريقة منظَّمة. (I3c339)
تغييرات واجهة برمجة التطبيقات
- تمت إضافة دعم للغات
fontWeightوfontFamilyوfontStyleوfontSynthesisفيCurvedTextStyle، ويمكن استخدامها علىcurvedTextوbasicCurvedText. يمكن استخدام هذه المَعلمات لتحديد الخط والنمط المطلوب استخدامهما في النص المنحني.(Iaa1a8),(I72759) - تم تعديل مَعلمة الإزاحة في
Modifier.scrollAwayإلى Dp لتكون متوافقة معModifier.offset(كانت سابقًا بالبكسل). تم أيضًا إعادة تصميمها كـLayoutModifierلتحقيق الكفاءة. (I9f94b) - في إطار واجهة برمجة التطبيقات الجديدة لعناصر التحكّم في أزرار التبديل، أعدنا تسمية
RadioButton’s circleColorإلىringColor. (I28fa9) - أضفنا عناصر تحكّم متحركة
CheckboxوSwitchوRadioButtonيمكن استخدامها معToggleChipوSplitToggleChip. يمكن استخدامها بدلاً من الرموز الثابتة التي توفّرهاToggleChipDefaults(switchIconوcheckboxIconوradioIcon). (I8a8c4)
الإصدار 1.1.0-alpha06
21 سبتمبر 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha06 وandroidx.wear.compose:compose-material:1.1.0-alpha06 وandroidx.wear.compose:compose-navigation:1.1.0-alpha06. يتضمّن الإصدار 1.1.0-alpha06 هذه التعديلات.
الميزات الجديدة
- أضفنا
Modifier.scrollAway، الذي ينقل عنصرًا عموديًا إلى داخل/خارج إطار العرض، استنادًا إلى حالة التمرير (مع عمليات التحميل الزائد للعمل معColumnوLazyColumnوScalingLazyColumn). يُستخدَمScrollAwayعادةً لنقلTimeTextخارج إطار العرض عندما يبدأ المستخدم في تمرير قائمة من العناصر للأعلى. (I61766)
إصلاح الأخطاء
- تم الآن ضبط موضع
PositionIndicatorوحجمه بحيث يشغل المساحة المطلوبة فقط. ويكون ذلك مفيدًا، على سبيل المثال، إذا تمت إضافة معلومات دلالية إليه، سيحصل TalkBack الآن على الحدود الصحيحةPositionIndicatorعلى الشاشة. (Ie6106، b/244409133)
الإصدار 1.1.0-alpha05
7 أيلول (سبتمبر) 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha05 وandroidx.wear.compose:compose-material:1.1.0-alpha05 وandroidx.wear.compose:compose-navigation:1.1.0-alpha05. يتضمّن الإصدار 1.1.0-alpha05 هذه التعديلات.
إصلاح الأخطاء
- تمت إضافة أدوار الأزرار إلى
InlineSliderوStepperليتمكّن TalkBack من التعرّف عليهما كزرَّين. (Icb46c، b/244260275) - لقد صحّحنا ترتيب العناصر في المحور z لمؤشّري الموضع والصفحة في Scaffold. ستظهر المؤشرات الآن فوق الصورة المصغّرة، وبالتالي لن تحجبها الصورة المصغّرة إذا كانت معروضة. (Ib988f، b/244207528)
الإصدار 1.1.0-alpha04
24 أغسطس 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha04 وandroidx.wear.compose:compose-material:1.1.0-alpha04 وandroidx.wear.compose:compose-navigation:1.1.0-alpha04. يتضمّن الإصدار 1.1.0-alpha04 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد عدّلنا عددًا من الألوان التلقائية في MaterialTheme لتحسين إمكانية الوصول، لأنّ الألوان الأصلية لم يكن فيها تباين كافٍ، ما أدّى إلى صعوبة تمييز خلفيات الشرائح/البطاقات/الأزرار عن لون خلفية المظهر. الألوان المعدَّلة هي surface(0xFF202124->0xFF303133) وonPrimary(0xFF202124->0xFF303133) وonSecondary(0xFF202124->0xFF303133) وprimaryVariant(0xFF669DF6->0xFF8AB4F8) وonError(0xFF202124->0xFF000000). على الرغم من أنّ التغييرات في الألوان طفيفة نسبيًا، إلا أنّها قد تؤثّر في اختبارات لقطات الشاشة الحالية. (81ab09)
إصلاح الأخطاء
- إصلاح خطأ منطقي في
ScalingLazyColumnكان يمكن أن يؤدي إلى عدم اكتمال تهيئة القوائم التي تتضمّن عددًا صغيرًا من عناصر القائمة (عادةً عنصرَين بالضبط)، وبالتالي تصبح القوائم شفافة. (504347)
الإصدار 1.1.0-alpha03
10 أغسطس 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha03 وandroidx.wear.compose:compose-material:1.1.0-alpha03 وandroidx.wear.compose:compose-navigation:1.1.0-alpha03. يتضمّن الإصدار 1.1.0-alpha03 هذه التعديلات.
الميزات الجديدة
- أضفنا نمطًا جديدًا بمخطط تفصيلي لكل من
ChipsوButtons، بالإضافة إلى عناصرOutlinedChipوOutlinedButtonالجديدة القابلة للإنشاء التي توفّرChip/Buttonشفافة مع حدود رفيعة. (Id5972)
تغييرات واجهة برمجة التطبيقات
- تمت إضافة عمليات تحميل زائدة لتعديل أشكال الأزرار (Icccde)
إصلاح الأخطاء
- لقد صحّحنا حجم مساحة عنصر التحكّم في التبديل
ToggleChipلأنّه لم يكن مطابقًا لمواصفات تجربة المستخدم. تتطلّب مواصفات تجربة المستخدم مساحة فارغة تبلغ 4 وحدات بكسل مستقل الكثافة بين التصنيف ومساحة رمز عنصر التحكّم في التبديل التي تبلغ 24x24 وحدة بكسل مستقل الكثافة، ما يمنح عرضًا إجماليًا يبلغ 28 وحدة بكسل مستقل الكثافة. ومع ذلك، يمنح التنفيذ بشكل غير صحيح مساحة تحكّم في تبديل 36x24.dp. يؤدي ذلك إلى إزالة 8 وحدات بكسل مستقلة عن الكثافة من مساحة تصنيف النص القابلة للاستخدام. ملاحظة: يوفّر إصلاح الخطأ هذا مساحة إضافية للتسمية النصية، ونتيجةً لذلك، يمكن أن يؤثر (بشكل إيجابي) في تخطيط النص الذي يتجاوز المساحة المخصّصة له. إذا كانت لديك اختبارات لقطات شاشة تتضمّنToggleChips، قد تحتاج إلى تعديلها. (I514c8، b/240548670)
الإصدار 1.1.0-alpha02
27 يوليو 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha02 وandroidx.wear.compose:compose-material:1.1.0-alpha02 وandroidx.wear.compose:compose-navigation:1.1.0-alpha02. يتضمّن الإصدار 1.1.0-alpha02 هذه التعديلات.
الميزات الجديدة
- لقد غيّرنا إصدارات التبعيات في Compose for Wear OS على مكتبات Compose الأساسية من 1.2.0 إلى 1.3.0-alpha0X
تغييرات واجهة برمجة التطبيقات
- تمت إضافة عمليات تحميل زائدة لتعديل أشكال الشرائح (I02e87)
إصلاح الأخطاء
- لقد أضفنا صورًا متحركة إلى مستوى ظهور تعتيم الأطراف عند عرض/إخفاء مربع حوار، وذلك ليتوافق مع الصورة المتحركة الحالية الخاصة بتحجيم. (Ida33e)
- أصلحنا خطأ كان يؤدي إلى حدوث قسمة على صفر مع بعض سلوكيات التمرير السريع عند التنقّل. (I86cb6)
- تم إصلاح خطأ في
ChipDefaults.childChipColor()لضمان أن يكون لون الخلفية غير المفعَّل شفافًا تمامًا. (I2b3c3، b/238057342)
الإصدار 1.1.0-alpha01
29 يونيو 2022
تم إصدار androidx.wear.compose:compose-foundation:1.1.0-alpha01 وandroidx.wear.compose:compose-material:1.1.0-alpha01 وandroidx.wear.compose:compose-navigation:1.1.0-alpha01. يتضمّن الإصدار 1.1.0-alpha01 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- يتم الآن استخدام المَعلمة
contentDescriptionالخاصة بأداة الاختيار فقط لخيار أداة الاختيار المحدّد، وتتلقّى قيمة String قابلة للتصغير (في السابق، كان من الضروري تمرير عملية ربط من الخيار إلى وصف المحتوى، ولكن تم استخدام الخيار المحدّد فقط). (Ife6a7) - أجرينا تحسينات على ميزة "أداة الاختيار" لتسهيل استخدامها، ما يتيح التنقّل في شاشات أدوات الاختيار المتعدد باستخدام قارئات الشاشة وإمكانية الوصول إلى وصف المحتوى (I64edb).
إصلاح الأخطاء
- لقد عدّلنا قواعد ملفات تعريف الخط الأساسي المضمّنة في مكتبة Wear Compose (I9c694).
- لقد صحّحنا اتجاه التدرّج اللوني في "الشرائح" في وضع "من اليمين إلى اليسار". كانت من أعلى اليسار إلى أسفل اليمين، وأصبحت الآن من أعلى اليمين إلى أسفل اليسار. (Ic2e77)
- عدّلنا التدرّجات اللونية التلقائية في
Chip/ToggleChip/Cardلتتوافق مع أحدث مواصفات تجربة المستخدم، كما عدّلناChipDefaults.gradientBackgroundChipColorsليبدأ من% 50 من اللون الأساسي بدلاً من %32.5. تم تعديلCardDefaults.cardBackgroundPainterليبدأ من% 30 من اللون الأساسي وينتهي عند% 20 منonSurfaceVariant(كانت النسبة سابقًا من% 20 إلى% 10 منonSurfaceVariant). تم تغييرToggleChip.toggleChipColorsمن تدرّج خطي بنسبة% 75 من لون الخلفية إلى% 32.5 من اللون الأساسي إلى% 0 من لون الخلفية إلى% 50 من اللون الأساسي. (I43bbd) - أضفنا لون خلفية (
MaterialTheme.color.surface) خلفChip/ToggleChipsالتي تحتوي على خلفيات متدرّجة الألوان لضمان ظهورها بشكل صحيح في حال استخدام لون فاتح خلفها. (Ibe1a4، b/235937657) - أصبحت عناصر أداة الاختيار الآن محاذية دائمًا للوسط، ما يؤدي إلى إصلاح خطأ كان يحدث عند ضبط
gradientRatioعلى صفر، وهو تغيير المحاذاة. (I712b8)
الإصدار 1.0
الإصدار 1.0.2
7 أيلول (سبتمبر) 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.2 وandroidx.wear.compose:compose-material:1.0.2 وandroidx.wear.compose:compose-navigation:1.0.2. يتضمّن الإصدار 1.0.2 هذه التعديلات.
إصلاح الأخطاء
- لقد صحّحنا ترتيب العناصر في المحور z لمؤشّري الموضع والصفحة في Scaffold. ستظهر المؤشرات الآن فوق الصورة المصغّرة، وبالتالي لن تحجبها الصورة المصغّرة إذا كانت معروضة. (Ib988f، b/244207528)
الإصدار 1.0.1
24 أغسطس 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.1 وandroidx.wear.compose:compose-material:1.0.1 وandroidx.wear.compose:compose-navigation:1.0.1. يتضمّن الإصدار 1.0.1 هذه التعديلات.
إصلاح الأخطاء
- إصلاح خطأ منطقي في
ScalingLazyColumnكان يمكن أن يؤدي إلى عدم اكتمال تهيئة القوائم التي تتضمّن عددًا صغيرًا من عناصر القائمة (عادةً عنصرَين بالضبط)، وبالتالي تصبح القوائم شفافة. (076c61)
الإصدار 1.0.0
27 يوليو 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0 وandroidx.wear.compose:compose-material:1.0.0 وandroidx.wear.compose:compose-navigation:1.0.0. يتضمّن الإصدار 1.0.0 هذه التعديلات.
الميزات الرئيسية في الإصدار 1.0.0
- هذا هو الإصدار الثابت الأول من Compose for Wear OS (مزيد من المعلومات).
- تستند Compose for Wear OS إلى مكتبات Compose الأساسية، وتوفّر مكوّنات إضافية خاصة بالأجهزة القابلة للارتداء، كما توفّر، عند الاقتضاء، عمليات تنفيذ بديلة لمكوّنات Compose الأساسية مصمَّمة خصيصًا للأجهزة القابلة للارتداء.
- للاطّلاع على قائمة بالمكوّنات الرئيسية في Wear Compose، يمكنك الرجوع إلى ملاحظات الإصدار (Compose for Wear OS Beta01).
إصلاح الأخطاء
- لقد أضفنا صورًا متحركة إلى مستوى ظهور تعتيم الأطراف عند عرض/إخفاء مربع حوار، وذلك ليتوافق مع الصورة المتحركة الحالية الخاصة بتحجيم. (Ida33e)
- أصلحنا خطأ كان يؤدي إلى حدوث قسمة على صفر مع بعض سلوكيات التمرير السريع عند التنقّل. (I86cb6)
- تم إصلاح خطأ في
ChipDefaults.childChipColor()لضمان أن يكون لون الخلفية غير المفعَّل شفافًا تمامًا. (I2b3c3، b/238057342)
الإصدار 1.0.0-rc02
22 يونيو 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-rc02 وandroidx.wear.compose:compose-material:1.0.0-rc02 وandroidx.wear.compose:compose-navigation:1.0.0-rc02. يتضمّن الإصدار 1.0.0-rc02 هذه التعديلات.
إصلاح الأخطاء
- لقد صحّحنا اتجاه التدرّج اللوني للبطاقات في وضع الكتابة من اليمين إلى اليسار. كانت من أعلى اليسار إلى أسفل اليمين، وأصبحت الآن من أعلى اليمين إلى أسفل اليسار. (Ic2e77)
- عدّلنا التدرّجات اللونية التلقائية في
Chip/ToggleChip/Cardلتتوافق مع أحدث مواصفات تجربة المستخدم. وتم تعديلChipDefaults.gradientBackgroundChipColorsليبدأ من% 50 من اللون الأساسي بدلاً من %32.5. تم تعديلCardDefaults.cardBackgroundPainterليبدأ من% 30 من اللون الأساسي وينتهي عند% 20 منonSurfaceVariant(كانت النسبة سابقًا من% 20 إلى% 10 على SurfaceVariant). تتغيّرToggleChip.toggleChipColorsمن تدرّج خطي بنسبة% 75 من السطح إلى% 32.5 من اللون الأساسي إلى% 0 من السطح إلى% 50 من اللون الأساسي. (I43bbd) - أضفنا لون خلفية (
MaterialTheme.color.surface) خلفChip/ToggleChipsالتي تحتوي على خلفيات متدرّجة الألوان لضمان ظهورها بشكل صحيح في حال استخدام لون فاتح خلفها. (Ibe1a4، b/235937657) - لقد عدّلنا قواعد ملفات تعريف الخط الأساسي المضمّنة في مكتبة Wear Compose (I9c694).
الإصدار 1.0.0-rc01
15 يونيو 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-rc01 وandroidx.wear.compose:compose-material:1.0.0-rc01 وandroidx.wear.compose:compose-navigation:1.0.0-rc01. يتضمّن الإصدار 1.0.0-rc01 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- يتم الآن إنشاء الواجهات في مكتبات Compose باستخدام طرق الواجهة التلقائية في الإصدار 8 من حزمة تطوير البرامج (JDK) (I5bcf1).
إصلاح الأخطاء
- أزلنا طلب
fillMaxWidth()الصريح من عنوان القائمة لأنّه غير ضروري ويمكن أن يؤدي إلى مشاكل إذا كانScalinglazyColumnيحتوي على مزيج من مكوّناتListHeader()وChip()لأنّ العرض سيزداد أو ينقص عند التمرير سريعًا لعناصرListHeaderداخل أو خارج إطار العرض. (I37144، b/235074035) - لقد أصلحنا خطأً في
ScalingLazyColumnكان يمكن أن يؤدي إلى عدم عرض عناصر القائمة بشكل صحيح إلى أن يتم التمرير إذا كان عنصر القائمة رقم 0 كبيرًا بما يكفي (بما في ذلك المساحة المتروكة) (Ic6159، b/234328517) - أجرينا تعديلاً بسيطًا على عملية التباطؤ في
ScalingLazyColumnعندما تصل العناصر إلى حافة الشاشة ليتوافق ذلك مع آخر التعديلات على مواصفات تجربة المستخدم. القيم القديمةCubicBezierEasing(0.25f, 0.00f, 0.75f, 1.00f)-> القيم الجديدةCubicBezierEasing(0.3f, 0f, 0.7f, 1f)للحفاظ على السلوك القديم، يمكنك تجاهلscalingParamsScalingLazyColumn(Ie375c). - أضفنا مساحة متروكة إلى
CompactChipللتأكّد من أنّ حجم هدف النقر يبلغ 48 بكسل مستقل الكثافة على الأقل، وذلك لاستيفاء إرشادات تسهيل الاستخدام في Material Design. قد يؤثّر ذلك في أي تنسيقات تستخدمCompactChipsلأنّها ستشغل مساحة إضافية. (I3d57c)
الإصدار 1.0.0-beta03
1 يونيو 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-beta03 وandroidx.wear.compose:compose-material:1.0.0-beta03 وandroidx.wear.compose:compose-navigation:1.0.0-beta03. يتضمّن الإصدار 1.0.0-beta03 هذه التعديلات.
الميزات الجديدة
- لقد أتحنا استخدام
ScalingLazyColumnفي وضع Compose@Preview. (I3b3b6، b/232947354)
تغييرات واجهة برمجة التطبيقات
- لقد غيّرنا القيمة التلقائية للسمة
ScalingLazyColumn.horizontalAlignmentمن "البداية" إلىCenterHorizontallyلضمان محاذاة عناصر القائمة عند عدم ملء العرض الكامل للعمود، وذلك لتحقيق أقصى قدر من الوضوح. للرجوع إلى السلوك السابق، اضبطhorizontalAlignment = Alignment.Start.(I9ed4b)
المشاكل المعروفة
- ارتفاع النقر/اللمس في CompactChip أصغر من إرشادات تسهيل الاستخدام في Material. سيتم تصحيح ذلك في الإصدار التالي (15 يونيو). إذا كنت تستخدم CompactChip، سيؤثّر ذلك في تخطيطاتك لأنّ CompactChips ستتضمّن الآن مساحة متروكة إضافية أعلى وأسفل. يُرجى تعديل تنسيقاتك واختبارها أو الاطّلاع على تعليقات الخطأ لمعرفة حلّ بديل لاستخدام السلوك الحالي. (b/234332135)
إصلاح الأخطاء
- عرض توضيحي جديد حول تحريك عملية إضافة نص بدء أو إزالته على
TimeText(I16d75) - إضافة اختبارات لـ
HorizontalPageIndicator.PagesState(I64ed0) - تعديل
TimeTextليكون أقرب إلى مواصفات تجربة المستخدم (Ib7ea1)
الإصدار 1.0.0-beta02
18 مايو 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-beta02 وandroidx.wear.compose:compose-material:1.0.0-beta02 وandroidx.wear.compose:compose-navigation:1.0.0-beta02. يتضمّن الإصدار 1.0.0-beta02 هذه التعديلات.
الميزات الجديدة
- تستجيب أداة الاختيار الآن دائمًا لأحداث التمرير حتى عندما تكون في وضع القراءة فقط. يؤدي ذلك إلى تجنُّب حاجة المستخدمين إلى اختيار أداة اختيار أولاً من خلال النقر عليها، قبل أن يتمكّنوا من التمرير. في وضع القراءة فقط، يتم حجب الخيارات الأخرى غير المحدّدة حاليًا باستخدام طبقة وسيطة باللون
gradientColor. (I72925) - لقد غيّرنا سلوك تجربة المستخدم في
Chip/ToggleChip/CompactChip/SplitToggleChipلمنعهم من تنفيذfillMaxWidthتلقائيًا. بدلاً من ذلك، ستتوسّع لتناسب محتواها. للحفاظ على السلوك السابق، ما عليك سوى إضافةmodifier = Modifier.fillMaxWidth()(I60a2c، b/232206371).
إصلاح الأخطاء
- تتضمّن الدالة الإنشائية
CurvedTextStyleالآن أيضًاTextStyle(قد تتم إضافة ذلك إلى الدالة الإنشائية وطُرق النسخ في المراجعات المستقبلية لواجهة برمجة التطبيقات) (Ieebb9)fontWeight - تحسينات على التمرير السريع من الحافة عند استخدام
Modifier.edgeSwipeToDismissوتفعيل التمرير سريعًا إلى اليسار من منطقة الحافة، لن يتم بعد ذلك تفعيل التمرير سريعًا للإغلاق عند تغيير اتجاه التمرير سريعًا إلى اليمين. في السابق، كان من الممكن تفعيل ميزة "التمرير سريعًا للإغلاق" من خلال التمرير سريعًا إلى اليسار ثم إلى اليمين.(I916ea) HorizontalPageIndicatorيعرض الآن ما يصل إلى 6 صفحات على الشاشة. إذا كان هناك أكثر من 6 صفحات إجمالاً، سيظهر مؤشر بحجم نصف الشاشة على اليمين أو اليسار، مع انتقال سلس بين الصفحات.(I2ac29)- تحسين السلوك التلقائي للمحاذاة على
ScalingLazyColumnوPicker(I49539) - تحسينات على التمرير السريع من الحافة عند استخدام
Modifier.edgeSwipeToDismiss، لا يتم تفعيل ميزة "التمرير سريعًا للإغلاق" إلا عند النقر أولاً على الحافة ثم التمرير سريعًا إلى اليمين. في السابق، كان من الممكن تفعيل ميزة "التمرير سريعًا للإغلاق" من خلال التمرير سريعًا من أي جزء من الشاشة إذا وصل التمرير إلى البداية.(I8ca2a)
الإصدار 1.0.0-beta01
11 مايو 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-beta01 وandroidx.wear.compose:compose-material:1.0.0-beta01 وandroidx.wear.compose:compose-navigation:1.0.0-beta01. يتضمّن الإصدار 1.0.0-beta01 هذه التعديلات.
ميزات الإصدار 1.0 من Compose for Wear OS
يمثّل الإصدار 1.0.0-beta01 من Compose for Wear OS إنجازًا مهمًا، إذ إنّ المكتبة تتضمّن جميع الميزات وتم قفل واجهة برمجة التطبيقات.
تشمل مكوّنات Wear Compose Material في الإصدار 1.0 ما يلي:
- Material Theme: يُستخدم كبديل عن
MaterialThemeCompose for MobileMaterialTheme، ويوفر الألوان والأشكال وأسلوب الخط لإنشاء مكوّنات على الأجهزة القابلة للارتداء التي تنفّذ إرشادات تجربة المستخدم في Wear التصميم المتعدد الأبعاد بدون أي إعدادات إضافية. -
ButtonوCompactButtonوToggleButton: يوفّر الزرّ خانة واحدة لعرض رمز أو صورة أو نص قصير (3 أحرف كحد أقصى). دائري الشكل مع أحجام مقترَحة للأزرار التلقائية أو الكبيرة أو الصغيرة توفّرCompactButtonخانة واحدة لعرض أي محتوى (رمز أو صورة أو نص) وهي دائرية الشكل وحجم الخلفية صغير جدًا. تحتويCompactButtonعلى مساحة متروكة شفافة اختيارية حول الخلفية تزيد من مساحة النقر.ToggleButtonهو زر يوفّر خانة واحدة لاستيعاب أي محتوى (نص قصير أو رمز أو صورة) ويتضمّن حالتين (محدّد أو غير محدّد) مع تلوين ورموز مختلفة للإشارة إلى ما إذا كان محدّدًا أم لا - البطاقات: تُستخدَم لعرض معلومات حول التطبيقات، مثل الإشعارات. تصميم مرن لحالات الاستخدام المختلفة، حيث يوفّر
AppCardوTitleCardتصاميم مختلفة ويتيحان استخدام الصور كمحتوى للبطاقات أو كخلفيات. - الشرائح: هي مكوّنات على شكل ملعب تشبه الأزرار، ولكنها تحتوي على مساحة أكبر وفتحات متعددة للسماح بإضافة التصنيفات والتصنيفات الثانوية والرموز. بأحجام مختلفة مع إمكانية استخدام الصور كخلفيات
- ToggleChips وSplitToggleChips: عبارة عن شريحة تتضمّن حالة تمييز/إزالة التمييز، بالإضافة إلى فتحة
ToggleControlلعرض رمز، مثل مفتاح التبديل أو زر الاختيار، لإظهار حالة تمييز المكوّن. بالإضافة إلى ذلك، يحتوي الرمزSplitToggleChipعلى منطقتَين يمكن النقر عليهما، إحداهما قابلة للنقر والأخرى قابلة للتبديل. - CircularProgressIndicator: مؤشر تقدّم Wear Material يتضمّن خيارَين. يعرض المقياس الأول نسبة إكمال مهمة قيد التنفيذ ويتيح وجود فجوة في المسار الدائري بين زاويتَي البدء والانتهاء. يشير الخيار الثاني إلى تقدّم غير محدّد لوقت انتظار غير محدّد.
- curvedText: يشكّل جزءًا من اللغة الخاصة بالنطاق (DSL) لوصف
CurvedLayouts، بالإضافة إلىcurvedRowوcurvedColumn، وذلك لتنظيم المكوّنات حول الأجهزة الدائرية. راجِع القسم Wear Component Foundation أدناه لمعرفة المزيد من التفاصيل عنCurvedLayoutوCurvedModifier(يؤدي هذا الدور وظيفة مشابهة لوظيفة Modifiers في التصميم غير المنحني ويسمح بإعداد جوانب مختلفة من التصميم، مثل المساحة المتروكة والتدرجات وما إلى ذلك). - مربّع الحوار والتنبيه والتأكيد: يعرض مربّع الحوار مربّع حوار بملء الشاشة، ويتم عرضه فوق أي محتوى آخر، ويتيح إمكانية إغلاقه عن طريق التمرير سريعًا. تأخذ هذه السمة خانة واحدة من المتوقّع أن تكون محتوى مربّع حوار Wear Material، مثل "تنبيه" أو "تأكيد". التنبيه هو محتوى مربّع حوار يتضمّن آراء مع خانات للرمز والعنوان والرسالة. يتضمّن هذا المكوّن عمليات تحميل زائدة لزرّين سلبيين وإيجابيين معروضين جنبًا إلى جنب أو خانة لشريحة واحدة أو أكثر مكدّسة عموديًا. التأكيد هو محتوى مربّع حوار يتضمّن آراء ويعرض رسالة لمدة زمنية محدّدة. يتضمّن مساحة مخصّصة لرمز أو صورة (يمكن أن تكون متحركة).
- HorizontalPageIndicator: يعرض موضع الصفحة الأفقي بطريقة مناسبة لشكل الجهاز القابل للارتداء. تم تصميمها لتملأ الشاشة بالكامل وعرض مؤشر منحني على الأجهزة الدائرية. يمكن استخدامها مع عارض صفحات Accompanist.
- الرمز: هو تنفيذ لـ "الرمز" على Wear، ويستمد اللون والشفافية من "مظهر Wear Material". بالنسبة إلى الرمز القابل للنقر، اطّلِع على الزر أو الشريحة.
- أداة الاختيار: تعرض قائمة قابلة للتمرير تتضمّن عناصر يمكن الاختيار من بينها. سيتم تكرار العناصر تلقائيًا "إلى ما لا نهاية" في كلا الاتجاهين. يمكن عرضها في وضع القراءة فقط لإخفاء الخيارات غير المحدّدة.
- PositionIndicator: يعرض موضع التمرير أو أي إشارة موضعية أخرى بطريقة مناسبة لشكل الجهاز القابل للارتداء. تم تصميمها لتملأ الشاشة بالكامل وتعرض مؤشرًا منحنيًا على الأجهزة الدائرية.
- Scaffold: تنفِّذ هذه الفئة بنية التنسيق المرئي الأساسي في Wear Material Design. يوفّر هذا المكوّن واجهة برمجة تطبيقات لتجميع عدّة مكوّنات Wear Material (مثل
TimeTextوPositionIndicatorوVignette) لإنشاء الشاشة، ما يضمن استراتيجية التنسيق المناسبة لها وجمع البيانات اللازمة لتعمل هذه المكوّنات معًا بشكل صحيح. - ScalingLazyColumn: مكوّن قائمة تمرير وتغيير حجم/عين السمكة يشكّل جزءًا أساسيًا من لغة Wear التصميم المتعدد الأبعاد. يوفّر تأثيرات تغيير الحجم والشفافية لعناصر المحتوى. تم تصميم
ScalingLazyColumnللتعامل مع أعداد كبيرة محتملة من عناصر المحتوى، والتي لا يتم إنشاؤها وتجميعها إلا عند الحاجة. - شريط التمرير: يتيح للمستخدمين إجراء اختيار من نطاق من القيم. يظهر نطاق الاختيارات كشريط يمكن عرضه اختياريًا مع فواصل.
- شريط الخطوات: هو مكوِّن بملء الشاشة يتيح للمستخدمين إجراء تحديد من مجموعة من القيم، وذلك باستخدام أزرار الزيادة/النقصان في أعلى الشاشة وأسفلها، مع توفير خانة في المنتصف لعرض نص أو شريحة.
- SwipeToDismissBox: يتعامل مع إيماءة التمرير السريع للإغلاق. يستخدِم هذا المكوّن خانة واحدة للخلفية (لا يتم عرضها إلا أثناء إيماءة التمرير سريعًا) ومحتوى المقدّمة. يمكن اختياريًا دمجها مع مكتبة التنقّل androidx باستخدام
SwipeDismissableNavHost(راجِع مكتبة التنقّل في Wear Compose أدناه). - Text: تنفيذ Wear لمكوّن Compose Material Text، مع أخذ اللون والشفافية من Wear Material Theme
- TimeText: مكوّن لعرض الوقت وحالة التطبيق في أعلى الشاشة تتكيّف مع شكل الشاشة من خلال استخدام نص منحني على الشاشات الدائرية.
Vignette: هي طريقة عرض على الشاشة لاستخدامها في Scaffold، وتعمل على تمويه الجزء العلوي والسفلي من الشاشة عند استخدام محتوى قابل للتمرير.
يتم أيضًا تضمين المكوّنات التالية من Wear Compose Foundation:
CurvedLayout - Wear Foundation
CurvedLayoutهي دالة قابلة للإنشاء خاصة بالتصميم تضع العناصر الثانوية في قوس وتدوّرها حسب الحاجة. يشبه ذلك تصميم الصف المنحني إلى جزء من حلقة دائرية. يُرجى العِلم أنّ محتوىCurvedLayoutليس دالة lambda قابلة للإنشاء، بل هو لغة خاصة بالمجال (DSL). تتيح جميع العناصر في CurvedLayout DSL استخدام مَعلمة معدِّل اختيارية، يتم إنشاؤها منCurvedModifier.basicCurvedText: عنصر في لغة
CurvedLayoutDSL، يتيح للمطوّرين كتابة نص منحني بسهولة باتّباع انحناء الدائرة (عادةً على حافة شاشة دائرية).basicCurvedTextلا يمكن إنشاءbasicCurvedTextإلا داخلCurvedLayoutلضمان توفير أفضل تجربة، مثل إمكانية تحديد موضع الإعلان واستخدامCurvedModifiers. يُرجى العِلم أنّه في معظم الحالات، يجب استخدام curvedText بدلاً من ذلك، لأنّه يستخدم تصميم Material.curvedComposable: يغلّف المحتوى العادي القابل للإنشاء حتى يمكن استخدامه مع
CurvedLayout. إذا كانcurvedComposableيحتوي على عدة عناصر في داخله، سيتم رسمها فوق بعضها البعض (مثل المربع). لوضع عدة عناصر قابلة للإنشاء على طول منحنى، عليك تضمين كل عنصر فيcurvedComposable.curvedRow وcurvedColumn: يشبهان Row وColumn، ويمكن تضمين
curvedRowوcurvedColumnداخلCurvedLayoutلترتيب العناصر حسب الحاجة. بالنسبة إلىcurvedRow، يمكن تحديد اتجاه التنسيق الزاوي والمحاذاة الشعاعية. بالنسبة إلىcurvedColumn، يمكن تحديد المحاذاة الزاوية والاتجاه الشعاعي.CurvedModifier: تقبل جميع المكوّنات المنحنية مَعلمة معدِّل يمكن إنشاؤها باستخدام
CurvedModifier. تتوفّر الخلفية والحجم والوزن والهوامش.يتم أيضًا تضمين المكوّن التالي من Wear Compose Navigation:
SwipeDismissableNavHost: توفّر مكانًا في التسلسل الهرمي لـ Compose لإجراء تنقّل مستقل، مع توفير التنقّل للخلف من خلال إيماءة التمرير السريع. يتم عرض المحتوى داخل
SwipeToDismissBox، ما يشير إلى مستوى التنقّل الحالي. أثناء الإيماءة "التمرير السريع للإغلاق"، يظهر مستوى التنقّل السابق (إن وُجد) في الخلفية.راجِع ملاحظات الإصدار السابقة لمختلف إصدارات Alpha للحصول على مزيد من التفاصيل حول ما تم تقديمه.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة دوال
CurvedModifier.padding*. تُستخدَم هذه السمة لتحديد مساحة إضافية سيتمّ إضافتها حول مكوّن منحني. (I4dbb4) - تمت إزالة الفئة الداخلية
CompositionLocal(I42490) - أضفنا قيمًا ثابتة لأحجام الرموز
ButtonوCompactButtonوToggleButton، وذلك كإرشادات (I57cab) - أضِف المَعلمة enabled إلى
AppCardوTitleCard. تتضمّن الآن واجهة برمجة تطبيقات مشابهة لبطاقاتandroidx.compose.material. عند ضبط المَعلمة على "خطأ"، لن يكون من الممكن النقر على البطاقة. (Idc48d، b/228869805)
إصلاح الأخطاء
- توقف أداة Stepper الآن الزرَّين "إنقاص" و"زيادة" عند الوصول إلى الحدّ الأدنى أو الأقصى (ويتم تطبيق ContentAlpha.disabled على iconColor) (I4be9f)
- أضفنا مساحة متروكة بحجم وحدة بكسل واحدة حول محتوى أداة الاختيار عند رسمها باستخدام تدرّج لوني لمنع حدوث تشويش في النص عند التمرير سريعًا. (I0b7b9)
- إضافة اختبارات لقطات الشاشة لتطبيق
PositionIndicator(I5e8bc) - إضافة المزيد من الاختبارات لـ
AppCardوTitleCard(I85391 وb/228869805)
الإصدار 1.0.0-alpha21
20 أبريل 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha21 وandroidx.wear.compose:compose-material:1.0.0-alpha21 وandroidx.wear.compose:compose-navigation:1.0.0-alpha21. يتضمّن الإصدار 1.0.0-alpha21 هذه التعديلات.
الميزات الجديدة
- تمت إضافة معدِّلات منحنية جديدة لتحديد خلفية عنصر منحني:
CurvedModifier.backgroundو.radialGradientBackgroundو.angularGradientBackground(I8f392) - السماح بتحديد وضع تجاوز النص المنحني (قص/علامة حذف/مرئي) (I8e7aa)
- تمت إضافة معدِّل
CurvedModifier.weight، وهو مشابه للمعدِّل في Compose. يمكن استخدام ذلك مع العناصر التابعة لكل من curvedRow وCurvedLayout (بالنسبة إلى العرض) والعناصر التابعة لـ curvedColumn (بالنسبة إلى الارتفاع). (I8abbd) - تمت إضافة المعدّلات
CurvedModifier.sizeو.angularSizeو.radialSizeلتحديد حجم عنصر منحني. (I623c7)
تغييرات واجهة برمجة التطبيقات
- إعادة ترتيب المَعلمات لضمان ظهور الخلفية قبل اللون بشكلٍ متّسق في جميع أنحاء Wear Compose API (I43208)
- تمت إزالة المَعلمتَين clockwise و
insideOutواستبدالهما بثوابت أكثر تعبيرًا في الفئات الجديدة. يمكن الآن أن يكون اتجاه التنسيق المنحني على دراية بـLayoutDirection، ويتم توريثه عند عدم تحديده (If0e6a). - لقد استبدلنا
autoCenter: BooleanبـautoCenter: AutoCentringParamsمن أجل حلّ مشكلة في واجهة برمجة التطبيقاتScalingLazyColumn. (Ia9c90) - أعدنا تسمية
iconTintColorوtoggleControlTintColorإلىiconColorوtoggleControlColorفي جميع أنحاء واجهة برمجة التطبيقات (Chip/ToggleChip/Dialog/Slider/Stepper/...) لأنّه يتم تطبيق اللون على خانة الرمز/toggleControl. (Ied238) - إعادة كتابة تعداد
PageIndicatorStyleفي فئة القيمة (I2dc72) - أضفنا
RowScope/ColumnScope/BoxScopeإلى بعض الخانات في عناصر Composables للإشارة إلى المطوّرين إلى افتراضات التصميم. سيسمح ذلك للمطوّرين باستخدام معدّلات إضافية على بعض محتوى الخانات الإعلانية وتجنُّب الحاجة إلى توفير عناصر تخطيط إضافية. بالإضافة إلى ذلك، أجرينا بعض التعديلات البسيطة على ألوان AppCard/TitleCard لكي يتم ضبطtimeColorوappColorتلقائيًا علىcontentColor، ولكن يمكن إلغاء كل هذه الخصائص بشكل فردي إذا لزم الأمر. (I26b59) - جعل الكائن
SwipeToDismissBoxState.Companionخاصًا (I39e84) - إصلاح ترتيب المَعلمات لـ
InlineSliderوStepperتغيير بسيط لاتّباع إرشادات واجهة برمجة التطبيقات (I11fec) - لقد أزلنا عنصر Saver من
SwipeToDismissBoxStateلأنّه لم يتم استخدامه. (Ifb54e) - لقد عدّلنا
CompactChipليتوافق مع أحدث مواصفات تجربة المستخدم. تم تقليل المساحة المتروكة إلى أفقي = 12.dp وعمودي = 0.dp. تم تغيير خط التصنيف من زر إلى caption1. أحجام الرموز الموصى بها هي 20x20 عند توفّر الرمز والتصنيف، و24x24 لرقاقة مضغوطة تحتوي على رمز فقط. في حالة استخدام الرمز فقط، حرصنا أيضًا على أن يكون الرمز محاذيًا للوسط. (Iea2be) - أضفنا عددًا من الحقول الجديدة إلى
ScalingLazyListLayoutInfoلتمكين المطوّرين من معرفة مقدارcontentPaddingوautoCenteringPaddingالذي تم تطبيقه. ويمكن أن تكون هذه القيم مفيدة للمطوّرين عند احتساب التمرير السريع/التمرير (I7577b). - لقد نفّذنا عمليات انتقال للظهور والاختفاء في مربّع الحوار. تمت إضافة المَعلمة
showDialog، وأصبح مربّع الحوار يتحكّم الآن في إمكانية ظهوره (يتيح ذلك لمربّع الحوار تشغيل الرسوم المتحركة الخاصة بالمقدمة والخاتمة عند عرض مربّع الحوار أو إخفائه). يُرجى العِلم أنّه لا يتم تنفيذ الرسوم المتحركة الخاصة بالمشهد الختامي عندما يغادر المستخدم مربع الحوار من خلال التمرير سريعًا للإغلاق. أضفنا أيضًا قيمة تلقائية للحالة في عملية التحميل الزائدSwipeToDismissBoxالتي أضفناها مؤخرًا. (I682a0) - من أجل توفير دعم أفضل للتدويل وإمكانية الوصول، غيّرنا
ToggleChipوSplitToggleChipبحيث لم يعودا يتضمّنان قيمة تلقائية للخانةtoggleControl. لقد غيّرنا أيضًاToggleChipDefaultsلكي تعرض الطرق التالية الآن ImageVector بدلاً من Icon (يُرجى العِلم أنّها لم تعُد تعرض @Composables، لذا تم تغييرها لتبدأ بحرف صغير)، وSwitchIcon()->switchIcon()وCheckboxIcon->checkboxIcon()وRadioIcon()->radioIcon()، ما يتيح للمطوّرين إنشاء عناصرIcon()قابلة للإنشاء مع مجموعةcontentDescriptionمناسبة ويشجّعهم على ذلك. (I5bb5b) - أضفنا المَعلمة
SwipeDismissableNavHostStateإلىSwipeDismissableNavHost. يتيح ذلك استخدام التمرير السريع من الحافة على الشاشات المستخدَمة كوجهات تنقّل، لأنّه يمكن الآن رفعSwipeToDismissBoxStateواستخدامه لتهيئة كلّ منSwipeDismissableNavHostStateوModifier.edgeSwipeToDismissعلى الشاشات التي تتطلّب التمرير السريع من الحافة. (I819f5، b/228336555)
إصلاح الأخطاء
- تأكَّد من تعديل التصاميم المنحنية عند الحاجة. (Ie8bfa، b/229079150)
- إصلاح الخطأ https://issuetracker.google.com/issues/226648931 (Ia0a0a، b/226648931)
- تمت إزالة التعليقات التوضيحية التجريبية غير الضرورية (I88d7e)
الإصدار 1.0.0-alpha20
6 أبريل 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha20 وandroidx.wear.compose:compose-material:1.0.0-alpha20 وandroidx.wear.compose:compose-navigation:1.0.0-alpha20. يتضمّن الإصدار 1.0.0-alpha20 هذه التعديلات.
الميزات الجديدة
- أضِف المعدِّل
edgeSwipeToDismissإلىSwipeToDismiss. يسمح بأن يكونswipeToDismissنشطًا فقط على الحافة اليسرى لإطار العرض. يتم استخدامها عندما يحتاج مركز الشاشة إلى إمكانية التعامل مع التقسيم إلى صفحات أفقية، مثل التمرير في خريطة ثنائية الأبعاد أو التمرير سريعًا أفقيًا بين الصفحات.(I3fcec، b/200699800)
تغييرات واجهة برمجة التطبيقات
- تنفيذ أساسي للسمة
CurvedModifiers، ما يمهّد الطريق لتقديم طرق لتخصيص المحتوى المنحني (ولكن لم يتم توفير أيCurvedModifiersحتى الآن، وقد تتوفّر إمكانية إنشاء معدِّلات مخصّصة في وقت لاحق) (I9b8df) - تعديل مستندات المعدِّل والقيم التلقائية لتسهيل الفهم (I6d00d)
EdgeSwipe - أضِف فتحة
PageIndicatorإلى Scaffold. من خلال إضافةPageIndicatorمباشرةً إلى Scaffold، يمكننا التأكّد من أنّه سيتم عرضه بشكل صحيح على الأجهزة الدائرية. (Ia6042) - إزالة الرموز التلقائية من المَعلمتَين
InlineSliderوStepper سيساعد ذلك المطوّرين على الاهتمام بشكل أكبر بمتطلبات إمكانية الوصول والملاءمة مع اللغات المحلية. تم عرض استخدامات الأيقونات التلقائية في العروض التوضيحية والأمثلة. (I7e6fd) - استبدال أسماء المَعلمات Trailing وLeading بـ Start وEnd في TimeText (Iaac32)
- لقد أضفنا حمولة زائدة
SwipeToDismissBoxمع مَعلمةonDismissedلدعم الاستخدام الشائع لتفعيل حدث تنقّل عند اكتمال إيماءة السحب. (I50353، b/226565726) - تمت إزالة
ExperimentalWearMaterialApiتعليق توضيحي من استخدامTimeText(Ide520) - لقد وضعنا علامة "مغلق" على نطاق
ScalingLazyList/Columnوواجهات المعلومات لأنّنا لا نريد أن ينفّذها المطوّرون الخارجيون، وسيتيح لنا ذلك إضافة أعضاء جدد إليها في المستقبل بدون إجراء تغييرات غير متوافقة مع الإصدارات السابقة. (I7d99f) - أضفنا السمة
flingBehaviourالجديدة إلى أداة الاختيار والطريقةPickerDefaults.flingBehaviour()لتفعيل إعدادات سلوك التمرير السريع، مثل إضافة دعم RSB. تنفّذPickerStateالآن واجهةScrollableState. (Ib89c7)
إصلاح الأخطاء
- تعديل قواعد ملفات تعريف خط الأساس في وقت تشغيل Android (ART) لمكتبات Wear Compose يمكن أن تستفيد ART من قواعد الملفات الشخصية على الأجهزة لتجميع مجموعة فرعية معيّنة من التطبيق مسبقًا من أجل تحسين أداء التطبيق. يُرجى العِلم أنّ هذا لن يؤثر في التطبيقات التي يمكن تصحيح أخطائها. (Iaa8ef)
- تحسين المستندات (I2c051)
الإصدار 1.0.0-alpha19
23 مارس 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha19 وandroidx.wear.compose:compose-material:1.0.0-alpha19 وandroidx.wear.compose:compose-navigation:1.0.0-alpha19. يتضمّن الإصدار 1.0.0-alpha19 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية
CurvedRowإلىCurvedLayout، وإعادة تصميمها لتصبح نطاقًا مع لغة خاصة بالمجال. باستخدام لغة DSL هذه، يمكن تحديد التصاميم المنحنية الأكثر تعقيدًا باستخدام سلسلة منcurvedRowوcurvedColumnالمتداخلة (وهي مكافئات التصميم المنحني لكل من Row وColumn). يمكن استخدام ثلاثة عناصر داخل عناصر التنسيق هذه:curvedComposable(لإضافة أي @Composable)، وbasicCurvedText(نص منحني أساسي)، وcurvedText(نص منحني متوافق مع تصميم Wear). (Ib776a) - إتاحة إمكانية ضبط جهة
PositionIndicatorيمكن الآن ضبط موضع PositionIndicator الأساسي على "النهاية" (مع مراعاة اتجاه التنسيق)، أو OppositeRsb (مع مراعاة دوران الشاشة، لتحديد موضعها مقابل زر RSB الفعلي)، أو "اليسار" و"اليمين" المطلقَين. (I2f1f3) - بالنسبة إلى
SwipeToDismissBox، أعدنا تسميةSwipeDismissTarget.Original إلىSwipeToDismissValue.DefaultوSwipeDismissTarget.DismissalإلىSwipeToDismissValue.Dismissed. نقلنا أيضًاSwipeToDismissBoxDefaults.BackgroundKeyوSwipeToDismissBoxDefaults.ContentKeyإلىSwipeToDismissKeys.BackgroundوSwipeToDismissKeys.Contentعلى التوالي. (I47a36) - أضفنا وضع القراءة فقط إلى أداة Picker، وذلك للشاشات التي تتضمّن أدوات Picker متعددة حيث يمكن تعديل أداة Picker واحدة فقط في كل مرة. عندما يكون أداة الاختيار للقراءة فقط، تعرض الخيار المحدّد حاليًا وتصنيفًا إذا تم توفيره. (I879de)
- تمت إعادة تصميم
SwipeToDismissBoxStateللحدّ من نطاقExperimentalWearMaterialApiليشملModifier.swipeableوSwipeableState، ويتم استخدامهما الآن داخليًا. يتضمّنSwipeToDismissBoxStateالآن الأعضاءcurrentValueوtargetValueوisAnimationRunningوsnapToلدعم حالات الاستخدام الشائعة. يُرجى إعلامنا إذا كنت بحاجة إلى توفير أي خصائص أخرى. تم أيضًا إصلاح سلوكSwipeableStateفي حال كان إزاحة التمرير السريع ضمن خطأ تقريب لعلامة ارتساء. (I58302)
إصلاح الأخطاء
- تم تبسيط الرمز البرمجي وإصلاحه لرصد ما إذا كان يمكن التنقّل في محتوى
ScalingLazyColumn(يُستخدم لتحديد ما إذا كنا سنعرض شريط تمرير أم لا) (I7bce0) - تم إصلاح خطأ في "مؤشر الموضع" عند استخدامه مع أكثر من حالة واحدة والتبديل بينها (I320b5)
- لقد عدّلنا الخطوط/الكتابة في المظهر التلقائي لـ Compose for Wear OS ليتوافق مع أحدث إرشادات تجربة المستخدم. يُرجى العِلم أنّ حجم الخط display1 (40.sp) وdisplay2 (34.sp) أصبح أصغر من القيم السابقة، كما تم إجراء العديد من التعديلات الطفيفة الأخرى على ارتفاع السطر والمسافة بين الأسطر. (Ie3077)
- أضفنا مقاومة لـ
SwipeToDismissBoxحتى لا تحدث الحركة إلا عند التمرير سريعًا للإغلاق وليس في الاتجاه المعاكس. (Ifdfb9) - لقد غيّرنا بعض قيم المَعلمات التلقائية للدوال
CircularProgressIndicatorلتتوافق مع إرشادات تجربة المستخدم في Wear التصميم المتعدد الأبعاد. بالنسبة إلى إصدار Spinner/Indeterminant، تم تعديل الحجم (40->24.dp) وindicatorColor (primary->onBackground) وشفافية trackColor (30%->10%) وعرض الخط (4->3dp). بالنسبة إلى الإصدار "شريط التقدم/محدد"، تم تعديل شفافية trackColor (من %30 إلى %10). (I659cc) - عدّلنا مَعلمات تغيير الحجم التلقائية لـ
ScalingLazyColumnبما يتوافق مع أحدث مواصفات تجربة المستخدم في "التصميم المتعدد الأبعاد" على Wear. يؤدي ذلك إلى بدء تغيير حجم عناصر القائمة لتصبح أقرب إلى مركز القائمة، ولكن مع تغيير حجم أقل عند حافة القائمة مقارنةً بالسابق. (Ica8f3) - بعض التعديلات على
ScalingLazyColumnDefaults.snapFlingBehaviorلتحسين نهاية الحركة (If3260)
الإصدار 1.0.0-alpha18
9 مارس 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha18 وandroidx.wear.compose:compose-material:1.0.0-alpha18 وandroidx.wear.compose:compose-navigation:1.0.0-alpha18. يتضمّن الإصدار 1.0.0-alpha18 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تم إجراء العديد من التحسينات على PositionIndicator: تمت إعادة تسمية ShowResult إلى PositionIndicatorVisibility. بعض التحسينات على الأداء لتجنُّب إعادة الحسابات عند عدم الحاجة إليها (Iaed9d)
- تم تعديل الألوان المقترَحة لـ
SplitToggleChip. تتضمّن الآن عناصر SplitToggleChip خلفية بلون ثابت عند تحديدها أو إلغاء تحديدها، ويكون لون ToggleControl هو المؤشر الأساسي لتحديد ما إذا كان المكوِّن محدّدًا أم لا. لقد أضفناToggleDefaults.splitToggleChipColors()جديدًا ليتوافق مع نظام الألوان الجديد. لقد بسّطنا أيضًا طرقtoggleChipColors()من خلال إزالة splitBackgroundOverlayColor (I7e66e). - أضفنا unadjustedSize إلى
ScalingLazyListItemInfoلأنّه ليس من الآمن احتساب حجم العنصر الأصلي باستخدام الحجم المعدَّل وعامل التحجيم بسبب دقة العمليات الحسابية ذات الفاصلة العائمة. (I54657، b/221079441) - أضِف
HorizontalPageIndicator. يمثّل هذا المقياس إجمالي عدد الصفحات وصفحة محدّدة. قد يكون خطيًا أو منحنيًا، وذلك حسب شكل الجهاز. يتيح هذا الخيار أيضًا استخدام شكل مؤشر مخصّص يحدّد طريقة تمثيل كل مؤشر بصريًا. (Iac898) - لقد عدّلنا
PickerStateليصبح بإمكانك تعديل قيمة numberOfOptions. يتيح ذلك حالات استخدام مثلDatePicker، عندما يتغيّر عدد الأيام في الشهر استنادًا إلى الشهر المحدّد. تم تغيير مَعلمة الدالة الإنشائية PickerState إلى initialNumberOfOptions وفقًا لذلك. (Iad066) - إخفاء
PositionIndicatorعندما يكون شريط تمرير ولا يمكن التمرير. (Id0a7f) - لضمان التوافق مع Scaffold، يعرض مكوّن مربّع الحوار في وضع ملء الشاشة الآن
PositionIndicatorوVignette. نستخدم الآنScalingLazyColumnبدلاً منColumn، ما يعني أنّ محتوى مربّع الحوار أصبح الآن فيScalingLazyListScope(ويجب عادةً أن يكون محاطًا بالعنصر { /* content */ }). يتوافق مربّع الحوار مع المَعلمة verticalArrangement وفقًا لذلك. (Idea13) - لقد غيّرنا اسم السمة toggleIcon في
ToggleChipوSplitToggleChipإلى toggleControl ليتوافق بشكل أفضل مع التصميم المتعدد الأبعاد، وذلك لمساعدة المصمّمين والمطوّرين في التنقّل في واجهة برمجة التطبيقات. (If5921، b/220129803) - لقد أضفنا إدخالاً جديدًا باسم caption3 إلى تصنيف "موضوع Wear Material". وcaption3 هو خط صغير يُستخدم للكتابة الطويلة جدًا، مثل النصوص القانونية. (I74b13، b/220128356)
إصلاح الأخطاء
- إيقاف الصورة المتحركة التي يتم عرضها عند الوصول إلى الموقع الجغرافي (Idb69d)
- تحريك التغييرات في PositionIndicator (I94cb9)
- استنادًا إلى الملاحظات الواردة بشأن واجهة المستخدم وتجربة المستخدم، غيّرنا ميزة
ScalingLazyColumnautoCentering لكي توفّر مساحة كافية فقط للتأكّد من إمكانية التمرير الكامل للعناصر التي تتضمّن الفهرسScalingLazyListState.initialCenterItemIndexأو أعلى إلى منتصف إطار العرض. يتيح ذلك للمطوّرين وضع عنصر أو عنصرَين في البداية في المنتصف لا يمكن الانتقال إليهما من خلال التمرير إلى المنتصف. سيعني ذلك أنّه لن يكون بإمكانScalingLazyColumnالذي يتم توسيطه تلقائيًا الانتقال للأعلى منinitialCenterItemIndex/initialCenterItemScrollOffset(I22ee2). - أضفنا عرضًا توضيحيًا لأداة اختيار التاريخ وأصلحنا خطأً في
PickerStateحيث لم يتم تطبيق initiallySelectedOption إلا بعد عرض أداة الاختيار. (Id0d7e) - للحدّ من اقتصاص عناصر
ScalingLazyColumnالأوسع على الشاشات الدائرية، زدنا مساحة الحشو التلقائية للمحتوى الأفقي من 8 إلى 10 وحدات بكسل مستقلة عن الكثافة. (I0d609) - تأكَّد من ظهور
PositionIndicatorعند التمرير. (Ied9a2)
الإصدار 1.0.0-alpha17
23 فبراير 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha17 وandroidx.wear.compose:compose-material:1.0.0-alpha17 وandroidx.wear.compose:compose-navigation:1.0.0-alpha17. يتضمّن الإصدار 1.0.0-alpha17 هذه التعديلات.
الميزات الجديدة
- أضفنا إمكانية استخدام ميزة "الانطباق" مع
ScalingLazyColumn. اضبط القيمة علىflingBehavior = ScalingLazyColumnDefaults.flingWithSnapBehavior(state)لتفعيل ميزة "المحاذاة". (I068d3، b/217377069) - أضفنا عروضًا توضيحية لأداة الاختيار المستخدَمة لاختيار وقت بتنسيق 24 ساعة أو 12 ساعة. (Ie5552)
تغييرات واجهة برمجة التطبيقات
- إصلاح مشكلة في الخطوط والأنماط المخصّصة
TimeTextعلى جهاز مربّع (Iea76e) - أصبح
ScalingLazyListLayoutInfoيتضمّن الآن السماتreverseLayoutوviewportSizeوالاتجاه التي تتطابق مع تلك الواردة منLazyListLayoutInfo(I4f258، b/217917020) - يحتوي
ScalingLazyColumnالآن على السمةuserScrollEnabledالتي تتطابق مع السمة منLazyList(I164d0، b/217912513) - تتضمّن أدوات الاختيار الآن تدرّجًا في الأعلى والأسفل تلقائيًا (Iab92a).
إصلاح الأخطاء
- لقد عدّلنا
ScalingLazyColumnلكي لا يملأ كل المساحة في العنصر الأصل بشكل مفرط. بدلاً من ذلك، سيتم تحديد حجمها من حجم محتواها. ويجعل ذلك السلوك متوافقًا مع سلوكLazyColumn. إذا أردت إعادة السلوك القديم، مرِّرModifier.fillMaxWidth()/width()/widthIn()إلىScalingLazyColumn(I51bf8). - لقد حسّنّا رسالة الخطأ في
SwipeDismissableNavHost.ktالتي يتم عرضها إذا كانت حزمة الخلف فارغة. (I1b1dc)
الإصدار 1.0.0-alpha16
9 فبراير 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha16 وandroidx.wear.compose:compose-material:1.0.0-alpha16 وandroidx.wear.compose:compose-navigation:1.0.0-alpha16. يتضمّن الإصدار 1.0.0-alpha16 هذه التعديلات.
الميزات الجديدة
- أضِف
CircularProgressIndicator. تعرض مؤشرات التقدّم مدة عملية أو وقت انتظار غير محدّد. تتيح عرض فجوة (فتحة) لعنصر TimeText أو عناصر أخرى في حال استخدامها بملء الشاشة. (Iab8da)
تغييرات واجهة برمجة التطبيقات
- تتضمّن أدوات الاختيار الآن المَعلمة
flingBehavior، وتجعل القيمة التلقائية هذه الأدوات تنطبق على الخيار الأقرب عند التمرير سريعًا أو التمرير. (I09000) - واجهة برمجة تطبيقات إضافية للأعداد الصحيحة من أجل InlineSlider وStepper (I1b5d6)
إصلاح الأخطاء
- لقد غيّرنا القيمة التلقائية لـ initialCenterItemIndex في
ScalingLazyListStateمن 0 إلى 1. هذا يعني أنّه ما لم يتم تجاهل ذلك عند إنشاء الحالة باستخدامScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =)، سيتم وضع العنصر الثاني في القائمة (index == 1) في وسط نافذة العرض عند التهيئة، وسيتم وضع العنصر الأول (index == 0) قبله. يتيح ذلك الحصول على تأثير مرئي أفضل تلقائيًا لأنّ معظم إطار العرض سيتم ملؤه بعناصر القائمة. (I0c623، b/217344252) - لقد خفّضنا
ScalingLazyColumnالقيمة التلقائيةextraPaddingالتي يتم توفيرها لضمان توفّر الكثير من عناصر القائمة التي يمكن الرسم منها (حتى عندما يتم تقليل حجم بعضها) من% 10 إلى %5. سيؤدي ذلك إلى تجنُّب إنشاء عناصر قائمة إضافية قد لا تظهر في إطار العرض. في حال استخدام scalingParams غير العادية (مثل التوسيع المفرط)، يمكن للمطوّر ضبط المساحة الإضافية باستخدامviewportVerticalOffsetResolver. (I76be4) - إصلاح مشكلة في TimeText على أسطر متعددة على جهاز مربّع (Ibd3fb)
- لقد عدّلنا
ScalingLazyColumnلكي لا يملأ كل المساحة في العنصر الأصل بشكل مفرط. بدلاً من ذلك، سيتم تحديد حجمها من حجم محتواها. ويجعل ذلك السلوك متوافقًا مع سلوكLazyColumn. إذا أردت إعادة السلوك القديم، مرِّرModifier.fillMaxSize()إلىScalingLazyColumn- ملاحظة: هذا التغيير غير مكتمل وسيتم تناوله في تغيير لاحق في إصدار Alpha التالي. (I3cbfa)
الإصدار 1.0.0-alpha15
26 يناير 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha15 وandroidx.wear.compose:compose-material:1.0.0-alpha15 وandroidx.wear.compose:compose-navigation:1.0.0-alpha15. يتضمّن الإصدار 1.0.0-alpha15 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- أضفنا السمة الجديدة
autoCenteringإلىScalingLazyColumn. عندما تكون القيمة صحيحة (وهي القيمة التلقائية)، سيضمن ذلك إمكانية التمرير لجميع العناصر، بما في ذلك العنصر الأول والأخير، لتظهر في وسط إطار عرض القوائم. يُرجى العِلم أنّه في حال استخدام التوسيط التلقائي، من المحتمل أنّك تريد ضبط مساحة الحشو العمودية للمحتوى على 0.dp. إذا تم توفير كلّ من autoCentering وvertical content padding، سيؤدي ذلك إلى توفير مساحة إضافية قبل العنصر الأول وبعد العنصر الأخير في القائمة، ما يتيح إمكانية التمرير إلى أبعد من ذلك. (I2a282، b/214922490) - أضفنا مكوّن
Dialogيتيح لأي عنصر قابل للإنشاء تشغيل مربّع حوار بملء الشاشة يظهر فوق المحتوى الآخر. عند عرض مربّع الحوار، يتيح إغلاقه من خلال التمرير السريع، كما يعرض محتوى العنصر الرئيسي في الخلفية أثناء إجراء التمرير السريع. من المتوقّع أن يكون محتوى مربّع الحوارAlertأوConfirmation(تمت إعادة تسميته من المكوّنين السابقينAlertDialogوConfirmationDialog) -AlertوConfirmationوDialogكلها في حزمةandroidx.wear.compose.material.dialog. يمكن استخدام "التنبيه" و"التأكيد" كوجهات للتنقّل. تمت أيضًا إضافة ColumnScope إلى مَعلمات التنبيه والتأكيد حسب الضرورة. (Ia9014) - أزلنا
onSurfaceVariant2من ألوان تصميم Material في Compose for WearOS واستبدلنا الاستخدامات في المكتبة بـonSurfaceVariant. (Icd592) - تمت إضافة طريقة لاختيار خيار في
PickerStateآليًا، ويمكن الآن أيضًا تحديد الخيار المحدّد في البداية عند إنشاءPickerState. (I92bdf) - أتحنا إمكانية تخصيص سلوك الإيماءة السريعة
ScalingLazyColumn. (I1ad2e، b/208842968) - لقد أضفنا
NavController.currentBackStackEntryAsState()إلى مكتبةWear.Compose.Navigation. (If9028، b/212739653) - تمت إضافة
Modifier.onRotaryScrollEvent()وModifier.onPreRotaryScrollEvent()لأجهزة Wear التي تحتوي على زر جانبي دوّار.(I18bf5، b/210748686)
الإصدار 1.0.0-alpha14
12 يناير 2022
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha14 وandroidx.wear.compose:compose-material:1.0.0-alpha14 وandroidx.wear.compose:compose-navigation:1.0.0-alpha14. يتضمّن الإصدار 1.0.0-alpha14 هذه التعديلات.
الميزات الجديدة
أضفنا عددًا من الطرق إلى
ScalingLazyListStateللسماح للمطوّر بالتحكّم في الانتقال إلى عناصر قائمة معيّنة، بالإضافة إلى ضبط عنصر القائمة الأوّلي والإزاحة.في إطار هذا التغيير، عدّلنا أيضًا ScalingLazyList ليكون موجّهًا حول منتصف إطار العرض الخاص بـ ScalingLazyList بدلاً من بداية إطار العرض.
تمت إضافة السمة الجديدة
anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenterإلىScalingLazyListللتحكّم في ما إذا كان يجب محاذاة المركز (ScalingLazyListAnchorType.ItemCenter) أوEdge(ScalingLazyListAnchorType.ItemStart) مع خط الوسط في إطار العرض.نتيجةً لذلك، تغيّر كلّ من
ScalingLazyListItemInfo.offsetوScalingLazyListItemInfo.adjustedOffset، وسيعكسان الآن موضع العنصر بالنسبة إلى كلّ من موضع عنصر القائمة وanchorTypeالقائمة. على سبيل المثال، بالنسبة إلىScalingLazyColumnالذي يبلغanchorTypeفيهItemCenterوعنصر قائمة موضوع في منتصف خط المنتصف في إطار العرض، سيكون الإزاحة0.الطُرق الجديدة هي
scrollToوanimatedScrollToوcenterItemIndexوcenterItemOffset. (I61b61)أضفنا معالج زر الرجوع إلى
SwipeDismissableNavHost، بحيث يؤدي الضغط على زر الرجوع إلى الانتقال إلى المستوى السابق في التسلسل الهرمي للتنقّل. (I5b086، b/210205624)
الإصدار 1.0.0-alpha13
15 كانون الأول (ديسمبر) 2021
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha13 وandroidx.wear.compose:compose-material:1.0.0-alpha13 وandroidx.wear.compose:compose-navigation:1.0.0-alpha13. يتضمّن الإصدار 1.0.0-alpha13 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد جعلنا
RangeIconsداخليًا (يتم الرجوع إليه داخليًا من خلالInlineSliderوStepper). (I927ec)
إصلاح الأخطاء
تم إصلاح مشكلة كانت تؤدي إلى إضافة وجهة إلى التسلسل الهرمي لـ Compose قبل أن تصل إلى حالة
CREATEDمراحل النشاط، ما يؤدي إلى حدوثIllegalStateException.SwipeDismissableNavHostكان هذا الإصلاح شرطًا أساسيًا لتعديل التبعية علىnavigation-composeإلى2.4.0-beta02والإصدارات الأحدث. (I40a2b، b/207328687)تمت إضافة فئة تعداد Drawables للحصول على موارد قابلة للرسم داخل مكتبة Wear Compose، وبالتالي لم يعُد من الضروري استخدام الانعكاس. يحلّ هذا الإصدار خطأً تم فيه إزالة عناصر قابلة للرسم من المكتبة عند استخدام
minifyEnabled=trueأوshrinkResources=true). (Ib2a98)إضافة اختبارات
Stepperفي Wear Compose (I2d03a)تمت إضافة نماذج للرمز
SwipeDismissableNavHostفي Wear Compose Navigation. (I85f06)
الإصدار 1.0.0-alpha12
1 كانون الأول (ديسمبر) 2021
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha12 وandroidx.wear.compose:compose-material:1.0.0-alpha12 وandroidx.wear.compose:compose-navigation:1.0.0-alpha12. يتضمّن الإصدار 1.0.0-alpha12 هذه التعديلات.
الميزات الجديدة
أضفنا مكوّن "الخطوات" الذي يتيح للمستخدمين إجراء اختيار من نطاق من القيم. شريط الخطوات هو عنصر تحكّم بملء الشاشة يتضمّن زرَّي زيادة وخفض في الأعلى والأسفل، وفتحة في المنتصف (من المتوقّع أن تتضمّن شريحة أو نصًا). يمكن تخصيص رموز الأزرار إذا لزم الأمر. (I625fe)
أضفنا عنصرَين جديدَين قابلَين للإنشاء لعرض مربّعات الحوار: ينتظر AlertDialog ردًا من المستخدم ويعرض عنوانًا ورمزًا ورسالة، بالإضافة إلى أ) زرَّين لخيارات بسيطة إيجابية/سلبية أو ب) شرائح أو شرائح تبديل مكدّسة عموديًا لخيارات أكثر مرونة، يعرض ConfirmationDialog إقرارًا بمهلة زمنية. يحتوي مربع الحوار البسيط هذا على خانات للعنوان والرمز (المتحرّك). (Ic2cf8)
تغييرات واجهة برمجة التطبيقات
- إضافة وحدات (بالمللي ثانية) إلى قيم مدة مربّع الحوار المقترَحة (I09b48)
الإصدار 1.0.0-alpha11
17 نوفمبر 2021
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha11 وandroidx.wear.compose:compose-material:1.0.0-alpha11 وandroidx.wear.compose:compose-navigation:1.0.0-alpha11. يتضمّن الإصدار 1.0.0-alpha11 هذه التعديلات.
الميزات الجديدة
- أضفنا مكوِّن أداة اختيار يتيح للمستخدم اختيار عنصر من قائمة قابلة للتمرير. تتكرّر قائمة العناصر القابلة للاختيار تلقائيًا "إلى ما لا نهاية" في كلا الاتجاهين، وذلك لإعطاء انطباع عن أسطوانة دوّارة تُرى من الجانب. ستتم إضافة ميزتَين في الإصدارات اللاحقة: المحاذاة مع قيمة بعد التمرير السريع أو تمرير الإصبع ثم رفعه بسرعة، وإضافة دالة إلى PickerState لضبط القيمة الحالية أو الانتقال إليها. (I6461b)
تغييرات واجهة برمجة التطبيقات
- تمت إضافة ScalingLazyItemScope وبعض المعدِّلات الجديدة fillParentMaxSize/fillParentMaxWidth/fillParentMaxHeight للسماح بتحديد حجم عناصر القائمة استنادًا إلى حجم الحاوية الرئيسية. يمكن ضبط العناصر لملء كل حجم العنصر الرئيسي أو جزء منه. تعرض هذه السمة وظائف متاحة في LazyRow/Column (I4612f)
- تمت إضافة إمكانية استخدام مفتاح مع ScalingLazyColumn للسماح للعناصر بالحصول على مفتاح. تمت أيضًا إضافة طرق ملائمة للسماح بإضافة عناصر من المصفوفات والقوائم. (Ic1f89)
إصلاح الأخطاء
- أمثلة إضافية على TimeText (I8cb64)
الإصدار 1.0.0-alpha10
3 نوفمبر 2021
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha10 وandroidx.wear.compose:compose-material:1.0.0-alpha10 وandroidx.wear.compose:compose-navigation:1.0.0-alpha10. يتضمّن الإصدار 1.0.0-alpha10 هذه التعديلات.
الميزات الجديدة
تمت إضافة InlineSlider إلى Wear Compose. تتيح أداة InlineSlider للمستخدمين إجراء اختيار من نطاق من القيم. يظهر نطاق الاختيارات كشريط بين الحدّ الأدنى والحدّ الأقصى للقيم في النطاق، ويمكن للمستخدمين اختيار قيمة واحدة من ذلك الشريط. (If0148)
يمكنك الاطّلاع على الدرس التطبيقي حول الترميز الجديد Compose for WearOS.
تغييرات واجهة برمجة التطبيقات
- يتضمّن Macrobenchmark الآن
minSdkVersionمن23. (If2655)
إصلاح الأخطاء
- تعديل طريقة التعامل مع عمليات الانتقال في SwipeDismissableNavHost في SideEffect (I04994، b/202863359)
- تعديل طريقة التعامل مع الانتقالات في SwipeDismissableNavHost (I1cbe0، b/202863359)
الإصدار 1.0.0-alpha09
27 أكتوبر 2021
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha09 وandroidx.wear.compose:compose-material:1.0.0-alpha09 وandroidx.wear.compose:compose-navigation:1.0.0-alpha09. يتضمّن الإصدار 1.0.0-alpha09 هذه التعديلات.
الميزات الجديدة
- لقد أطلقنا الإصدار التجريبي من Compose على Wear OS. يمكنك الاطّلاع على مشاركة المدونة التي تستعرض عناصر Compose الرئيسية وتوفّر روابط لمزيد من الموارد لبدء استخدامها.
تغييرات واجهة برمجة التطبيقات
- أتحنا للمطوّرين إمكانية تخصيص جميع الألوان في نسق ألوان تصميم Wear المتعدد الأبعاد. (I4759b، b/199754668)
إصلاح الأخطاء
- تمت إضافة عيّنات SwipeToDismissBox التي تحتفظ بالحالة (Ibaffe)
- تمت إضافة روابط إلى أدلة developer.android.com من KDocs لكل من CurvedText وTimeText وSwipeToDismissBox. (I399d4)
- يُصدر SwipeDismissableNavHost الآن خطأً إذا لم تكن هناك وجهة حالية (يشير ذلك إلى أنّه لم يتم إنشاء NavGraph باستخدام الدالة المساعدة wear.compose.navigation.composable) (I91403).
- أضفنا مستندات وأمثلة إضافية حول استخدام مصدر الوقت في TimeText (I4f6f0)
الإصدار 1.0.0-alpha08
13 أكتوبر 2021
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha08 وandroidx.wear.compose:compose-material:1.0.0-alpha08 وandroidx.wear.compose:compose-navigation:1.0.0-alpha08. يتضمّن الإصدار 1.0.0-alpha08 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- لقد أعدنا تسمية خصائص AppCard وTitleCard
bodyإلىcontentونقلناها إلى نهاية قائمة الخصائص للسماح بتوفيرها كدالة lambda لاحقة. تمت أيضًا إعادة تسميةbodyColorإلىcontentColorلضمان الاتساق مع أسماء الخانات الجديدة. (I57e78)
إصلاح الأخطاء
- تمت إضافة روابط إلى أدلة developer.android.com من KDocs لمكوّنات الزر والبطاقة والشريحة والمظهر ومؤشر الموضع والعمود الكسول القابل للتوسيع. (I22428)
- إصلاح مشكلة عدم تعامل WearOS SwipeToDismissBox أحيانًا مع عمليات التمرير السريع (I9387e)
- تمت إضافة نماذج لكلّ من Button وCompactButton وChip وCompactChip وAppCard وTitleCard وToggleButton وToggleChip وSplitToggleChip (Iddc15)
- تمت إضافة اختبارات أداء للمقياس الصغير لكل من Card وChip وToggleChip وTimeText وScalingLazyColumn. (If2fe9)
الإصدار 1.0.0-alpha07
29 سبتمبر 2021
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha07 وandroidx.wear.compose:compose-material:1.0.0-alpha07 وandroidx.wear.compose:compose-navigation:1.0.0-alpha07. يتضمّن الإصدار 1.0.0-alpha07 هذه التعديلات.
الميزات الجديدة
- تمت إضافة مكوّن CurvedText في Material، وهو مكوّن يتيح للمطوّرين كتابة نص منحني بسهولة باتّباع انحناء الدائرة (عادةً على حافة الشاشة الدائرية). (I19593)
تغييرات واجهة برمجة التطبيقات
- إضافة اختبارات لـ TimeText (Idfead)
- حوِّل ArcPaddingValues إلى واجهة. (Iecd4c)
- تمت إضافة صورة متحركة إلى SwipeToDismissBox (I9ad1b)
- تمت إضافة المَعلمة hasBackground إلى واجهة برمجة التطبيقات SwipeToDismissBox كي يمكن إيقاف الإيماءة بالتمرير السريع عندما لا يتوفّر محتوى في الخلفية لعرضه. (I313d8)
- تتلقّى السمة
rememberNavController()الآن مجموعة اختيارية من مثيلاتNavigatorالتي ستتم إضافتها إلىNavControllerالمعروضة من أجل توفير دعم أفضل لأدوات التنقّل الاختيارية، مثل تلك الواردة من مواد التنقّل المصاحبة. (I4619e) - الإشارة إلى NamedNavArgument من navigation-common وإزالة النسخة من wear.compose.navigation (I43af6)
إصلاح الأخطاء
- تم إصلاح مشكلة عدم الثبات في اختبار CurvedRow على الأجهزة الأصغر حجمًا. (If7941)
- تم إصلاح مشكلة التوهّج المحتملة في CurvedRow عند تعديل المحتوى، والتأكّد من إعادة قياس الصف المنحني (Ie4e06)
- تم تعديل ChipDefaults.gradientBackgroundChipColors() بما يتوافق مع التغييرات في مواصفات تجربة المستخدم. يبدأ التدرّج اللوني الآن بـ MaterialTheme.colors.primary مع قيمة ألفا% 32.5 وينتهي بـ MaterialTheme.colors.surface مع قيمة ألفا% 0 على خلفية MaterialTheme.colors.surface مع قيمة ألفا% 75. (Id1548)
- عدّلنا ألوان ToggleChips عندما تكون في الحالة المحدّدة لتتوافق مع أحدث إرشادات مواصفات تجربة المستخدم في Wear Material Design. عند تحديد ToggleChips، ستتضمّن الآن خلفية متدرّجة من MaterialTheme.color.surface @ 0% alpha، أعلى اليمين، إلى MaterialTheme.color.primary @ 32% alpha، أسفل اليسار، على خلفية MaterialTheme.color.surface @ 75% alpha. يؤدي ذلك إلى اختلاف أكثر دقة بين حالة التحديد وعدم التحديد في ToggleChip. (Idd40b)
الإصدار 1.0.0-alpha06
15 سبتمبر 2021
تم إصدار androidx.wear.compose:compose-foundation:1.0.0-alpha06 وandroidx.wear.compose:compose-material:1.0.0-alpha06 وandroidx.wear.compose:compose-navigation:1.0.0-alpha06. يتضمّن الإصدار 1.0.0-alpha06 هذه التعديلات.
الميزات الجديدة
- أضفنا إلى Scaffold عنصرًا قابلاً للإنشاء على مستوى التطبيق الأعلى يوفّر بنية للتعامل مع موضع PositionIndicators (مثل Scroll أو Volume)، ومساحة في أعلى الشاشة لعرض الوقت وحالة التطبيق، ويتوافق أيضًا مع تعتيم الأطراف لتشويش الحافة العلوية والسفلية للشاشة عند عرض محتوى قابل للتمرير. المساحة الرئيسية في Scaffold هي المكان الذي يتم فيه وضع محتويات التطبيق. (I5e0bf)
- إضافة تنفيذ TimeText إلى Wear Compose (I5654c)
مكتبة Wear Compose Navigation
لقد أضفنا الإصدار الأول من مكتبة Wear Compose Navigation التي تتيح الدمج بين مكتبتَي Wear Compose وAndroidx Navigation. توفّر هذه المكتبة وسيلة بسيطة للتنقّل بين دوال @Composable كوجهات في تطبيقك.
يوفّر هذا الإصدار الأوّلي ما يلي:
- عنصر
SwipeDismissableNavHostقابل للإنشاء يستضيف رسمًا بيانيًا للتنقّل ويتيح التنقّل للخلف من خلال إيماءات التمرير السريع NavGraphBuilder.composableإضافة للمساعدة في إنشاء رسومات بيانية للتنقّلrememberSwipeDismissableNavController()للسماح بنقل القيمة
- عنصر
مثال على الاستخدام حيث ننشئ شاشتَين ونتنقّل بينهما:
val navController = rememberSwipeDismissableNavController() SwipeDismissableNavHost( navController = navController, startDestination = "start" ) { composable("start") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Button(onClick = { navController.navigate("next") }) { Text("Go") } } } composable("next") { Column( horizontalAlignment = Alignment.CenterHorizontally, verticalArrangement = Arrangement.Center, modifier = Modifier.fillMaxSize(), ) { Text("Swipe to go back") } } }يتم تجميع Wear Compose Navigation كمكتبة منفصلة حتى لا تحتاج تطبيقات WearCompose البسيطة التي تنفّذ عملية التنقّل الخاصة بها إلى الاعتماد على مكتبة Androidx Navigation.
تغييرات واجهة برمجة التطبيقات
- تم تعديل
SwipeDismissableNavHostليتوافق معrememberSaveableمن خلال ضبط معرّف المفتاح للخلفية والمحتوى (I746fd) - أضفنا أداة معالجة PositionIndicator يمكنها التعامل مع LazyListState (I21b88)
- تم تعديل SwipeToDismissBox ليتوافق مع rememberSaveable (Ie728b)
- أضفنا إمكانية استخدام reverseLayout إلى ScalingLazyColumn. يتيح ذلك عكس اتجاه التمرير والتنسيق (I9e2fc)
- تم إيقاف
performGestureوGestureScopeنهائيًا، وتم استبدالهما بـperformTouchInputوTouchInjectionScope. (Ia5f3f، b/190493367) - أعدنا تسمية VignetteValue إلى VignettePosition، وأعدنا تسمية VignetteValue.Both إلى VignettePosition.TopAndBottom. (I57ad7)
- أعدنا تسمية ScalingLazyColumnState إلى ScalingLazyListState، وScalingLazyColumnItemInfo إلى ScalingLazyListItemInfo، وScalingLazyColumnLayoutInfo إلى ScalingLazyListLayoutInfo، وScalingLazyColumnScope إلى ScalingLazyListScope في حال قررنا إضافة تنفيذ ScalingLazyRow في المستقبل. (I22734)
إصلاح الأخطاء
- تم تعديل مستندات CompactChip لتوضيح ما يحدث في حال عدم توفير أيقونة أو تصنيف. (I4ba88)
- أجرينا بعض التعديلات على مكوّنات بطاقة Wear. (I6b3d0)
- تم تقليل المسافة بين العنوان والنص في TitleCard من 8 وحدات بكسل مستقلة عن الكثافة إلى وحدتَي بكسل مستقلتَين عن الكثافة.
- تم تغيير خط رأس TitleCard من النص الأساسي إلى title3.
- تم تغيير تدرّج ألوان خلفية البطاقة لجعل الخلفية تبدو أغمق.
الإصدار 1.0.0-alpha05
1 سبتمبر 2021
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha05 وandroidx.wear.compose:compose-material:1.0.0-alpha05. يتضمّن الإصدار 1.0.0-alpha05 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- وضع علامة @Stable على ArcPaddingValues (I57deb)
- تنفّذ السمة ScalingLazyColumnState الآن واجهة ScrollableState، ما يمنح المطوّرين إمكانية الوصول آليًا إلى ميزة تمرير المكوّن. (I47dbc)
إصلاح الأخطاء
- قلّلنا المسافة بين الرمز والنص في Chip وToggleChip لتتوافق مع التعديلات على مواصفات تجربة المستخدم. (I83802)
الإصدار 1.0.0-alpha04
18 أغسطس 2021
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha04 وandroidx.wear.compose:compose-material:1.0.0-alpha04. يتضمّن الإصدار 1.0.0-alpha04 هذه التعديلات.
الميزات الجديدة
- تمت إضافة SwipeToDismissBox وswipeable modifier يمكن استخدامهما لإتاحة إيماءة التمرير السريع من اليسار إلى اليمين لإغلاق الشاشة. على الرغم من أنّ هذه السمة مستقلة عن مكوّنات التنقّل، من المتوقّع استخدامها للخروج من شاشة والانتقال إلى شاشة أخرى. تمت إضافة اختبارات الدمج إلى العرض التوضيحي الخاص بميزة "التمرير السريع للإغلاق". (I7bbaa)
- أضفنا واجهتَي ScalingLazyColumnItemInfo وScalingLazyColumnLayoutInfo إلى فئة ScalingLazyColumnState لتمكين المطوّرين من معرفة المواضع والأحجام الفعلية للعناصر في ScalingLazyColumn بعد تطبيق عملية تغيير الحجم. لقد أصلحنا أيضًا خللاً في طريقة احتساب التحجيم عند تطبيق مساحة الحشو في "أعلى" ScalingLazyColumn. (I27c07)
تغييرات واجهة برمجة التطبيقات
- أضِف فئة CurvedTextStyle لتحديد خيارات تنسيق النص المنحني. تشبه TextStyle، ولكنها تتيح الآن استخدام اللون وحجم الخط والخلفية فقط. ستتم إضافة المزيد من خيارات التنسيق في المستقبل. (I96ac3)
- أضفنا واجهتَي ScalingLazyColumnItemInfo وScalingLazyColumnLayoutInfo إلى فئة ScalingLazyColumnState لتمكين المطوّرين من معرفة المواضع والأحجام الفعلية للعناصر في ScalingLazyColumn بعد تطبيق عملية تغيير الحجم. لقد أصلحنا أيضًا خللاً في طريقة احتساب التحجيم عند تطبيق مساحة الحشو في "أعلى" ScalingLazyColumn. (I27c07)
- تمت إضافة
@ExperimentalWearMaterialApiإلى تعدادSwipeDismissTarget، وهو جزء من واجهة برمجة التطبيقاتSwipeToDismissBox. (I48b5e)
إصلاح الأخطاء
- تمت إضافة مادة اختبارية إلى SwipeToDismissBox (I9febc)
الإصدار 1.0.0-alpha03
4 أغسطس 2021
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha03 وandroidx.wear.compose:compose-material:1.0.0-alpha03. يتضمّن الإصدار 1.0.0-alpha03 هذه التعديلات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة مكوّن CurvedText الذي يتيح للمطوّرين كتابة نص بسهولة باتّباع انحناء الدائرة (عادةً على حافة شاشة دائرية) (Id1267)
- لقد أعدنا تسمية
CardDefaults.imageBackgroundPainter()إلىCardDefaults.imageWithScrimBackgroundPainter()لتوضيح أنّه سيتم رسم طبقة تعتيم فوق صورة الخلفية. (I53206) - إضافة مكوّن ScalingLazyColumn الذي يوفّر مكوّن قائمة Wear Material يعرض محتوى القائمة بشكل عين السمكة مع تصغير حجم المحتوى ليصبح شفافًا عند التوسّع نحو حافة المكوّن (I7070c)
إصلاح الأخطاء
- غيّرنا اللون التلقائي لمحتوى appName في AppCard استجابةً لتعديل في مواصفات تجربة المستخدم. أصبح اللون التلقائي لـ appName هو
MaterialTheme.colors.onSurfaceVariant. بالإضافة إلى ذلك، أضفنا وصفًا لمستند المَعلمات الناقصة لخانة العنوان. (Ic4ad1)
الإصدار 1.0.0-alpha02
21 تموز (يوليو) 2021
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha02 وandroidx.wear.compose:compose-material:1.0.0-alpha02. يتضمّن الإصدار 1.0.0-alpha02 هذه التعديلات.
الميزات الجديدة
- تمت إضافة فئة جديدة باسم CurvedRow إلى العناصر القابلة للإنشاء التي تم تصميمها على شكل قوس (I29941)
- تمت إضافة نوع جديد من البطاقات لاستخدامه في التطبيقات (TitleCard)، كما تمت إضافة إمكانية استخدام الصور كخلفية للبطاقات للتأكيد على محتواها (I53b0f)
تغييرات واجهة برمجة التطبيقات
- إضافة إمكانية المحاذاة الشعاعية إلى CurvedRow (مشابهة للمحاذاة العمودية في صف) (Id9de5)
- إضافة فئة CurvedRow جديدة إلى العناصر القابلة للإنشاء التي تمّت تسويتها في قوس (I29941)
- تمت إضافة نوع جديد من البطاقات لاستخدامه في التطبيقات (TitleCard)، كما تمت إضافة إمكانية استخدام الصور كخلفية للبطاقات للتأكيد على محتواها (I53b0f)
- تمت إضافة رموز تبديل (مربّع اختيار ومفتاح تبديل وأزرار اختيار) إلى ToggleChipDefaults لتسهيل إعداد ToggleChip وSplitToggleChips على المطوّرين (I7b639)
- تم تعديل مساحة الحشو في بداية ونهاية المحتوى في "الشرائح" لتصبح 14 وحدة بكسل مستقلة عن الكثافة بشكل ثابت، بغض النظر عمّا إذا كانت الشريحة تتضمّن رمزًا أم لا (كانت سابقًا 12 وحدة بكسل مستقلة عن الكثافة في حال توفّر الرمز و14 وحدة بكسل مستقلة عن الكثافة في حال عدم توفّره) (I34c86)
إصلاح الأخطاء
- إضافة اختبارات إلى CurvedRow (I93cdb)
- ربط تبعيات Wear Compose بالإصدار 1.0.0-rc01 من Compose (Ie6bc9)
- تم تغيير طريقة عرض صورة الخلفية في "البطاقات" و"الشرائح" بحيث يتم اقتصاص الصورة بدلاً من تمديدها للحفاظ على نسب أبعاد الصورة. (I29b41)
- تمت إضافة المزيد من العروض التوضيحية واختبارات الدمج لـ Button وToggleButton. (5e27ed2)
- تمت إضافة المزيد من اختبارات Chip لتغطية ألوان المحتوى في imageBackgroundChips (Ia9183)
الإصدار 1.0.0-alpha01
1 تموز (يوليو) 2021
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha01 وandroidx.wear.compose:compose-material:1.0.0-alpha01. يتضمّن الإصدار 1.0.0-alpha01 هذه التعديلات.
الميزات الجديدة
Wear Compose هي مكتبة مستندة إلى Kotlin وCompose وتتوافق مع Wear Material Design، وهي إضافة إلى التصميم المتعدد الأبعاد لأجهزة WearOS القابلة للارتداء. يحتوي إصدار الألفا الأول هذا على عمليات تنفيذ مبكرة وعملية لما يلي:
- تصميم Material: يضبط الألوان وأسلوب الخط والأشكال بشكل متّسق في جميع المكوّنات المستخدَمة من هذه المكتبة.
- Chip وCompactChip: تكون الشرائح على شكل ملعب، وتتوفّر أشكال مختلفة منها لعرض أيقونة وتصنيف وتصنيف ثانوي.
- - ToggleChip وSplitToggleChip: نوعان متخصصان من الشرائح يتضمّنان خانة لرمز تبديل ثنائي الحالة، مثل زر اختيار أو مربّع اختيار. بالإضافة إلى ذلك، تحتوي SplitToggleChip على مساحتَين يمكن النقر عليهما، إحداهما قابلة للنقر والأخرى قابلة للتبديل.
- Button وCompactButton: الأزرار دائرية الشكل، وتحتوي على موضع محتوى واحد لرمز أو نص مختصر (3 أحرف كحد أقصى).
- ToggleButton: زر يفعّل إجراءً أو يوقفه، ويتضمّن خانة واحدة للرمز أو النص المختصر (3 أحرف كحد أقصى).
- البطاقة، AppCard: شكل مستطيل بزوايا مستديرة، يوفّر مساحات لعرض المحتوى، مثل رمز التطبيق والوقت والعنوان والنص.
ستوسّع الإصدارات المستقبلية مجموعة الأدوات من خلال إضافة دعم لأدوات الاختيار وأشرطة التمرير والقوائم ومؤشرات الصفحات ومربّعات الحوار ومؤشرات أشرطة التمرير والرسائل القصيرة وغيرها من عناصر "التصميم المتعدد الأبعاد" على Wear.
بالإضافة إلى ذلك، سيتم توفير الدعم لميزات أخرى خاصة بالأجهزة القابلة للارتداء، مثل التصاميم والنصوص المنحنية، فضلاً عن توفير أدوات تسهّل على المطوّرين إنشاء تطبيقات/تراكبات للأجهزة القابلة للارتداء.
تم تصميم Wear Compose Material وفقًا للمبادئ نفسها التي تم تصميم Compose Material بها، مع أنّها تستهدف الأجهزة القابلة للارتداء. يجب استخدام مكتبة Wear Compose Material بدلاً من مكتبة Compose Material عند إنشاء تطبيقات للأجهزة القابلة للارتداء.
يجب اعتبار مكتبتَي "Material" حصريتَين بشكل متبادل ويجب عدم دمجهما في التطبيق نفسه. إذا وجد المطوّرون أنّهم يضمّنون مكتبة Compose Material في الاعتماديات، يشير ذلك إلى أحد الأمرين التاليين: أ) هناك مكوّنات غير متوفّرة في مكتبة Wear Compose Material، يُرجى إعلامنا بما تحتاج إليه، أو ب) يتم استخدام مكوّن لا ننصح باستخدامه على جهاز Wearable.