Wear Compose

  
كتابة تطبيقات Jetpack Compose للأجهزة القابلة للارتداء من خلال توفير وظائف تتيح استخدام أجهزة قابلة للارتداء وأحجام وأشكال وإيماءات تنقل محددة.
آخر تعديل الإصدار المستقر إصدار مرشح الإصدار التجريبي الإصدار الأولي
15 تشرين الثاني (نوفمبر) 2023 1.2.1 - الإصدار التجريبي 1.3.0-01 -

تعريف التبعيات

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

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

رائع

dependencies {
    implementation "androidx.wear.compose:compose-foundation:1.2.1"

    // For Wear Material Design UX guidelines and specifications
    implementation "androidx.wear.compose:compose-material:1.2.1"

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation "androidx.wear.compose:compose-navigation:1.2.1"

    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.2.1")
    
    // 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.2.1")

    // For Wear Material Design UX guidelines and specifications
    implementation("androidx.wear.compose:compose-material:1.2.1")

    // For integration between Wear Compose and Androidx Navigation libraries
    implementation("androidx.wear.compose:compose-navigation:1.2.1")
    
    // For Wear preview annotations
    implementation("androidx.wear.compose:compose-ui-tooling:1.2.1")

    // 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. يُرجى إخبارنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة تصويتك إلى مشكلة حالية من خلال النقر على زر النجمة.

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

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

الإصدار 1.0 من Wear Compose Material3

الإصدار 1.0.0-alpha15

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

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha15". يحتوي الإصدار 1.0.0-alpha15 على هذه الالتزامات.

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

  • أعدنا تسمية مستوى التأسيس SwipeToDismissBox إلى BasicSwipeToDismissBox. هذا يجعل التمييز بين المكوِّن على مستوى الأساس والمستوى SwipeToDismissBox من المستوى Material3. يسحب نوع الأخير الألوان من MaterialTheme لاستخدامها في لقطات الشاشة ويفوّض طريقة التنفيذ المتبقية إلى BasicSwipeToDismissBox. (Ibecfc)

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

  • لقد أزلنا الطبقة الأساسية لزر Material3 لتحسين الأداء. (I55555)

الإصدار 1.0.0-alpha14

18 تشرين الأول (أكتوبر) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha14". يحتوي الإصدار 1.0.0-alpha14 على هذه الالتزامات.

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

  • أزلنا المعلَمة indicatorStyle من Material3 HorizontalPageIndicator، بدلاً من ذلك، ستتبع شكل شاشة الجهاز (خطي أو دائري). (I83728)
  • لقد فصلنا ألوان SplitToggleButton عن ألوان ToggleButton من خلال إضافة فئة SplitToggleButtonColors جديدة. (I78bee)

الإصدار 1.0.0-alpha13

4 تشرين الأول (أكتوبر) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha13". يحتوي الإصدار 1.0.0-alpha13 على هذه الالتزامات.

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

  • لقد أضفنا حقل ترجمة فرعيًا اختياريًا إلى TitleCard. (Ifc45a)
  • لقد أضفنا رموزًا مميزة بالألوان لتصميم Material Design لـ TextButton. (I769dc)

الإصدار 1.0.0-alpha12

20 أيلول (سبتمبر) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha12". يحتوي الإصدار 1.0.0-alpha12 على هذه الالتزامات.

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

  • عدّلنا IconButton لاستخدام الرموز المميّزة للتصميم المتعدد الأبعاد. (I3f137)
  • عدّلنا IconToggleButton لاستخدام الرموز المميّزة للتصميم المتعدد الأبعاد. (I7d263)
  • لقد أتحنا للجميع ابتكارات CheckboxColors وRadioButtonColors وSwitchColors. (I82b73)

الإصدار 1.0.0-alpha11

6 أيلول (سبتمبر) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha11". يحتوي الإصدار 1.0.0-alpha11 على هذه الالتزامات.

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

  • تم تعديل أسلوب الخط في بطاقات Material3 إلى TitleMedium. (I597bd)
  • عدّلنا أسلوب الخط والمواءمة في Material3 ListHeader وListSubheader. (Ib5ceb)

الإصدار 1.0.0-alpha10

23 آب (أغسطس) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha10". يحتوي الإصدار 1.0.0-alpha10 على هذه الالتزامات.

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

  • أضِف "HorizontalPageIndicator" في مكتبة Wear Material3. (Ifee99)

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

  • قم بتحديث التعليمة البرمجية للأزرار لاستخدام الرموز المميزة لتصميم Material3. (I92fe4)
  • إعلان واجهات برمجة تطبيقات Wear Material 3 وSlider API باعتبارها تجريبية، لأنّ تفاصيل واجهة المستخدم لا تزال قيد التطوير (I84d54)
  • لقد أزلنا المقاسات ExtraSmall من الدورَين TextButton وTextToggleButton، لأنّ هذا المقاس لا ينطبق إلا على IconButton. (Ibc7d5)

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

  • لقد أدخلنا تحديثًا على الإرشادات المتعلقة بأسلوب الخط لـ TextToggleButton لاستخدام التسميةاحتفال كبير الحجم (Ib10fa)
  • أجرينا تحديثًا على الإرشادات المتعلقة بأسلوب الخط لزر TextButton لاستخدام سياسة تدرج كبيرة لخيار الحجم الكبير (I8f3a7)
  • لقد ضبطنا الحدّ الأدنى لهدف اللمس في البطاقة ليكون 48 بكسل مستقل الكثافة لإمكانية الوصول. (Ieb9b1)
  • يمكنك إضافة AppCard باستخدام عرض توضيحي للصورة، وإزالة AppCard مع العرض التوضيحي للخلفية (Id735f)
  • إصلاح خطأ في الأزرار المستديرة حيث لم تكن مفاتيح التعديل مرتبطة بشكل صحيح (I5e162)

الإصدار 1.0.0-alpha09

9 آب (أغسطس) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha09". يحتوي الإصدار 1.0.0-alpha09 على هذه الالتزامات.

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

  • لقد أضفنا ToggleButton للمادة 3 (I6bed6)

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

  • لقد فعّلنا تعليق FloatRange التوضيحي كقيود واجهة برمجة التطبيقات ، وهي مذكورة سابقًا في التعليقات. (Icb401)
  • لقد حدّثنا أسلوب الخط لـ Wear Material3 للالتزام بأحدث إرشادات Material3. (I1bad6)

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

  • لقد عدّلنا ألوان Button وIconButton وTextButton بما يتماشى مع تصميم Material3. (Ib2495)
  • لقد أصلحنا إمكانية ظهور علامات الاختيار في حالات الإيقاف. (Ib25bf)

الإصدار 1.0.0-alpha08

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

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha08". يحتوي الإصدار 1.0.0-alpha08 على هذه الالتزامات.

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

  • لقد أضفنا عناصر التحكّم التالية في الاختيار Material3: Switch وCheckbox وRadioButton. (Ib918c)
  • لقد أضفنا IconToggleButton وTextToggleButton إلى Material3، وهو زر تبديل دائري يحتوي على فتحة واحدة للرمز والنص على التوالي. بالنسبة إلى الأحجام المختلفة من ToggleButton، ننصح باستخدام Modifier.touchTargetAwareSize مع المقاسات المتوفرة في أزرار التبديل المعنية. (I9f015)
  • لقد أضفنا ListHeader وListSubheader إلى مكوّنات Material3. (إيبايفي)
  • لقد أضفنا مادة عرض Material3 SwipeToDismissBox التي يُطلق عليها اسم المؤسسة الجديد SwipeToDismissBox وتحدّد قيم اللون التلقائية من مظهرها. (I275fb)
  • لقد أضفنا Material3 InlineSlider إلى Wear Compose. تسمح للمستخدمين بالاختيار من بين مجموعة من القيم. يتم عرض نطاق الاختيارات كشريط بين الحدَّين الأدنى والأقصى لقيم النطاق، والتي يمكن للمستخدمين اختيار قيمة واحدة منها. إنّ InlineSlider مثالي لضبط الإعدادات، مثل مستوى الصوت أو السطوع. (I7085f)

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

  • عدّلنا "الأشكال" في مظهر Wear 3 لاستخدام RoundedCornerShape بدلاً من "الشكل". (Idb133)
  • لقد جعلنا ثوابت الارتفاع لـ Button public (Idbfde)
  • تعديل ملفات واجهة برمجة التطبيقات لإضافة تعليقات توضيحية بشأن إلغاء التوافق (I8e87a، b/287516207)
  • أجرينا تعديلاً على InlineSliderColors في المادة 3 من Wear Compose لكي تتضمّن أداة إنشاء عامة وخصائص عامة. (I6b632)
  • لقد حدّثنا جميع فئات الألوان في Wear Compose Material 3، لتضمين أدوات إنشاء عامة وخصائص عامة. (I17702)
  • لقد جعلنا ثوابت الحشو الأفقي والرأسي للزر علنيًا. (Ieeaf7)

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

  • سيتم تعديل ارتفاع الزرّ الآن ليلائم المحتوى الذي زاد حجم المحتوى بسبب الخطوط الكبيرة التي يمكن الوصول إليها عند اللزوم (Iaf302)
  • لقد حدّثنا عددًا من العروض التوضيحية للأزرار لمعالجة مشاكل إمكانية الوصول. (I61ce9)
  • يدعم Stepper وInlineSlider الآن النقرات المتكررة عند الضغط مع الاستمرار، وبذلك يمكنك زيادة/خفض قيمة Stepper وInlineSlider بسرعة عن طريق الضغط مع الاستمرار على الزر + أو - (I27359)

الإصدار 1.0.0-alpha07

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

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha07". يحتوي الإصدار 1.0.0-alpha07 على هذه الالتزامات.

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

  • لقد أضفنا المكوِّن Stepper إلى مكتبة Compose for Wear OS Material 3. ويشبه هذا إصدار Material السابق، ولكنه يحذف تلقائيًا دلالات النطاق بعد ملاحظات مطوّري البرامج. نوفّر Modifier.rangeSemantics الحالات التي تكون فيها دلالات النطاق مطلوبة. (Ic39fd)
  • لقد أضفنا curvedText إلى مكتبة Compose for Wear OS Material 3. (Ia8ae3)

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

  • تم تحديث wear.compose.foundation ليكون واجهة برمجة تطبيقات تابعة لواجهة برمجة التطبيقات wear.compose.material3 (I72004، b/285404743)

الإصدار 1.0.0-alpha06

7 حزيران (يونيو) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha06". يحتوي الإصدار 1.0.0-alpha06 على هذه الالتزامات.

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

  • لقد حدّثنا TextButton لاستخدام دالة الإضافة toDisabledColor مع قيم ألفا غير المفعّلة الصحيحة. (I814c8)

الإصدار 1.0.0-alpha05

24 أيار (مايو) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha05". يحتوي الإصدار 1.0.0-alpha05 على هذه الالتزامات.

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

  • لقد أضفنا السمة TextButton إلى Material3، وهو زر دائري يحتوي على فتحة واحدة للنص. بالنسبة إلى المقاسات المختلفة من TextButton، نقترح استخدام Modifier.touchTargetAwareSize وExtraSmallButtonSize وSmallButtonSize وDefaultButtonSize وLargeButtonSizeIcon المقدَّمة في TextButtonDefaults. لا يتضمّن الإعداد التلقائي TextButton حدًا وخلفية شفافة لإجراءات التركيز المنخفض. بالنسبة إلى الإجراءات التي تتطلب توكيدًا عاليًا، استخدِم filledTextButtonColors. للتشديد المتوسط، حدد TextButton، اضبط الحد على ButtonDefaults.outlinedButtonBorder، واستخدِم filledTonalTextButtonColors لمكان وسط بين المخطَّط والمعبأ. (I667e4)
  • لقد أضفنا "Card" و"OutlinedCard" و"AppCard" و"TitleCard" إلى مكتبة Wear Compose Material3. يمكن أيضًا منح AppCard وTitleCard المظهر الموضَّح باستخدام CardDefaults.outlinedCardColors وCardDefaults.outlinedCardBorder(I80e72).

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

  • لقد نقلنا معلمة تصنيف الزر إلى النهاية لدعم بنية lambda اللاحقة وأزلنا معلمة الدور (لأنه يمكن تجاوزها باستخدام Modifier.semantics). أصبحت دوال إنشاء ButtonColors عامة الآن. (Ie1b6d)

الإصدار 1.0.0-alpha04

10 أيار (مايو) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha04". يحتوي الإصدار 1.0.0-alpha04 على هذه الالتزامات.

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

  • لقد أضفنا السمة IconButton إلى Material3، وهو زر دائري يحتوي على فتحة واحدة للرمز/الصورة. تتوفّر أربعة صيغ: IconButton وFilledIconButton وFilledTonalIconButton وOutlinedIconButton. بالنسبة إلى المقاسات المختلفة من IconButton، نقترح استخدام Modifier.touchTargetAwareSize وExtraSmallButtonSize وSmallButtonSize وDefaultButtonSize وLargeButtonSizeIcon المقدَّمة في IconButtonDefaults. نوفر أيضًا السمة IconButtonDefaults.iconSizeFor لتحديد حجم الرمز الذي يُنصح به لحجم زر معيّن. (I721d4)

الإصدار 1.0.0-alpha03

19 نيسان (أبريل) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha03". يحتوي الإصدار 1.0.0-alpha03 على هذه الالتزامات.

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

  • لقد أضفنا مكوّن أزرار Material 3، وهو زرنا على شكل استاد وكان يُسمّى سابقًا Chip في مكتبة Wear Compose Material (تم تغيير اسمه إلى "زر" لتحقيق التوافق مع مكتبة Compose Material 3). يحتوي الزر التلقائي على خلفية معبأة، وهناك تباينات للأزرار: FilledTonal (خلفية مكتومة)، وزر "مخطط" (شفاف بحدود رفيعة) وزر "ثانوي" (خلفية شفافة وبدون حدود، ويتم استخدامه لتنفيذ إجراءات تكميلية بأقل مستوى بروز). ستأتي بعد ذلك الأزرار الدائرية للرمز البسيط والمحتوى النصي في الإصدار المستقبلي.(Ia6942)

الإصدار 1.0.0-alpha02

5 نيسان (أبريل) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha02". يحتوي الإصدار 1.0.0-alpha02 على هذه الالتزامات.

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

  • لقد أضفنا السمة DefaultTextStyle إلى المادة 3 من Wear Compose، ما يؤدي إلى ضبط قيمة PlatformTextStyle.includeFontPadding تلقائيًا على "صحيح" (الإعداد الحالي). وسيتيح لنا ذلك مزامنة إيقاف مساحة الخط المتروكة تلقائيًا مع مكتبات الإنشاء في المستقبل (راجِع إصلاح المساحة المتروكة للخط في Compose للخلفية). (I7e461)

الإصدار 1.0.0-alpha01

22 آذار (مارس) 2023

تم إصدار "androidx.wear.compose:compose-material3:1.0.0-alpha01". يحتوي الإصدار 1.0.0-alpha01 على هذه الالتزامات.

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

  • Material 3 هو التطور التالي للتصميم المتعدد الأبعاد ويتضمن مظاهر ومكونات معاد تصميمها. تم تصميم المادة 3 في Wear Compose لتكون مترابطة مع مكتبة Material 3 Compose على Android. يحتوي هذا الإصدار الأولي الأول على عمليات تنفيذ مبكرة ووظيفية لما يلي:

    • تحديد نسق المواد: يهيئ نظام الألوان وأسلوب الخط والأشكال بشكل متسق عبر المكونات الموجودة في المكتبة. تمت مراجعة الألوان في مظهر Material3 تدعم التباين الذي يمكن الوصول إليه. (I84005)
    • النص/الرمز: الوحدات الأساسية لتطبيقات Wear Compose (I8e06a)
  • وسنواصل تطوير Wear Material (androidx.wear.compose:compose-material) وWear Material 3 (androidx.wear.compose:compose-material3) بالتوازي. ستؤدي إصدارات المادة 3 المستقبلية إلى توسيع مجموعة التطبيقات المصغّرة لتشمل مكوّنات أخرى مألوفة من ميزة "الكتابة" على نظام التشغيل Wear OS، مثل الأزرار وأدوات الانتقاء وأشرطة التمرير.

  • لا يمكن مزج مكتبات Wear Material وWear Material 3 مع بعضها البعض، ويجب عدم الخلط بينهما في التطبيق نفسه، لأنّها تشير أساسًا إلى مواضيع مختلفة قد تؤدي إلى تناقضات غير متوقعة.

الإصدار 1.3

الإصدار 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. هذا يجعل التمييز بين المكوِّن على مستوى الأساس ومستوى المادة SwipeToDismissBox أكثر وضوحًا. يسحب نوع الأخير الألوان من MaterialTheme لاستخدامها في لقطات الشاشة ويفوّض طريقة التنفيذ المتبقية إلى BasicSwipeToDismissBox. (Ibecfc)
  • تم وضع علامة على rememberExpandableStateMapping باعتباره ميزة تجريبية، كما تم تحسين أداء expandableItem. (I5f6bc)
  • لقد استبدلنا الفئة SwipeToRevealAction في واجهات برمجة التطبيقات للبطاقات والشرائح في Material SwipeToReveal بواجهة برمجة تطبيقات مستندة إلى الخانات باستخدام SwipeToRevealPrimaryAction وSwipeToRevealSecondaryAction وSwipeToRevealUndoAction. يُرجى الاطّلاع على رمز نموذجي للحصول على أمثلة حول كيفية استخدام واجهة برمجة التطبيقات الجديدة. (Ia8943)
  • لقد استبدلنا علامات PositionIndicator المتحركة بمعلَمات AnimationSpec. يمكن إيقاف الصور المتحركة الفردية من خلال ضبط snap على أنّها AnimationSpec. (I6c523)

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

  • أصلحنا خطأً ناتجًا عن نص منحني محدود عندما يكون الحجم محدودًا (I50efe)
  • عالجنا عطلاً محتملاً في NaN وcurvedComposable (I970eb).
  • لقد تم التراجع عن إزالة الصورة المتحركة التي تعرض ميزة "تمييز تغيير الموضع" في PositionIndicator. (Ieb424)
  • لقد أزلنا الطبقة الأساسية لشرائح المواد من أجل تحسين أدائها. (If2dcb)

الإصدار 1.3.0-alpha08

18 تشرين الأول (أكتوبر) 2023

تم إصدار "androidx.wear.compose:compose-*:1.3.0-alpha08". يحتوي الإصدار 1.3.0-alpha08 على هذه الالتزامات.

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

  • لقد أضفنا علامات فردية إلى أحمال PositionIndicator الزائدة للتحكّم في الصور المتحركة المختلفة: showFadeInAnimation وshowFadeOutAnimation وshowPositionAnimation. تم إيقاف واجهة برمجة التطبيقات السابقة وتتم إعادة توجيه المكالمات إلى الواجهة الجديدة. لأسباب تتعلّق بالأداء ولتحقيق اتساق تجربة المستخدم، ننصحك بإيقاف العلامتين showFadeInAnimation وshowPositionAnimation عند استخدام PositionIndicator مع قائمة قابلة للتمرير. في حال استخدام PositionIndicator كمؤشر مستقل، مثلاً لتغيير مستوى الصوت، ننصحك بتفعيل جميع الصور المتحركة الثلاث. (I44294)
  • لقد أوقفنا ميزة "المواد SwipeToDismissBoxState" و"SwipeToDismissValue" و"edgeSwipeToDismiss" نهائيًا بعد نقل وظيفة "التمرير سريعًا للإغلاق" إلى "wear.compose.foundation". يُرجى استبداله بعبارات wear.compose.foundation المكافئة. (Iee8c9)

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

  • لقد أدخلنا تحديثًا على الملفات الشخصية الأساسية لمكتبات Wear لإنشاء المواد ومكتبات التنقل. (Idb060)
  • لقد تراجعنا عن تغيير سلوكي في PositionIndicator تم إجراؤه في CL سابق، مثل مؤثرات حركية PositionIndicator عند عرض الشاشة في البداية. ونعتزم إجراء تغيير مشابه في الإصدار 1.4 الأولي من الإصدار الأولي، لكي يتم عرض PositionIndicator في البداية، ولكن بدون أي رسوم متحركة. (I41843)
  • لقد عالجنا بعض المشاكل المتعلقة بالأداء في PositionIndicator. (I1c654، b/302399827)
  • لقد حسَّنا أداء التنفيذ التلقائي لموفِّر حالة الاستكشاف باللمس ليعتمد على State<Boolean> بدلاً من الحالة المشتقّة. (Ieec4d)
  • لقد ضبطنا systemGestureExclusion شكل مستطيلات لنظام التشغيل Android 13 والإصدارات الأحدث. (Ib1f4b)

الإصدار 1.3.0-alpha07

4 تشرين الأول (أكتوبر) 2023

تم إصدار "androidx.wear.compose:compose-*:1.3.0-alpha07". يحتوي الإصدار 1.3.0-alpha07 على هذه الالتزامات.

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

  • لقد أضفنا علامات فردية إلى PositionIndicator للتحكّم في الصور المتحركة المختلفة: showFadeInAnimation وshowFadeOutAnimation وshowPositionAnimation. تم إيقاف واجهة برمجة التطبيقات السابقة وتتم إعادة توجيه المكالمات إلى الواجهة الجديدة. لأسباب تتعلّق بالأداء ولتحقيق اتساق تجربة المستخدم، ننصحك بإيقاف العلامتين showFadeInAnimation وshowPositionAnimation عند استخدام PositionIndicator مع قائمة قابلة للتمرير. في حال استخدام PositionIndicator كمؤشر مستقل، مثلاً لتغيير مستوى الصوت، ننصحك بتفعيل جميع الصور المتحركة الثلاث. (Ia2d63)

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

  • لقد أدخلنا تحسينات على عملية التمرير السريع لإظهار الحركة من خلال إضافة تأثير تلاشي على نص الإجراء الأساسي وتلاشي الإجراء الثانوي/تغيير حجم الرمز عند توسيع التمرير السريع بالكامل. (Ib7223)
  • ننصح بأن تكون ميزة "التمرير سريعًا لإظهار الإجراءات" متاحة للجميع. لذلك، أضفنا إجراءات مخصّصة لتسهيل الاستخدام إلى نماذج "التمرير السريع لإظهارها". (I42224)
  • لقد أدخلنا تحسينات على أداء SwipeToDismissBox، بما في ذلك إعادة الهيكلة لضمان عدم تنفيذ المنطق الأولي أي إعادة التركيب. تم الآن رسم SwipeToDismissBox بحجم ملء الشاشة. (Ie0aa2)
  • لقد أصلحنا خطأً كان ناتجًا عن اختفاء PositionIndicator عن طريق الخطأ. (I2091a)
  • تم تحسين أداء PositionIndicator من خلال تحسين عمليات إعادة التركيب. وتمت إضافة علامات جديدة للتحكّم في الصور المتحركة (fadeIn وfadeOut وpositionChange) بعد ذلك (راجِع التغييرات في واجهة برمجة التطبيقات) (Ifac7d)
  • لقد أضفنا اختبارات قياس الأداء المصغّرة للسمة 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 على هذه الالتزامات.

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

  • لقد أضفنا عنصرين جديدين في مادة العرض لتنفيذ 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، للحالات التي يجب إنشاءها عند الطلب، وليس بالضرورة ضمن نطاق @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، أصبحت طريقة تنفيذ Material SwipeToDismissBox تتم إعادة توجيهها الآن إلى 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).
تم اقتصاص النص بحجم خط كبير.
الشكل 1: النص مقصوص.
  • لم تعُد هذه القيمة متوفّرة عند إيقاف ميزة المساحة المتروكة للخط:
لم يتم اقتصاص النص بحجم خط كبير
الشكل 2: لم يتم اقتصاص النص.
  • عدّلنا واجهة برمجة التطبيقات wear.compose.foundation لتصبح واجهة برمجة تطبيقات تابعة لواجهة برمجة التطبيقات wear.compose.material (I72004، b/285404743).
  • أصلحنا خطأ في SwipeToDismissBox. يتم الآن تمرير مفاتيح المحتوى والخلفية إلى جزء "التذكر" حتى يتم إنشاء عناصر تعديل جديدة عند تغيير المحتوى أو الخلفية. (Ib876c، b/280392104)
  • لقد عدّلنا TimeText لاستخدام اللغة عند اختيار تنسيق الوقت 12 أو 24 ساعة. (If4a3d)
  • لقد أصلحنا تعارضًا في المَعلمتَين التلقائيتَين SwipeToDismissBox وcontentScrimColor. (I2d70f)
  • لقد أدخلنا تحسينات على التعامل مع الحركة في SwipeToReveal. (I28fb7)

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

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

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

  • تمت إضافة المتغيّر LocalReduceMotion التجريبي الجديد CompositionLocal الذي يوقِف تغيير الحجم والتلاشي على ScalingLazyColumn. (I58024)

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

  • لقد عدّلنا الملفات الشخصية الأساسية لمكتبات الأجهزة ومكتبات المواد(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 ضِمن الإصدار 1.2 من نظام التشغيل Wear OS

يشير الإصدار 1.2 إلى الإصدار التجريبي 1.2 من ميزة 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 OS: يعاين WearPreviewSmallRound المحتوى القابل الإنشاء على جهاز صغير مستدير، وWearPreviewLargeRound يقدّم معاينة للمحتوى على جهاز مستدير كبير، وWearPreviewSquare يمكن من خلاله معاينة المحتوى القابل للتطبيق على جهاز مربّع. بالإضافة إلى ذلك، يمكن للتعليقات التوضيحية التالية وتلك التي تتضمّن معاينات متعدّدة: يعرض WearPreviewFontScales معاينة المحتوى القابل للارتداء على جهاز قابل للارتداء بأحجام خطوط متعدّدة، في حين أنّ WearPreviewDevices يعاين المحتوى على الأجهزة المختلفة التي تعمل بنظام التشغيل Wear OS.
  • لقد أضفنا السمة DefaultTextStyle إلى Wear Compose، ما يؤدي إلى ضبط قيمة السمة PlatformTextStyle.includeFontPadding تلقائيًا على "صحيح" (هذا هو الإعداد الحالي). وسيتيح لنا ذلك مزامنة إيقاف المساحة المتروكة للخط تلقائيًا مع مكتبات Compose في الإصدارات الأولية من الإصدار 1.3 ألفا. يُرجى الاطّلاع على 1.2.0-alpha10 للحصول على مزيد من المعلومات.

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

  • لقد أضفنا دعمًا تجريبيًا لإيقاف الصور المتحركة المتلاشية والتحجيم عند تشغيل إعداد drop_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 إلى العناصر القابلة للتنفيذ في SwipeToReveal، ما يتيح الوصول إلى التعويض الذي يتم عنده الكشف عن الإجراءات الإضافية. (I3fd56)

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

  • تم إصلاح المشكلة المتمثلة في توقف ScalingLazyColumn على Wear API 33 بعد الانتقال السريع (Ic4599).
  • لقد أجرينا بعض التحسينات على أداء PositionIndicator لتقليل البيانات غير الرقمية. (I35e92)
  • لقد أصلحنا خطأ في الشريحة وCompactChip حيث لم يعُد يتم ضبط الدور الدلالي على Role.Button. (I93f91، b/277326264)

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

  • لقد رصدنا خطأً في "استوديو Android" يؤدي إلى تعذُّر عرض المعاينة عند إضافة تعليقات توضيحية باستخدام @WearPreviewDevices و @WearPreviewFontScales، ومن المقرر إطلاق إصلاح لهذه المشكلة قريبًا. يُرجى العلم أنّ التعليقات التوضيحية الأخرى المتعلّقة لمعاينة نظام التشغيل Wear تعمل على النحو المطلوب في الإصدار Giraffe من "استوديو Android" الإصدار 2022.3.1 والإصدارات الأحدث.

  • في الإصدار 1.2.0-alpha07، أضفنا DefaultTextStyle على Wear Compose، مع الحفاظ على قيمة PlatformTextStyle.includeFontPadding الحالية على أنّها "صحيحة". في الخلفية، يُرجى الاطّلاع على إصلاح المساحة المتروكة للخط في Compose. سنغيّر DefaultTextStyle لإيقاف المساحة المتروكة للخط في الإصدار 1.3 الأولي من الإصدار الأولي، وذلك ليكون متسقًا على مستوى نظام Android الأساسي. سيعالج هذا بعض حالات اقتصاص النص ذات أحجام الخطوط الكبيرة وقد يؤثر أيضًا في تنسيقات الشاشة، لذلك تحتاج اختبارات لقطات الشاشة إلى التحديث. على سبيل المثال، مع أحجام الخطوط الكبيرة، نلاحظ اقتصاص النص على النحو التالي:

تم اقتصاص النص بحجم خط كبير.
الشكل 1: النص مقصوص.
  • لم تعُد هذه القيمة متوفّرة عند إيقاف ميزة المساحة المتروكة للخط:
لم يتم اقتصاص النص بحجم خط كبير
الشكل 2: لم يتم اقتصاص النص.

يمكن تطبيق الإعداد الجديد الآن من خلال إلغاء أسلوب الخط في المظهر - يمكنك الاطّلاع على مثال للرمز.

الإصدار 1.2.0-alpha09

19 نيسان (أبريل) 2023

تم إصدار "androidx.wear.compose:compose-*:1.2.0-alpha09". يحتوي الإصدار 1.2.0-alpha09 على هذه الالتزامات.

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

  • إضافة angularSizeDp إلى واجهة برمجة التطبيقات CurvedModifier لضبط العرض الزاوي في DP (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 لتجنُّب عمليات إعادة تركيب إضافية عند إضافة تأثيرات حركية يدوية للألوان باستخدام ميزة "الحالة". (I5d319)

الإصدار 1.2.0-alpha07

22 آذار (مارس) 2023

تم إصدار "androidx.wear.compose:compose-*:1.2.0-alpha07". يحتوي الإصدار 1.2.0-alpha07 على هذه الالتزامات.

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

  • لقد نقلنا مكوِّنات العنصر القابل للتوسيع (التي تمت إضافتها في الإصدار 1.2.0-alpha06) من المادة إلى الأساس، لأنها لم تكن تتضمن إشارة مفيدة إلى MaterialTheme. (Ib0525)

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

  • لقد أصلحنا عطلاً حدث في شاشة باستخدام PickerGroup، وذلك من خلال ضمان معالجة PickerGroup للتركيز بشكلٍ صحيح في حال عدم تحديد التركيز على "أداة الاختيار". تمت أيضًا إضافة الدعم لتمرير RSB في الإصدارات التجريبية لأداة Picker. (If8c19)
  • لقد أدخلنا تحسينات على انتقالات مربع الحوار، وأصبح انتقال المقدمة الآن أكثر سلاسة ليلائم الانتقال إلى النهاية. (Ib5af9)
  • لقد أضفنا السمة DefaultTextStyle إلى Wear Compose، ما يؤدي إلى ضبط قيمة السمة PlatformTextStyle.includeFontPadding تلقائيًا على "صحيح" (هذا هو الإعداد الحالي). وسيتيح لنا هذا الإجراء مزامنة إيقاف المساحة المتروكة للخط تلقائيًا مع مكتبات الإنشاء في المستقبل. راجِع إصلاح المساحة المتروكة للخط في Compose) للخلفية. (I2aee8)
  • تمت إعادة تبعية معاينة "UpsideDownCake" من خلال إنشاء النشاط الذي حظر نشر التطبيقات إلى "متجر 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 OS: يعرض WearPreviewSmallRound المحتوى الذي يمكن إنشاؤه على جهاز صغير مستدير، وWearPreviewLargeRound يعاين العنصر على جهاز دائري كبير، وWearPreviewSquare يقدّم معاينة للمحتوى الذي يمكن إنشاؤه على جهاز مربّع. بالإضافة إلى ذلك، يمكن للتعليقات التوضيحية التالية وتلك التي تتضمّن معاينات متعدّدة: يعرض WearPreviewFontScales معاينة المحتوى القابل للارتداء على جهاز قابل للارتداء بأحجام خطوط متعدّدة، في حين أنّ WearPreviewDevices يعاين المحتوى على الأجهزة المختلفة التي تعمل بنظام التشغيل Wear OS. لاستخدام هذه المعاينات، يجب استخدام أحدث إصدار من "استوديو 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 للتعامل مع أدوات الاختيار المتعددة معًا باستخدام واجهة برمجة التطبيقات التركيز. كما أنّها تعالج التركيز بين أدوات الانتقاء المختلفة، وتفعِّل التمركز التلقائي للمنتقيات بناءً على المَعلمات، كما تسمح للمطوّرين بتغيير مستوى التركيز بين أدوات الانتقاء المختلفة أثناء التعامل مع الأحداث من المجموعة. في وضع TalkBack، يعالج "PickerGroup" تركيز TalkBack من خلال نقل التركيز إلى "أداة الاختيار" المحدّدة من المجموعة. (I60840)

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

  • لقد أضفنا عبئًا زائدًا على جهاز الخطوة مع مَعلمة enableRangeSemantics إضافية لتسهيل إيقاف دلالات النطاق التلقائي (Ia61d4).

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

  • السماح بتضمين ScalingLazyColumn في صفحة التمرير الأفقي (Iec3f8، b/266555016)
  • تحسين تنظيف ملفات kdocs و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 ويكون طبيعيًا أكثر لأنّه ليس مكوّنًا من مكونات Material. يتم إجراء هذا التغيير الآن استعدادًا لإنشاء مكتبة Material3 الجديدة التي سنعمل عليها بالتوازي مع مكتبة Material الحالية. (I060e7)

التغييرات التالية هي جزء من عملية نقل ScalingLazyColumn من Material إلى Foundation.Lazy:

  • تم إيقاف واجهات برمجة التطبيقات PositionIndicator التي تستهدف المادة ScalingLazyColumn - يُرجى التحديث إلى Foundation.Lazy ScalingLazyColumn. بالإضافة إلى ذلك، تمت إضافة الحقل anchorType إلى ScalingLazyListLayoutInfo. (I29d95)
  • تم وضع علامة على واجهة برمجة التطبيقات ScalingLazyColumn تشير إلى أنّها متوقفة نهائيًا في حزمة Wear Compose Material (I16d34).
  • لقد عدّلنا أداة التعديل ScrollAway لاستخدام ScalingLazyListState من Wear Compose Foundation.Lazy وأوقفنا نهائيًا الحِمل الزائد الذي استغرق ScalingLazyListState من Material Compose. (Ifc42c)
  • لقد حدّثنا واجهات Dialog API لاستخدام ScalingLazyListState من Foundation.Lazy وتم إيقاف عمليات التحميل الزائدة التي تستخدم Material ScalingLazyListState (Ic8960).
  • لقد عدّلنا واجهات برمجة تطبيقات "أداة الاختيار" لاستخدام ScalingParams من Foundation.Lazy وأوقفنا نهائيًا عمليات التحميل الزائدة التي تستخدم Material ScalingParams. (Idc3d8)

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

  • لقد أصلحنا خطأً أدّى إلى عمليات إعادة تركيب غير ضرورية في ScalingLazyListState.centerItemIndex من خلال ضمان فرض التحديثات فقط عندما تتغير القيمة فعليًا (Ia9f38).
  • لقد أدخلنا تحسينات على أداء SwipeToDismissBox (I3933b).
  • تمت إضافة اختبارات قياس الأداء لـ ScalingLazyColumn في Wear Compose Foundation (Ie00f9).
  • لقد عدّلنا بعض الطُرق الداخلية لفئات ScalingLazyColumn في Material لاستخدام ما يعادلها من Foundation.Lazy (I38aab).
  • لقد أصلحنا بعض المشاكل في اختبارات المنتقي وأضفنا المزيد من الاختبارات لفحص التمرير باستخدام الإزاحة (I6ac34)
  • نقلنا العروض التوضيحية للدمج في ScalingLazyColumn للاعتماد على Foundation.Lazy بدلاً من Material ScalingLazyColumn (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 للحصول على سلوك متسق مع BasicText (I24874).
  • تم نشر CompactChipTapTargetPadding بشكل علني حتى يظهر في المستندات (If1e70، b/234119038)

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

  • إيقاف الإصدارات المتعددة الأنظمة الأساسية لحزم wear.compose (Iad3d7)
  • إصلاح مستندات kdocs لـ scrollToOption (I6f9a0)
  • تم تعديل PlaceholderState.rememberPlaceholderState() لاستخدام rememberUpdatedState بحيث يتم تعديل الحالة إذا كانت onContentReady lambda. (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 API. (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 بحيث يتم تعديل الحالة إذا كانت onContentReady lambda. (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

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

  • لقد حدّثنا الوظيفة "عنصر نائب" التجريبية بحيث يتم تطبيق تأثير "مسح البيانات" فورًا عندما يكون المحتوى جاهزًا بدلاً من انتظار بدء حلقة الرسم المتحرك التالية. لقد أجرينا أيضًا بعض التحديثات على الصور المتحركة اللامعة ومحوها. (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

تشرين الثاني (نوفمبر) 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 ضِمن الإصدار 1.1 من نظام التشغيل Wear OS

أشار الإصدار 1.1.0-beta01 من Compose for Wear OS إلى أنّ هذا الإصدار من المكتبة مكتمل وقفل واجهة برمجة التطبيقات.

  • يتضمن إصدار Wear Compose 1.1 الوظائف الجديدة التالية:
    • أداة الاختيار: تم إدخال تحسينات على ميزات تسهيل الاستخدام في "أداة الاختيار" لكي يكون بالإمكان التنقّل على الشاشات متعددة الاختيارات من خلال برامج قراءة الشاشة وإمكانية الوصول إلى وصف المحتوى.
    • تُستخدَم معلَمة أداة الاختيار contentDescription الآن لخيار "أداة الاختيار" المحدّد فقط وتأخذ سلسلة قابلة للقيم الفارغة (في عملية التنفيذ السابقة، كان من الضروري تمرير تعيين من الخيار إلى وصف المحتوى، ولكن تم استخدام الخيار المحدّد فقط).
    • تمت محاذاة عناصر أداة الاختيار دائمًا إلى الوسط دائمًا، علمًا بأنّ إصلاح الخطأ عند ضبط gradientRatio على صفر كان له التأثير الجانبي في تغيير المحاذاة.
    • Chip/ToggleChip - لقد حدّثنا التدرجات التلقائية لـ Chip/ToggleChip لكي تتماشى مع أحدث مواصفات تجربة المستخدم. تم تحديث ChipDefaults.gradientBackgroundChipColors لتبدأ من 50% من المرحلة الأساسية بدلاً من 32.5%.
    • Chip/ToggleChip - تمت إضافة أعباء زائدة لتعديل أشكال الشرائح
    • Chip/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()) يتم رسمه فوق التأثيرات الأخرى لإعلام المستخدمين بأنّنا في انتظار تحميل البيانات.
      • وقد تم تصميم كل هذه التأثيرات بحيث يتم تنسيقها ولمعانها ومحوها بطريقة منظمة.
  • تم تحديث تبعيات Core Compose من الإصدار 1.2 إلى 1.3

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

  • يمكن الآن تحديد مَعلمات الخطوط (fontFamily وfontWeight وfontStyle وfontSynthesis) مباشرةً كمَعلمات في curvedText (Idc422).

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

  • سيعمل curveText وbasicCurvedText الآن بشكل صحيح مع TalkBack (تحتوي على عقدة إنشاء واجهة مستخدم بحجم صحيح وموضوعة (ولكنها فارغة) مرتبطة بهما، باستخدام النص كوصف للمحتوى) (I7af7c، b/210721259)
  • إصلاح الخطأ في Picker عند PickerState.repeatedItems = false لإضافة إعداد صريح لمَعلمات التوسيط التلقائي على 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 للموضع ومؤشرات الصفحة في سقالة. سيتم وضع المؤشرات الآن أعلى نقوش الصورة النصفية وبالتالي لن يتم حجبها بواسطة نقوش الصورة النصفية في حالة وجودها. (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 من أجل تحسين إمكانية الوصول إليها، حيث إن الألوان الأصلية لم يكن بها تباين كافٍ، ما يصعّب على المستخدمين التفريق بين خلفيات الشرائح/البطاقات/الأزرار عن لون خلفية المظهر. يمكنك تعديل الألوان التالية: path(0xFF202124->0xFF303133)، وonPrimary(0xFF202124->0xFF303133)، وonPrimary(0xFF202124->0xFF303133)، وprimaryVariable(0xFF669DF6->0xFF0FF0FF2F8). على الرغم من أنّ التغييرات في الألوان دقيقة نسبيًا قد تؤثر في اختبارات لقطات الشاشة الحالية. (81ab09)

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

  • إصلاح خطأ منطقي في ScalingLazyColumn قد يؤدي إلى عدم إكمال إعداد القوائم مع عدد صغير (عادةً ما 2) من عناصر القائمة، وتكون هذه العناصر شفافة نتيجةً لذلك. (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.dp بين التصنيف ومنطقة رمز التحكّم بالتبديل بقيمة 24x24.dp، ما يعني أنّ العرض الإجمالي هو 28.dp. ومع ذلك، تُظهر عملية التنفيذ بشكل غير صحيح منطقة تحكّم تبديل 36x24.dp. وينتج عن ذلك إزالة مساحة 8.dp من مساحة تصنيف النص القابلة للاستخدام. ملاحظة: يوفر إصلاح الخطأ هذا مساحة إضافية للتسمية النصية ونتيجةً لذلك يمكن أن يؤثر (إيجابيًا) على تنسيق النص للنص المتجاوز. إذا كانت لديك اختبارات للقطات الشاشة، بما في ذلك 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 على هذه الالتزامات.

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

  • تم تبديل تبعيات ميزة "الكتابة" في نظام التشغيل 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 للمنتقي فقط لخيار "المنتقي" المحدّد وتأخذ سلسلة قابلة للقيم الفارغة (في السابق، كان من الضروري تمرير تعيين من الخيار إلى وصف المحتوى، ولكن تم استخدام الخيار المحدّد فقط). (Ife6a7)
  • أدخلنا تحسينات تسهيل الاستخدام على Picker بحيث يسهُل التنقل على الشاشات متعددة الانتقاء من خلال برامج قراءة الشاشة وتسهيل الوصول إلى وصف المحتوى (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 للموضع ومؤشرات الصفحة في سقالة. سيتم وضع المؤشرات الآن أعلى نقوش الصورة النصفية وبالتالي لن يتم حجبها بواسطة نقوش الصورة النصفية في حالة وجودها. (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 قد يؤدي إلى عدم إكمال إعداد القوائم مع عدد صغير (عادةً ما 2) من عناصر القائمة، وتكون هذه العناصر شفافة نتيجةً لذلك. (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 لنظام Wear OS (الاطّلاع على المزيد من المعلومات).
  • تعتمد ميزة "الكتابة على نظام التشغيل 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 على هذه الالتزامات.

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

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

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

  • تم إنشاء الواجهات في مكتبات الإنشاء الآن باستخدام طرق الواجهة الافتراضية في jdk8 (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). للاحتفاظ بالسلوك القديم، يمكنك إلغاء scalingParams من ScalingLazyColumn (Ie375c).
  • لقد أضفنا مساحة متروكة إلى CompactChip للتأكّد من أنّ حجم هدف النقر لا يقل عن 48.dp لتلبية إرشادات تسهيل الاستخدام في المواد. قد يؤثر هذا في أي تنسيقات تستخدمها 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 يعمل في وضع إنشاء @Preview. (I3b3b6، b/232947354)

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

  • لقد غيّرنا القيمة التلقائية للسمة ScalingLazyColumn.horizontalAlignment من "البدء" إلى "CenterHorizontally" لضمان محاذاة عناصر القائمة بعرض العمود بأكمله، وذلك لضمان أعلى مستوى من الوضوح. للرجوع إلى مجموعة السلوك السابقة horizontalAlignment = Alignment.Start.(I9ed4b)

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

  • إنّ ارتفاع النقر/اللمس في CompactChip أقل من إرشادات إمكانية الوصول إلى المواد. سيتم تصحيح هذه المشكلة في الإصدار التالي (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 الآن تحترم أيضًا fontWeight(يمكن إضافة هذه الطريقة إلى طريقة الإنشاء والنسخ في الإصدارات المستقبلية لواجهة برمجة التطبيقات) (Ieebb9)
  • تم إدخال تحسينات على التمرير السريع على الحافة. عند استخدام 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 هذه الالتزامات.

ميزات Compose على الأجهزة التي تعمل بنظام التشغيل Wear OS 1.0

يمثِّل 1.0.0-beta01 في ميزة "الكتابة على نظام التشغيل Wear OS" إنجازًا مُهمًا، لأنّ المكتبة مكتملة وقفل واجهة برمجة التطبيقات.

تتضمن مكونات Wear Compose Material في الإصدار 1.0 ما يلي:

  • إنّ "المظهر المتعدد الأبعاد" (Material Theme) الذي يُستخدم كبديل لميزة "الكتابة على الأجهزة الجوّالة" MaterialTheme يوفّر الألوان والأشكال وأسلوب الخط لتصميم المكوّنات على الأجهزة القابلة للارتداء التي تنفّذ إرشادات "تجربة المستخدم" لتصميم المواد على أجهزة Wear OS بشكل غير تقليدي.
  • Button وCompactButton وToggleButton: زر يوفّر فتحة واحدة لالتقاط رمز أو صورة أو نص قصير (3 أحرف كحدّ أقصى). دائري في الشكل يحتوي على الأحجام الموصى بها للأزرار التلقائية أو الكبيرة أو الصغيرة. توفر CompactButton فتحة واحدة لالتقاط أي محتوى (رمز أو صورة أو نص) وتكون دائرية في الشكل مع حجم الخلفية صغير جدًا. يتضمّن "CompactButton" مساحة متروكة شفافة اختيارية حول الخلفية تزيد من المنطقة القابلة للنقر. ToggleButton هو زر يوفّر فتحة واحدة لحفظ أي محتوى (نص قصير أو رمز أو صورة) يتضمّن حالات تفعيل/إيقاف (محدّدة/غير محدّدة) بألوان ورموز مختلفة لعرض ما إذا كان قد تم وضع علامة في هذا المربّع أم لا.
  • البطاقات - تُستخدم لعرض معلومات حول التطبيقات مثل الإشعارات. تصميم مرن لحالات الاستخدام المختلفة، حيث يوفِّر AppCard وTitleCard تنسيقات مختلفة ويتوافق مع الصور باعتبارها محتوى بطاقات أو خلفيات.
  • الرقائق هي مكونات على شكل استاد تشبه الأزرار، لكن مع مساحة أكبر وفتحات متعددة للسماح بوضع التصنيفات والتسميات الثانوية والرموز. بأحجام مختلفة ومع دعم الصور كخلفيات.
  • ToggleChips وSplitToggleChips: يشيران إلى شريحة تكون حالتها محددة أو غير محدّدة مع إضافة فتحة ToggleControl لعرض رمز، مثل مفتاح تبديل أو زر اختيار، لعرض الحالة التي تم وضع علامة فيها على المكوِّن. بالإضافة إلى ذلك، يحتوي SplitToggleChip على منطقتَين يمكن النقر عليهما، إحداهما قابلة للنقر والأخرى قابلة للتبديل.
  • مؤشر التقدم الدائري - مؤشر تقدم مواد Wear مع شكلين مختلفين. يعبر الأول عن نسبة الانتهاء من مهمة جارية ويدعم فجوة في المسار الدائري بين زاوية البداية والنهاية. وتشير الثانية إلى تقدم غير محدد لوقت انتظار غير محدد.
  • المنحنيات النصية: تشكل جزءًا من DSL لوصف CurvedLayouts، إلى جانب curvedRow وcurvedColumn، لوضع المكوّنات حول الأجهزة الدائرية. يمكنك الاطّلاع على مؤسسة Wear Component Foundation أدناه للحصول على مزيد من التفاصيل عن CurvedLayout وCurvedModifier (يؤدي هذا دورًا مشابهًا لدور "المعدِّلات" في التطبيقات غير المنحنية ويتيح ضبط جوانب مختلفة من التصميم والمساحة المتروكة والتدرجات وما إلى ذلك).
  • مربع الحوار والتنبيه والتأكيد - يعرض مربع الحوار مربع حوار بملء الشاشة، ويكون متراكبًا فوق أي محتوى آخر، كما يتيح التمرير السريع للإغلاق. يتطلب الأمر فتحة واحدة يُتوقع أن يتم تقييمها باستخدام محتوى مربّع حوار مواد Wear OS، مثل "التنبيه" أو "التأكيد". التنبيه هو محتوى مربّع حوار يستند إلى رأي معيّن مع خانات للرمز والعنوان والرسالة. تتضمّن هذه الصفحة أحمالًا زائدة إما لزرَين سلبيَّين وإيجابيَين يتم عرضهما جنبًا إلى جنب أو فتحة لشريحة واحدة أو أكثر من الشرائح المكدّسة عموديًا. التأكيد هو محتوى مربّع حوار يستند إلى رأي المستخدمين ويعرض رسالة لمدة معيّنة. يحتوي على فتحة لرمز أو صورة (يمكن أن تكون متحركة).
  • المؤشر الأفقي: يعرض الموضع الأفقي للصفحة بطريقة تناسب شكل الجهاز القابل للارتداء. تم تصميم هذه الميزة لعرضها بملء الشاشة وإظهار مؤشر منحنٍ على الأجهزة المستديرة. يمكن استخدامها مع عارض الصفحات المصاحبة.
  • الرمز: تطبيق على تطبيق Wear يأخذ لونًا وألفًا من مظهر Wear Material. للاطّلاع على أي أيقونة قابلة للنقر، راجع الزر أو الشريحة.
  • المنتقي - لعرض قائمة قابلة للتمرير من العناصر التي يمكنك الاختيار منها. سيتم تكرار العناصر تلقائيًا "إلى ما لا نهاية" في كلا الاتجاهين. يمكن عرضه في وضع القراءة فقط لإخفاء الخيارات غير المحدَّدة.
  • مؤشر الموضع: يعرض هذا المقياس موضع التمرير أو أي مؤشر موضعي آخر بطريقة تناسب شكل الجهاز القابل للارتداء. تم تصميم هذه الميزة لعرضها بملء الشاشة وإظهار مؤشر منحنٍ على الأجهزة المستديرة.
  • السقّالة: يتم تنفيذ البنية المرئية الأساسية للتصميم المتعدد الأبعاد لنظام Wear OS. يوفّر هذا المكوِّن واجهة برمجة تطبيقات لتجميع العديد من مكونات Wear Material (مثل TimeText وPositionIndicator وVignette) المستخدمة في إنشاء الشاشة، ما يضمن استخدام استراتيجية تصميم مناسبة لها وجمع البيانات اللازمة حتى تعمل هذه المكوّنات معًا بشكل صحيح.
  • ScalingLazyColumn - مكون تحجيم/قائمة عين السمكة الذي يشكل جزءًا أساسيًا من لغة Wear Material Design. يوفر تأثيرات الشفافية والتحجيم لعناصر المحتوى. تم تصميم ScalingLazyColumn بحيث يمكنه التعامل مع أعداد كبيرة محتملة من عناصر المحتوى، والتي لا يتم إنشاؤها ويتم إنشاؤها إلا عند الحاجة.
  • شريط التمرير - يسمح للمستخدمين بالاختيار من بين مجموعة من القيم. يتم عرض نطاق الاختيارات على شكل شريط يمكن عرضه اختياريًا مع فواصل.
  • الخطوة الأولى - مكوّن بملء الشاشة يسمح للمستخدمين بالاختيار من بين مجموعة من القيم، باستخدام أزرار الزيادة/التصغير في أعلى وأسفل الشاشة، مع وضع فتحة في المنتصف لـ "نص" أو "شريحة".
  • التمرير السريعToRejectBox - للتعامل مع إيماءة التمرير السريع للإغلاق. يتم استخدام فتحة واحدة للخلفية (يتم عرضها فقط أثناء إيماءة التمرير السريع) والمحتوى الذي يظهر في المقدّمة. يمكن دمجه اختياريًا مع مكتبة التنقّل في androidx باستخدام SwipeDismissableNavHost (راجِع مكتبة Wear Compose Navigation أدناه).
  • النص: تطبيق على Wear لمكوِّن Compose Material Text، مع اختيار اللون وألفا من مظهر Wear Material
  • TimeText - مكون لإظهار الوقت وحالة التطبيق أعلى الشاشة. تضبط هذه السياسة شكل الشاشة باستخدام نص منحنٍ على الشاشات المستديرة.
  • نقوش الصورة النصفية - هي معالجة للشاشة للاستخدام في حملة الشاشة، والتي تخفي الجزء العلوي والسفلي من الشاشة عندما يكون المحتوى القابل للتمرير قيد الاستخدام.

  • يتم أيضًا تضمين المكوّنات التالية من Wear Compose Foundation:

  • CurvedLayout - Wear Foundation CurvedLayout هو تصميم يمكن ضبطه من أجل وضع العناصر الثانوية في قوس مع تدويرها حسب الحاجة. هذا مشابه لتخطيط الصف المنحني في جزء من حلقة. يُرجى العِلم أنّ محتوى CurvedLayout ليس لامدا قابلة للتركيب، بل هو DSL (لغة خاصة بالنطاق). تتوافق جميع العناصر في DSL من CurvedLayout مع مَعلمة تعديل اختيارية تم إنشاؤها من CurvedModifier.

  • BasicCurvedText: هو عنصر في خدمة DSL في CurvedLayout، ويسمح الترميز basicCurvedText للمطوّرين بكتابة نص منحنٍ بسهولة بعد انحناء دائرة (عادةً على حافة شاشة دائرية). لا يمكن إنشاء basicCurvedText إلا داخل CurvedLayout لضمان أفضل تجربة، مثل القدرة على تحديد المكانة واستخدام CurvedModifiers. وتجدر الإشارة إلى أنّه في معظم الحالات يجب استخدام CurdText بدلاً من ذلك، نظرًا لأنه يستخدم تحديد نسق المواد.

  • المنحنيات - تلفّ المحتوى العادي القابل للإنشاء بحيث يمكن استخدامه مع CurvedLayout. إذا كان curvedComposable يحتوي على عدة عناصر، سيتم رسمها فوق بعضها (مثل المربّع). لإضافة عدة مواد مركّبة على منحنى، يجب لف كل مادة باستخدام curvedComposable.

  • {/6}dRow وcurdColumn، على غرار الصف والعمود، curvedRow يمكن دمج curvedColumn في CurvedLayout لوضع العناصر حسب الحاجة. بالنسبة إلى curvedRow، يمكن تحديد اتجاه التنسيق الزاوي والمحاذاة الشعاعية. بالنسبة إلى curvedColumn، يمكن تحديد المحاذاة الزاويّة والاتجاه الشعاعي.

  • CurvedModifier - تقبل جميع المكونات المنحنية معلمة تعديل يمكن إنشاؤها باستخدام CurvedModifier: تتوافق مع الخلفية والحجم والوزن والمساحة المتروكة.

  • يتم أيضًا تضمين المكوِّن التالي في ميزة التنقّل في Wear Compose:

  • ScrollableNavHost - يوفر مكانًا في التسلسل الهرمي الإنشاء حدوث الانتقال المستقل، مع التنقل إلى الخلف الذي يتم توفيره من خلال إيماءة التمرير السريع. يتم عرض المحتوى ضمن SwipeToDismissBox، وهو يعرض مستوى التنقّل الحالي. أثناء إيماءة التمرير السريع للإغلاق، يتم عرض مستوى التنقّل السابق (إن وُجد) في الخلفية.

  • يمكنك الاطّلاع على ملاحظات الإصدار السابق لمختلف إصدارات ألفا للحصول على مزيد من التفاصيل حول ما تم تسليمه.

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

  • تمت إضافة CurvedModifier.padding* دالة. تُستخدم هذه لتحديد المساحة الإضافية التي يجب إضافتها حول مكون منحني. (I4dbb4)
  • تمت إزالة الفئة الداخلية CompositionLocal (I42490)
  • لقد أضفنا قيمًا ثابتة لأحجام الرموز Button وCompactButton وToggleButton كإرشادات (I57cab)
  • إضافة مَعلمة مفعَّلة إلى AppCard وTitleCard ولديها الآن واجهة برمجة تطبيقات مشابهة لبطاقات "androidx.compose.material". وعند ضبط المَعلمة على false، لن تكون البطاقة قابلة للنقر. (Idc48d، b/228869805)

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

  • يوقف برنامج الخطوات الآن زرَّي التصغير والزيادة عند الوصول إلى الحدّين الأدنى والأعلى (ويطبِّق ContentAlpha.Disable على iconColor) (I4be9f).
  • تمت إضافة مساحة متروكة تبلغ 1dp حول محتوى أداة الاختيار عند الرسم بتدرج لمنع عدم الاستقرار في النص الذي يظهر عند التمرير السريع. (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).
  • السماح بتحديد وضع تجاوز النص المنحني (clip/ellipsis/visible) (I8e7aa)
  • تمت إضافة مفتاح التعديل CurvedModifier.weight، وهو مشابه للمفتاح في ميزة "إنشاء". يمكن استخدام هذا في العناصر الثانوية لـ {/6}dRow و CurvedLayout (للعرض) والعناصر الثانوية لـ {/6}dColumn (للارتفاع). (I8abbd)
  • تمت إضافة أدوات التعديل CurvedModifier.size و.angularSize و.radialSize لتحديد حجم العنصر المنحني. (I623c7)

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

  • يمكنك إعادة ترتيب المعلَمات للتأكّد من ظهور لون الخلفية بشكل متناسق في واجهة برمجة التطبيقات Wear Compose (I43208).
  • تمت إزالة المعلَمات 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 إلى بعض الخانات في العناصر القابلة للنقل للإشارة إلى افتراضات التنسيقات للمطوّرين. سيسمح ذلك للمطوّرين باستخدام أدوات تعديل إضافية على بعض محتوى الخانة وتجنُّب الحاجة إلى توفير عناصر تنسيق إضافية. بالإضافة إلى ذلك، لقد أجرينا بعض التعديلات الثانوية على ألوان AppCard/TitleCard حتى يتم ضبط timeColor وappColor تلقائيًا على contentColor، ويمكن إلغاء كل هذه السمات بشكل فردي إذا لزم الأمر. (I26b59)
  • تم تحويل عنصر SwipeToDismissBoxState.Companion إلى خاص (I39e84)
  • إصلاح ترتيب المَعلمات للمَعلمتَين InlineSlider وStepper تغيير بسيط لاتّباع إرشادات واجهة برمجة التطبيقات (I11fec)
  • أزلنا كائن "التوفير" لـ "SwipeToDismissBoxState" لأنّه لم يتم استخدامه. (Ifb54e)
  • وقد عدّلنا السمة CompactChip لتتوافق مع أحدث مواصفات تجربة المستخدم. تم تقليل المساحة المتروكة إلى أفقي = 12.dp وعمودي = 0.dp. تم تغيير خط التسمية من زر إلى التسمية التوضيحية 1. وتكون أحجام الرموز الموصى بها هي 20×20 عند وجود الرمز والتصنيف معًا و24×24 للرمز لشريحة مضغوطة فقط. وبالنسبة إلى حالة الاستخدام للرمز فقط، تأكّدنا أيضًا من محاذاة الرمز إلى الوسط. (Iea2be)
  • لقد أضفنا عددًا من الحقول الجديدة إلى ScalingLazyListLayoutInfo لنتمكّن المطوّرين من معرفة مقدار contentPadding وautoCenteringPadding التي تم تطبيقها. ويمكن أن تكون هذه التعليمات مفيدة للمطوّرين عند حساب معدّل التنقل بالتمرير أو الانتقال للأسفل (I7577b).
  • لقد تم تنفيذ عمليات نقل البيانات الداخلية/الخارجية لـ Dialog. تمّت إضافة مَعلمة showDialog، ويتحكّم مربّع الحوار في إمكانية عرضه الآن (يؤدي ذلك إلى السماح لمربّع الحوار بتشغيل الصور المتحركة الخاصة بالمقدّمة والخاتمة عند إظهاره أو إخفائه). لاحظ أن الرسوم المتحركة الختامية لا يتم تنفيذها عندما يغادر المستخدم مربع الحوار عن طريق التمرير السريع للإغلاق. أضفنا أيضًا قيمة تلقائية للحالة في الحمل الزائد SwipeToDismissBox المُضاف مؤخرًا. (I682a0)
  • في إطار سعينا لدعم i18n وa11y بشكل أفضل، غيّرنا 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)
  • EdgeSwipeيتم تعديل مستندات أداة التعديل والقيم التلقائية لفهمها بشكل أفضل .(I6d00d)
  • إضافة خانة PageIndicator في سقالة من خلال إضافة PageIndicator مباشرةً إلى Scaffold، قد نضمن ظهورها بشكل صحيح على الأجهزة الدائرية. (Ia6042)
  • يمكنك إزالة الرموز التلقائية من مَعلمتَي InlineSlider وStepper. سيساعد ذلك مطوّري البرامج في الانتباه بشكل أكبر إلى متطلبات الأقلمة وتسهيل الاستخدام. تم عرض استخدامات الرموز التلقائية في الإصدارات التجريبية والعيّنات. (I7e6fd)
  • استبدال أسماء المعلمات اللاحقة والبادئة بـ "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. وباستخدام DSL هذا، يمكن تحديد التنسيقات المنحنية الأكثر تعقيدًا باستخدام سلسلة من curvedRow وcurvedColumn المدمَجة (والتي تعادل التصميم المنحني للصف والعمود). داخل عناصر التنسيق هذه، يمكن استخدام ثلاثة عناصر: curvedComposable (لإضافة أي @Composable) وbasicCurvedText (النص المقوّس للتأسيس) وcurvedText (ارتداء نص منحني وواضح للمواد). (Ib776a)
  • اجعل جانب PositionIndicator قابلاً للضبط. يمكن الآن تهيئة موضع PositionIndex الأساسي ليكون "End" (ويستند إلى اتجاه التخطيط) أو OppositeRsb (مع أخذ دوران الشاشة في الاعتبار، لوضع نفسه عكس اتجاه العرض (RSB) الفعلي) أو الموضعين المطلقين لليسار واليمين. (I2f1f3)
  • بالنسبة إلى SwipeToDismissBox، أعدنا تسمية SwipeDismissTarget.الأصلي إلى SwipeToDismissValue.Default وSwipeDismissTarget.Dismissal إلى SwipeToDismissValue.Dismissed. لقد نقلنا أيضًا SwipeToDismissBoxDefaults.BackgroundKey وSwipeToDismissBoxDefaults.ContentKey إلى SwipeToDismissKeys.Background، SwipeToDismissKeys.Content على التوالي. (I47a36)
  • لقد أضفنا وضعًا للقراءة فقط إلى "أداة الاختيار"، وهو مخصّص للشاشات التي تتضمّن "منتقي" متعددين ويمكن تعديل "منتقي" واحد فقط في كل مرة. وعندما يكون "المنتقي" للقراءة فقط، فإنه يعرض الخيار المحدَّد حاليًا وتصنيفًا في حال توفُّره. (I879de)
  • تمت إعادة هيكلة سياسة SwipeToDismissBoxState لحصر نطاق ExperimentalWearMaterialApi على Modifier.swipeable وSwipeableState، ويتم استخدامهما الآن داخليًا. لدى "SwipeToDismissBoxState" الآن أعضاء في currentValue وtargetValue وisAnimationRunning وsnapTo لإتاحة حالات الاستخدام الشائعة. يُرجى إعلامنا إذا أردت إتاحة أيّ خصائص أخرى. وتم أيضًا إصلاح سلوك SwipeableState في حال كانت إزاحة التمرير السريع ضمن خطأ تقريبي لعلامة ارتساء. (I58302)

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

  • رمز مبسّط وثابت لاكتشاف ما إذا كان يمكن الانتقال في محتوى ScalingLazyColumn (يُستخدَم لتحديد ما إذا كنا نعرض شريط تمرير أم لا) (I7bce0)
  • تم إصلاح خطأ في مؤشر الموضع عند استخدامه مع أكثر من حالة والتبديل بينها (I320b5)
  • لقد عدَّلنا نمط الخط/الخطوط التلقائية في ميزة "إنشاء" لتطبيق Wear OS لتتوافق مع أحدث إرشادات تجربة المستخدم لدينا. تجدر الإشارة إلى أن Display1 (40.sp) وDisplay2 (34.sp) أصغر الآن من قيمهما السابقة، وتم إجراء العديد من التحديثات الثانوية الأخرى لارتفاع الأسطر والمسافات بين الأسطر. (Ie3077)
  • أضفنا مقاومة لـ SwipeToDismissBox بحيث لا تحدث الحركة إلا عند التمرير سريعًا للإغلاق وليس في الاتجاه المعاكس على الإطلاق. (Ifdfb9)
  • لقد غيّرنا بعض قيم المَعلمات التلقائية للدوال CircularProgressIndicator لجعلها متوافقة مع إرشادات تجربة المستخدم للتصميم المتعدد الأبعاد لنظام Wear OS. بالنسبة إلى إصدار الدوّارة/غير المحدَّد، تم تعديل الحجم ( 40->24.dp) ومؤشر اللون (أساسي->في الخلفية) وشفافية اللون (TrackColor) (بنسبة 30%->10%) وعرض الخط ( 4->3dp). بالنسبة إلى إصدار التقدم/التحديد، تم تحديث شفافية trackColor (30%->10%). (I659cc)
  • لقد عدّلنا مَعلمات التوسعة التلقائية لـ ScalingLazyColumn بما يتوافق مع أحدث مواصفات تجربة المستخدم في تصميم Wear OS. ينتج عن ذلك بصريًا بدء تغيير حجم عناصر القائمة إلى مسافة أقرب من مركز القائمة، ولكن أصبح حجمها أقل عند حافة القائمة عن ذي قبل. (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 على هذه الالتزامات.

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

  • تم إدخال تحسينات متعددة على PositionIndexator: أعاد ShowResult تسمية PositionIndexatorVisibility. بعض تحسينات الأداء لتجنُّب إعادة العمليات الحسابية عند عدم الحاجة (Iaed9d)
  • تم تعديل اللون المقترَح لـ SplitToggleChip. يتميز نظام تقسيم ToggleChip الآن بخلفية ذات لون واحد عند تحديده أو إزالة العلامة منه حيث يكون لون عنصر ToggleControl هو المؤشر الأساسي لمعرفة ما إذا تم تحديد المكوِّن أم لا. تمت إضافة سمة ToggleDefaults.splitToggleChipColors() جديدة لإتاحة نظام الألوان الجديد. لقد بسّطنا أيضًا طريقة toggleChipColors() لإزالة الانقسام "BackOverlayColor" (I7e66e).
  • لقد أضفنا القيمة unadjustedSize إلى ScalingLazyListItemInfo لأنّه ليس من الآمن حساب حجم العنصر الأصلي باستخدام الحجم المقسَّم وعامل القياس بسبب دقة العمليات الحسابية العائمة. (I54657، b/221079441)
  • إضافة HorizontalPageIndicator ويمثل إجمالي عدد الصفحات وصفحة محددة. وقد يكون خطيًا أو منحنيًا حسب شكل الجهاز. كما أنها تدعم شكل المؤشر المخصص، الذي يحدد كيفية تمثيل كل مؤشر بشكل مرئي. (Iac898)
  • لقد أجرينا تحديثًا على PickerState بحيث يمكن تعديل numberOfOptions. يوفّر ذلك حالات الاستخدام مثل DatePicker، عندما يتغير عدد الأيام في الشهر حسب الشهر المحدّد. تم تغيير معلمة الدالة الإنشائية لـ PickerState إلى originNumberOfOptions وفقًا لذلك. (Iad066)
  • إخفاء PositionIndicator عندما يكون شريط تمرير وعدم إمكانية التمرير. (Id0a7f)
  • لتحقيق التوافق مع Scaffold، يعرض الآن مكوّن مربّع الحوار بملء الشاشة PositionIndicator وVignette. نستخدم الآن أيضًا ScalingLazyColumn بدلاً من Column، ما يعني أنّ محتوى مربّع الحوار متوفّر الآن في ScalingLazyListScope (ويجب عادةً أن يكون مضمّنًا في العنصر { /* content */ }). ويدعم مربّع الحوار معلَمة verticalArrangement وفقًا لذلك. (فكرة 13)
  • لقد غيّرنا اسم خاصيتين ToggleChip وSplitToggleChip SwitchIcon لتغيير موضعهما ليتلاءمان بشكل أفضل مع Material Design لمساعدة المصممين والمطوّرين على التنقل في واجهة برمجة التطبيقات. (If5921، b/220129803)
  • لقد أضفنا تعليقًا توضيحيًا 3 لإدخال جديد إلى نمط مظهر المادة في Wear.Caption3 هو خط صغير يُستخدم في الكتابة الطويلة جدًا مثل النصوص القانونية. (I74b13، b/220128356)

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

  • أوقِف الصورة المتحركة عند الوصول إلى الشاشة. (Idb69d)
  • تحريك التغييرات في مؤشر الموضع (I94cb9)
  • استنادًا إلى الملاحظات التي تتعلّق بواجهة المستخدم/تجربة المستخدم، غيّرنا ميزة "التوسيط التلقائي" في ScalingLazyColumn لكي لا توفِّر سوى مساحة كافية للتأكّد من إمكانية الانتقال بالكامل إلى منتصف إطار العرض إذا كانت العناصر ذات الفهرس ScalingLazyListState.initialCenterItemIndex أو أعلى. يسمح هذا للمطورين بوضع عنصر أو عنصرين حول العنصر في البداية في المنتصف ولا يمكن التمرير في المنتصف. يعني هذا أنّه لن يكون بإمكان "ScalingLazyColumn" في المركز التلقائي الانتقال فوق initialCenterItemIndex/initialCenterItemScrollOffset (I22ee2).
  • لقد أضفنا عرضًا توضيحيًا بشأن "أداة اختيار التاريخ" وأصلحنا خطأً في PickerState حيث لم يتم تطبيق "SelectedOption" في البداية إلى أن يتم عرض "أداة اختيار التاريخ". (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 على هذه الالتزامات.

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

  • أضفنا ميزة Snap التي يمكن استخدامها مع 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)

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

  • لقد غيَّرنا originCenterItemIndex التلقائي لـ ScalingLazyListState من 0->1. وهذا يعني أنه ما لم يتم تجاوزه عند إنشاء حالة باستخدام ScalingLazyListState.rememberScalingLazyListState(initialCenterItemIndex =)، سيتم وضع عنصر القائمة الثاني (الفهرس == 1) في وسط إطار العرض عند الإعداد، كما سيتم وضع العنصر الأول (الفهرس == 0) قبله. يسمح هذا بتأثير مرئي افتراضي أفضل خارج الصندوق، حيث سيتم ملء معظم إطار العرض بعناصر القائمة. (I0c623، b/217344252)
  • قلّلنا قيمة extraPadding التلقائية في ScalingLazyColumn التي تم توفيرها لنضمن توفُّر العديد من عناصر القائمة التي يمكن رسمها (حتى في حال تصغير حجم بعضها) من% 10 إلى %5. سيؤدّي ذلك إلى تجنُّب إنشاء عناصر إضافية في القائمة قد لا تظهر في إطار العرض. في حال استخدام مَعلمات تحجيم غير عادية (مثل المقاسات المتطرفة)، يمكن للمطوّر تعديل مساحة متروكة إضافية باستخدام viewportVerticalOffsetResolver. (I76be4)
  • حل مشكلة متعلقة بالنص TimeText على عدة أسطر على الجهاز المربّع (Ibd3fb)
  • لقد عدّلنا ScalingLazyColumn بحيث لا يملأ كل المساحة الموجودة في العنصر الرئيسي. بدلاً من ذلك، سيتم أخذ حجمها من حجم محتواها. وهذا يجعله متوافقًا مع سلوك LazyColumn. إذا كنت تريد استعادة السلوك القديم، عليك تمرير Modifier.fillMaxSize() إلى ScalingLazyColumn. ملاحظة: هذا التغيير غير مكتمل وستتم معالجته في تغيير لاحق ضمن الإصدار الأولي القادم. (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. عند ضبط هذا الإعداد على "true"، سيضمن هذا إمكانية تمرير جميع العناصر، بما في ذلك الأول والأخير، بحيث تظهر في منتصف إطار عرض القوائم. لاحظ أنه في حالة استخدام التوسيط التلقائي، ستحتاج على الأرجح إلى تعيين مساحة متروكة للمحتوى العمودي على 0.dp. في حال توفير مساحة متروكة للمحتوى العمودي والمركز التلقائي، سيؤدي ذلك إلى توفير مساحة إضافية قبل عناصر القائمة الأولى وبعدها، ما يسمح بتمريرها إلى أبعد من ذلك. (I2a282، b/214922490)
  • لقد أضفنا مكوّن Dialog يتيح لأي محتوى يمكن إنشاؤه تشغيل مربّع حوار بملء الشاشة يظهر فوق محتوى آخر. عند عرض مربّع الحوار، يتيح التطبيق استخدام ميزة التمرير السريع للإغلاق وسيعرض المحتوى الخاص بأحد الوالدَين في الخلفية أثناء إيماءة التمرير السريع. من المتوقّع أن يكون محتوى مربع الحوار Alert أو Confirmation (تمت إعادة تسميته من المكونات السابقة AlertDialog وConfirmationDialog)، علمًا بأنّ Alert وConfirmation وDialog كلها في حزمة androidx.wear.compose.material.dialog. يمكن استخدام التنبيه والتأكيد كوجهتين للتنقل. وتمت أيضًا إضافة ColumnScope إلى معلمي التنبيه والتأكيد حسب الضرورة. (Ia9014)
  • لقد أزلنا onSurfaceVariant2 من مجموعة ألوان Compose for WearOS Material Theme من الألوان واستبدلنا الاستخدامات في المكتبة بـ onSurfaceVariant. (Icd592)
  • تمت إضافة طريقة لتحديد خيار آليًا في PickerState. ويمكن الآن أيضًا تحديد الخيار الذي تم تحديده في البداية عند إنشاء PickerState. (I92bdf)
  • لقد أضفنا دعمًا لتخصيص سلوك تبادل الرسائل الإلكترونية في ScalingLazyColumn. (I1ad2e، b/208842968)
  • لقد أضفنا "NavController.currentBackStackEntryAsState()" إلى مكتبة "Wear.Compose.Navigation". (If9028، b/212739653)
  • تمت إضافة Modifier.onRotaryScrollEvent() وModifier.onPreRotaryScrollEvent() لأجهزة Wear OS التي تحتوي على زر جانبي دوار.(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)

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

  • تم إصلاح المشكلة المتمثلة في إضافة SwipeDismissableNavHost لوجهة إلى التسلسل الهرمي للإنشاء قبل وصولها إلى حالة دورة حياة CREATED، ما يؤدي إلى حدوث IllegalStateException. كان هذا الإصلاح شرطًا أساسيًا لتعديل التبعية على navigation-compose إلى 2.4.0-beta02 وما بعده. (I40a2b، b/207328687)

  • تمت إضافة فئة تعداد العناصر القابلة للرسم للحصول على موارد قابلة للرسم ضمن مكتبة Wear Compose، وبذلك لم تعُد هناك حاجة إلى الانعكاس. يعمل هذا الإجراء على إصلاح الخطأ الذي كانت تتم فيه إزالة العناصر القابلة للرسم من المكتبة عند استخدام minifyEnabled=true أو shrinkResources=true). (Ib2a98)

  • تمت إضافة اختبارات لتطبيق Stepper في نظام Wear Compose (I2d03a).

  • تمت إضافة نماذج لـ "SwipeDismissableNavHost" في ميزة التنقّل في Wear Compose. (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/fillParentMax width/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 على هذه الالتزامات.

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

  • تمت إضافة شريط تمرير مضمَّن لإنشاء المحتوى على Wear. يتيح InlineSlider للمستخدمين الاختيار من بين مجموعة من القيم. يتم عرض نطاق الاختيارات كشريط بين الحدَّين الأدنى والأقصى لقيم النطاق، والتي يمكن للمستخدمين اختيار قيمة واحدة منها. (If0148)

  • اطّلِع على ميزة "الكتابة" الجديدة في الدرس التطبيقي حول ترميز WearOS.

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

  • تتضمّن مقاييس الأداء الكلية الآن minSdkVersion من 23. (If2655)

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

  • تحديث طريقة التعامل مع الانتقالات في إيماءة ScrollableNavHost في SideEffect (I04994، b/202863359)
  • تحديث طريقة التعامل مع الانتقال في إيماءة ScrollableNavHost (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. ويمكنك الاطّلاع على مشاركة المدونة التي تعرض لك المواد القابلة للتعديل الرئيسية وروابط إلى مراجع إضافية لبدء استخدامها.

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

  • كما أضفنا دعمًا للمطورين ليتمكنوا من تخصيص كل الألوان في مظهر Wear Design Material Design. (I4759b، b/199754668)

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

  • تمت إضافة نماذج ScrollToSubmitBox التي تظل الحالة الحالية (Ibaffe).
  • تمت إضافة روابط إلى أدلة developer.android.com من Kdocs لـ CurvedText وTimeText وباستخدام ScrollToRejectBox. (I399d4)
  • يتم الآن طرح ScrollableNavHost الآن إذا لم تكن هناك وجهة حالية (يشير إلى أن 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 ScrollToRejectBox أحيانًا. (I9387e)
  • تمت إضافة نماذج للأزرار، وCompactButton، وChip، وCompactChip، وAppCard، وTitleCard، وToggleButton، وToggleChip، وSplitToggleChip (Iddc15)
  • وتمت إضافة اختبارات الأداء المصغّرة للبطاقات والشرائح و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 في المادة، وهو مكون يسمح للمطورين بكتابة نص منحنٍ بسهولة بعد انحناء الدائرة (عادةً على حافة شاشة دائرية). (I19593)

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

  • تمت إضافة اختبارات TimeText (Idfead)
  • تحويل ArcPaddingValues إلى واجهة (Iecd4c)
  • تمت إضافة صورة متحركة إلى ScrollToSurfaceBox (I9ad1b).
  • تمت إضافة معلمة hasخلفيات إلى واجهة برمجة تطبيقات ScrollToSurfaceBox لإيقاف إيماءة التمرير السريع عندما لا يكون هناك محتوى في الخلفية لعرضه. (I313d8)
  • يأخذ rememberNavController() الآن مجموعة اختيارية من مثيلات Navigator التي ستتم إضافتها إلى NavController التي تم إرجاعها لتوفير دعم أفضل لأجهزة التنقل الاختيارية، مثل تلك من Accompanist Navigation Material. (I4619e)
  • ارجع إلى NamedNavArgument من navigation-common وأزِل نسخة من wear.compose.navigation. (I43af6)

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

  • تم إصلاح التشويش في اختبار CurvedRow على الأجهزة الأصغر. (If7941)
  • تم إصلاح الوميض المحتمل في CurvedRow عند تحديث المحتوى، ويضمن إعادة قياس الصف المقوّس (Ie4e06).
  • تم تحديث ChipDefaults.تدرّجخلفياتChipColors() بما يتماشى مع التغييرات في مواصفات تجربة المستخدم. يبدأ التدرج الآن بـ MaterialTheme.colors.primary مع ألفا 32.5% وينتهي بـ MaterialTheme.colors.surface بدرجة ألفا بنسبة 0% على خلفية MaterialTheme.colors.surface بنسبة ألفا تبلغ% 75. (Id1548)
  • لقد عدّلنا ألوان ToggleChips عندما تكون في الحالة المحدّدة لتتوافق مع أحدث إرشادات حول مواصفات تجربة المستخدم للتصميم المتعدد الأبعاد لنظام Wear OS. عند اختيار ToggleChips، أصبح يعرض الآن خلفية متدرجة من MaterialTheme.color.surface @ ألفا بنسبة 0%، أعلى اليسار، إلى MaterialTheme.color.primary بنسبة ألفا بنسبة 32%، أسفل اليسار، على خلفية من MaterialTheme.color.surface بنسبة ألفا تبلغ 75%. وينتج عن ذلك اختلاف أكثر دقة بين ما تم وضع علامة عليه وعدم وضع علامة فيه بالنسبة إلى ToggleChip. (Id40b)

الإصدار 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 وهو تطبيق من المستوى الأعلى يوفر بنية للتعامل مع مؤشرات الموضع (مثل موضع التمرير أو مستوى الصوت)، وهي منطقة أعلى الشاشة لعرض الوقت وحالة التطبيق، كما أنها تدعم نقوش الصورة النصفية لتمويه حافة الشاشة العلوية والسفلية للمحتوى القابل للتمرير. المنطقة الرئيسية من السقالة هي المكان الذي يتم فيه وضع محتويات التطبيق. (I5e0bf)
  • تمت إضافة تنفيذ TimeText في نظام Wear Compose (I5654c).

مكتبة التنقّل في تطبيق Wear Compose

  • لقد أضفنا الإصدار الأول من مكتبة Wear Compose وبيانات "التنقل" التي توفِّر التكامل بين مكتبتَي Wear Compose و"التنقل" على Androidx. وهي توفّر وسيلة بسيطة للتنقّل بين وظائف @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 كمكتبة منفصلة بحيث لا تكون تطبيقات Wear Compose البسيطة التي تنفّذ التنقل الذي يتم عرضها يدويًا مطلوبة للاعتماد على مكتبة التنقل في Androidx.

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

  • تم تحديث SwipeDismissableNavHost للتوافق مع rememberSaveable من خلال ضبط الهوية الرئيسية للخلفية والمحتوى (I746fd)
  • لقد أضفنا محوّل Position Positionator يمكنه التعامل مع LazyListState (I21b88).
  • تم تحديث ScrollToSecBox ليتوافق مع نظام التذكر القابل للحفظ (Ie728b).
  • لقد أضفنا دعم renameLayout إلى ScalingLazyColumn. ويسمح ذلك بعكس اتجاه التمرير والتنسيق (I9e2fc).
  • تم إيقاف الترميزَين performGesture وGestureScope نهائيًا، وتم استبدالهما بـ performTouchInput وTouchInjectionScope. (Ia5f3f، b/190493367)
  • لقد أعدنا تسمية VignetteValue إلى VignettePosition وإعادة تسمية VignetteValue.وكلاهما تمت إعادة تسميتهما إلى VignettePosition.TopAndBottom. (I57ad7)
  • قمنا بإعادة تسمية ScalingLazyColumnState إلى ScalingLazyListState، وScalingLazyColumnItemInfo إلى ScalingLazyListItemInfo، وScalingLazyColumnLayoutInfo إلى ScalingLazyListLayoutInfo، وScalingLazyColumnScope إلى ScalingLazyListScope، في حال قررنا إضافة تنفيذ RowingL في المستقبل. (I22734)

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

  • مستند CompactChip معدَّل لوصف ما يحدث في حال عدم توفير رمز أو تصنيف (I4ba88)
  • لقد أجرينا بعض التعديلات على مكونات بطاقة Wear OS. (I6b3d0)
    1. تم تقليل التباعد بين بطاقة العنوان بين العنوان والنص من 8.dp إلى 2.dp.
    2. تم تغيير خط عنوان TitleCard من النص الأساسي إلى العنوان 3.
    3. تم تغيير تدرج خلفية البطاقة لجعل الخلفية أكثر قتامة.

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

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

  • ضع علامة على ArcPaddingValues على أنّها @Stable (I57deb)
  • يُنفِّذ الآن ScalingLazyColumnState واجهة ScrollableState مما يسمح للمطورين بالوصول آليًا للتمرير في المكون. (I47dbc)

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

  • لقد قللنا التباعد بين Icon وText في الرقاقة و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 على هذه الالتزامات.

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

  • تمت إضافة ScrollToSubmitBox وأداة تعديل قابلة للتمرير السريع يمكن استخدامهما لإتاحة إيماءة التمرير السريع من اليسار إلى اليمين لإغلاقها. على الرغم من أنها مستقلة عن مكونات التنقل، يتوقع استخدام ذلك للخروج من شاشة والانتقال إلى شاشة أخرى. تمت إضافة اختبارات الدمج لتقديم عرض توضيحي لميزة "التمرير السريع للإغلاق". (I7bbaa)
  • لقد أضفنا واجهات ScalingLazyColumnItemInfo وScalingLazyColumnLayoutInfo إلى فئة ScalingLazyColumnState للسماح للمطورين بمعرفة المواضع والأحجام الفعلية للعناصر في ScalingLazyColumn بعد تطبيق التوسيع. لقد أصلحنا أيضًا خطأً بالطريقة التي تم بها احتساب الحجم عند تطبيق مساحة متروكة المحتوى "الأعلى" على ScalingLazyColumn. (I27c07)

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

  • أضِف فئة CurvedTextStyle لتحديد نمط النص المنحني. يشبه TextStyle، ولكنه يتيح الآن استخدام اللون وحجم الخط والخلفية فقط. وستتم إضافة المزيد من خيارات التصميم في المستقبل. (I96ac3)
  • لقد أضفنا واجهات ScalingLazyColumnItemInfo وScalingLazyColumnLayoutInfo إلى فئة ScalingLazyColumnState للسماح للمطورين بمعرفة المواضع والأحجام الفعلية للعناصر في ScalingLazyColumn بعد تطبيق التوسيع. لقد أصلحنا أيضًا خطأً بالطريقة التي تم بها احتساب الحجم عند تطبيق مساحة متروكة المحتوى "الأعلى" على ScalingLazyColumn. (I27c07)
  • تمت إضافة @ExperimentalWearMaterialApi إلى تعداد SwipeDismissTarget الذي يشكّل جزءًا من SwipeToDismissBox API. (I48b5e)

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

  • تمت إضافة مواد الاختبار لـ ScrollToRejectBox (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.dp بشكل متناسق بغض النظر عمّا إذا كانت الشريحة تحتوي على رمز متوفّر أم لا (كان الرمز السابق 12.dp في حال توفّر الرمز و14.dp في حال عدم توفّره) (I34c86)

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

  • إضافة اختبارات CurvedRow (I93cdb)
  • ربط تبعيات Wear Compose لإنشاء Compose 1.0.0-rc01. (Ie6bc9)
  • تم تغيير تسليم رسم صورة الخلفية في البطاقات والشرائح بحيث يتم اقتصاص الصورة بدلاً من تمديدها للحفاظ على تناسب الصورة. (I29b41)
  • تمت إضافة المزيد من العروض التوضيحية واختبارات الدمج لكل من Button وToggleButton. (5e27ed2)
  • تمت إضافة المزيد من اختبارات الشرائح لتغطية ألوان المحتوى للصور الخلفية للعناصر (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 هي مكتبة بلغة Compose تعتمد على لغة Kotlin وتتوافق مع "تصميم Wear Material"، وهي إحدى إضافات "التصميم المتعدد الأبعاد" للأجهزة القابلة للارتداء التي تعمل بنظام التشغيل WearOS. يحتوي هذا الإصدار الأولي الأول على عمليات تنفيذ مبكرة ووظيفية لما يلي:

  • تحديد نسق المواد - يهيئ الألوان وأسلوب الخط والأشكال بشكل متسق عبر المكونات المستخدمة من هذه المكتبة.
  • "شريحة" و"CompactChip": هي شرائح مصمّمة على شكل استاد، ويمكن إضافة أشكال إليها لتحمل رموزًا وتصنيفات ثانويّة.
  • - ToggleChip أو SplitToggleChip - وهو نوع متخصص من الشرائح يتضمن فتحة لرمز تبديل الحالة الثنائية مثل زر الاختيار أو مربّع الاختيار. بالإضافة إلى ذلك، يحتوي SplitToggleChip على منطقتين يمكن النقر عليهما، إحداهما قابلة للنقر والأخرى قابلة للتبديل.
  • زر، زر مضغوط - الأزرار دائرية الشكل، وتحتوي على خانة محتوى واحدة للرمز أو الحد الأدنى من النص (3 أحرف كحد أقصى).
  • زر التبديل: زر لتفعيل أحد الإجراءات أو إيقافه، مع فتحة واحدة للرمز أو الحد الأدنى من النص (3 أحرف كحد أقصى).
  • بطاقة وAppCard هي مستطيلة الشكل بزوايا مستديرة وتوفر خانات للمحتوى مثل رمز التطبيق والوقت والعنوان والنص.

ستعمل الإصدارات المستقبلية على توسيع مجموعة الأدوات مع إضافة دعم لأدوات اختيار التصميم المتعدد الأبعاد لنظام التشغيل Wear OS وأشرطة التمرير والقوائم ومؤشرات الصفحات ومربعات الحوار ومؤشرات rsb التمرير، والمحتوى المحمص وغير ذلك.

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

تم تصميم Wear Compose Material باستخدام المبادئ نفسها المستخدَمة في Compose Material، بالرغم من أنّها تستهدف الأجهزة القابلة للارتداء. يجب استخدام مكتبة Wear Compose Material بدلاً من مكتبة Compose Material عند إنشاء جهاز قابل للارتداء.

يجب اعتبار مكتبتَي "Material" غير مختلطة ويجب عدم الخلط بينهما في التطبيق نفسه. فإذا وجد المطوّرون أنفسهم يدرجون مكتبة Compose Material في ملحقاتهم، سيقترح عليهم إمّا أ) عدم توفُّر مكونات في مكتبة Wear Compose Material، يُرجى إبلاغنا بما تحتاج إليه، أو ب) استخدام مكوّن لا ننصح باستخدامه على جهاز قابل للارتداء.