تطبيق Wear Compose
التعديل الأخير | الإصدار المستقر | إصدار مرشح | الإصدار التجريبي | إصدار ألفا |
---|---|---|---|---|
12 حزيران (يونيو) 2024 | 1.3.1 | - | 1.4.0-beta03 | - |
إعلان التبعيات
لإضافة تبعية إلى Wear، يجب إضافة مستودع Google Maven إلى مشروعك. لمزيد من المعلومات، يمكنك الاطّلاع على مستودع Maven من Google.
أضف التبعيات للعناصر التي تحتاجها في ملف build.gradle
لتطبيقك أو الوحدة الخاصة بك:
رائع
dependencies { implementation "androidx.wear.compose:compose-foundation:1.3.1" // For Wear Material Design UX guidelines and specifications implementation "androidx.wear.compose:compose-material:1.3.1" // For integration between Wear Compose and Androidx Navigation libraries implementation "androidx.wear.compose:compose-navigation:1.3.1" // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.3.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.3.1") // For Wear Material Design UX guidelines and specifications implementation("androidx.wear.compose:compose-material:1.3.1") // For integration between Wear Compose and Androidx Navigation libraries implementation("androidx.wear.compose:compose-navigation:1.3.1") // For Wear preview annotations implementation("androidx.wear.compose:compose-ui-tooling:1.3.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-alpha23
14 أيار (مايو) 2024
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha23
". يحتوي الإصدار 1.0.0-alpha23 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد حدّثنا واجهات برمجة التطبيقات
ToggleButton
وRadioButton
بحيث يمكن ضبط الألوان التي تم إيقافها. (If13a7) - لقد أضفنا سمة
CircularProgressIndicator
جديدة إلى Material3. (Ib3bd7)
إصلاح الأخطاء
- لقد أصلحنا خطأً حيث أعلنت الأزرار القابلة للاختيار عن النقر مرّتين للتبديل بعد اختيار الزر. (I7ed88)
الإصدار 1.0.0-alpha22
1 أيار (مايو) 2024
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha22
". يحتوي الإصدار 1.0.0-alpha22 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد عدّلنا
ColorScheme
Material3. (I7b2b8) - لقد حدثنا مفتاح Material3، وبالإضافة إلى بعض التغييرات في الألوان، أصبحت علامة التجزئة تتطابق الآن مع تلك المستخدمة في "مربع الاختيار". (Icac7b)
إصلاح الأخطاء
- يُرجى تحديث جميع العروض التوضيحية للدمج لاستخدام معدِّل
rotaryScrollable
جديد. (I25090)
الإصدار 1.0.0-alpha21
17 نيسان (أبريل) 2024
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha21
". يحتوي الإصدار 1.0.0-alpha21 على هذه الالتزامات.
- تم إطلاق هذا الإصدار بسبب مشكلة فنية في الإصدار السابق أدّت إلى فقدان أواني المصدر. لا توجد التزامات جديدة في هذا الإصدار.
الإصدار 1.0.0-alpha20
3 نيسان (أبريل) 2024
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha20
". يحتوي الإصدار 1.0.0-alpha20 على هذه الالتزامات.
إصلاح الأخطاء
- لقد قمنا بضبط ألفا حالة الضغط والمركز على تمويج من أجل التباين. (I59f0a)
- لقد أضفنا مسافات بين التصنيفات الأساسية والثانوية في
Button
وToggleButton
وRadioButton
، وذلك بعد إجراء آخر التغييرات على أنماط أسلوب الخط وارتفاعات الأسطر. (I2c0ba)
الإصدار 1.0.0-alpha19
6 مارس 2024
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha19
". يحتوي الإصدار 1.0.0-alpha19 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد أضفنا
TimeText
إلى مكتبة Wear Compose Material3. يعرض هذا العنصر الوقت الحالي (والحالة الإضافية) في أعلى الشاشة. تتجنّب واجهة برمجة التطبيقات Material3 الجديدة والموجزة التكرار بين المحتوى الخطي والمنحني. (I4d7c3) - لقد عدّلنا أسماء المَعلمات من
onSelected
إلىonSelect
فيRadioButton
. (I1a971) - يمكنك إنشاء رمز مميّز لـ
RadioButton
وSplitRadioButton
وإعادة ضبط الطرق الحالية أيضًا لتقليل مقدار بحثCompositionLocal
من خلال إضافة مثيلات مخزّنة مؤقتًا للألوان وجعل طُرقRadioButtonColors
وSplitRadioButtonColors
داخلية. (I02b33)
الإصدار 1.0.0-alpha18
21 شباط (فبراير) 2024
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha18
". يحتوي الإصدار 1.0.0-alpha18 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد أعدنا تنظيم النمط التلقائي لـ
CardColors
وToggleButtonColors
وSplitToggleButtonColors
من خلال إنشاء مثيلات مخزَّنة مؤقتًا داخليًا وتقليل استخدامCompositionLocal
. (If3fec)
الإصدار 1.0.0-alpha17
7 شباط (فبراير) 2024
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha17
". يحتوي الإصدار 1.0.0-alpha17 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد حدّثنا واجهة برمجة التطبيقات Button API لاستخدام
buttonColors
تلقائيًا وإزالةfilledButtonColors
المكرّرة. (I4fe3b) - لقد أعدنا تنظيم الأنماط التلقائية لكل من
ButtonColors
وIconButtonColors
وTextButtonColors
من خلال إنشاء مثيل مخزَّن مؤقتًا داخليًا وتقليل استخدامCompositionLocal
. (I5f51c) - لقد أزلنا عبء
rememberUpdatedState
في فئات الألوان الخاصة بالمكوّنات ووضع علامة على طرق الموصّلات داخل فئات الألوان على أنّها داخلية. (If6571)
إصلاح الأخطاء
- لقد عدّلنا العمود "
Modifier.minimumInteractiveComponentSize
" لاستخدام "Modifier.node
". (Iba6b7)
الإصدار 1.0.0-alpha16
24 كانون الثاني (يناير) 2024
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha16
". يحتوي الإصدار 1.0.0-alpha16 على هذه الالتزامات.
الميزات الجديدة
- لقد أضفنا
CompactButton
، الذي يمكن أن يستخدم نفس الألوان المعبأة والمحددة اللون مثل Button.(I05df0)
تغييرات واجهة برمجة التطبيقات
- لقد أضفنا
RadioButton
/SplitRadioButton
كحاويات لعناصر التحكّم في الاختيار، مثل التحكّم اللاسلكي. ويختلف هذا عنToggleButton
الحالي في أنّRadioButton
قابل للاختيار (ويعمل ضمن مجموعة محدّدة)، في حين أنّToggleButton
قابل للتبديل (ومستقل). (I61275) - سنزيل
LocalContentAlpha
من مكتبة Wear Compose Material3 من أجل تحقيق الاتساق مع مكتبة Compose Material3. (I49a0a) - تم تعديل مكونات تصميم المواد على ارتداء المنتج ومواد ارتداء 3 التي تعرض
MutableInteractionSource
في واجهة برمجة التطبيقات لتعرض الآن قيمةMutableInteractionSource
قابلة للتعديل والتي يتم ضبطها تلقائيًا على القيمة "فارغ". ما مِن تغييرات دلالية هنا: يعني ضبط القيمة "فارغ" أنك لا تريد رفعMutableInteractionSource
، وسيتم إنشاؤه داخل المكوِّن إذا لزم الأمر. يؤدي التغيير إلى قيمة "فارغ" إلى السماح لبعض المكونات بعدم تخصيصMutableInteractionSource
مطلقًا، والسماح للمكوّنات الأخرى بإنشاء مثيل بشكل كسول فقط عند الحاجة، ما يحسّن الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدمMutableInteractionSource
الذي تمرّره إلى هذه المكوّنات، نقترح إدخال قيمة فارغة بدلاً من ذلك. يوصى أيضًا بإجراء تغييرات مماثلة في المكونات الخاصة بك. (Ib90fc، b/298048146) - إضافة واجهة برمجة تطبيقات تمويج جديدة في مكتبات
wear:compose-material
وwear:compose-material3
والتي تحل محل واجهة برمجة التطبيقاتrememberRipple
المتوقّفة نهائيًا تتم أيضًا إضافةCompositionLocal
مؤقتًا،LocalUseFallbackRippleImplementation
، لإعادة مكوّنات Material إلى استخدام واجهات برمجة تطبيقاتrememberRipple/RippleTheme
المتوقّفة نهائيًا. ستتم إزالة هذه الميزة في الإصدار الثابت التالي، لأنّ الغرض منها هو أن يكون وسيلة مساعدة مؤقتة لنقل البيانات في الحالات التي توفِّر فيهاRippleTheme
مخصّص. يمكنك الانتقال إلى developer.android.com للحصول على معلومات حول نقل البيانات والمزيد من المعلومات الأساسية المرتبطة بهذا التغيير. (af92b21) - أجرينا تحسينات بسيطة على واجهة برمجة التطبيقات
HorizontalPageIndicator
ومستنداتها. (I60efc) - لقد أجرينا تحديثًا لـ
ColorScheme
ليكون غير قابل للتغيير، ما يجعل التحديثات الفردية للألوان أقل كفاءة، ولكن يجعل الاستخدام الأكثر شيوعًا للألوان أكثر كفاءة. السبب وراء هذا التغيير هو أن معظم التطبيقات لن تقوم بتحديث الألوان الفردية كحالة استخدام رئيسية. ولا يزال هذا ممكنًا، لكنه سيعيد إنشاؤه أكثر من ذي قبل، وبدورنا نعمل على تقليل عدد الاشتراكات في الولاية بشكل كبير من خلال جميع الرموز البرمجية والمواد، وسيؤثر ذلك في عملية الإعداد وتكلفة التشغيل للمزيد من حالات الاستخدام العادية. (Ibc2d6) - تم تحديث واجهات برمجة التطبيقات
ToggleButton
وSplitToggleButton
للسماح بتخصيص الألوان التي تم إيقافها. بالإضافة إلى ذلك، تُستخدم الآن رموز Material Design لقيم اللون وأسلوب الخط. (If087c) - تم تعديل ألوان خلفية صورة الزر لاستخدام رموز التصميم المتعدد الأبعاد. (Iba215)
- لقد غيّرنا المكوّنات
Checkbox
وSwitch
وRadioButton
لتصبح عرض فقط من خلال إزالة معالجة النقرات. من المتوقّع أن تُستخدم هذه المكوّنات في سياسة(Split)ToggleButton
التي تعالج النقرة، لذا تمّت الإشارة بشكل أوضح إلى هذه المكوّنات على أنّها للعرض فقط (وهي ليست مخصّصة للاستخدام المستقل على نظام التشغيل Wear OS). (I2322e)
إصلاح الأخطاء
- لقد أضفنا رموزًا مميّزة لقيم الحركة للمدد ودرجات التخفيف في Wear Compose Material 3. (I437cd)
- أصلحنا خطأً في
ToggleButton
وSplitToggleButton
وCheckbox
وSwitch
وRadioButton
بحيث لا يتم تكرار إشعارات تسهيل الاستخدام (كان يتم تكرار الأدوار الدلالية في السابق). (Ica281) - لقد أزلنا طبقة المادة الأساسية في
CompactButton
لتحسين الأداء. (7902858)
الإصدار 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
من Material3HorizontalPageIndicator
، وبدلاً من ذلك، ستكون المعلَمة على شكل شاشة الجهاز (خطية أو دائرية). (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
لاستخدام الرموز المميّزة Material Design. (I3f137) - تم تحديث
IconToggleButton
لاستخدام الرموز المميّزة Material Design. (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) - لقد عدّلنا أسلوب الخط والمحاذاة في الإصدارَين 3
ListHeader
وListSubheader
من المادة 3. (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 لا تزال قيد التجربة، وذلك لأنّ تفاصيل واجهة المستخدم لا تزال قيد التطوير. (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
التي تستدعي الإصدار الجديد من FoundationSwipeToDismissBox
وتحدّد قيم اللون التلقائية من مظهرها. (I275fb) - لقد أضفنا سمة Material3
InlineSlider
إلى Wear Compose. تسمح للمستخدمين بالاختيار من بين مجموعة من القيم. يتم عرض نطاق الاختيارات كشريط بين القيم الدنيا والقصوى للنطاق، والتي يمكن للمستخدمين اختيار قيمة واحدة منها. إنّInlineSlider
مثالي لضبط الإعدادات مثل مستوى الصوت أو السطوع. (I7085f)
تغييرات واجهة برمجة التطبيقات
- لقد عدّلنا "الأشكال" في مظهر Wear Material 3 لاستخدام
RoundedCornerShape
بدلاً من "الشكل". (Idb133) - لقد جعلنا ثوابت الارتفاع للزر public (Idbfde)
- تعديل ملفات واجهة برمجة التطبيقات لإضافة تعليقات توضيحية بشأن إيقاف التوافق (I8e87a، b/287516207)
- لقد أدخلنا تحديثًا على
InlineSliderColors
في Wear Compose Material 3 لتتضمّن أدوات إنشاء عامة وخصائص عامة. (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
إلى مكتبة ComposeAllowed لمستخدمي 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 (وأُعيدت تسميته ليصبح "Button" للتناسق مع مكتبة "Compose Material 3" (إنشاء مواد الإنشاء 3). يتضمّن الزر التلقائي خلفية معبأة وهناك أشكال مختلفة للأزرار لكل من
FilledTonal
(خلفية مكتومة الصوت) وزر "مخطط" (شفاف مع حد رفيع) وزر "ثانوي" (خلفية شفافة بدون حدود)، ويُستخدَم لتنفيذ إجراءات تكميلية أقل درجة من البروز. ستتم إضافة أزرار مستديرة للرمز البسيط والمحتوى النصي في إصدار مستقبلي.(Ia6942)
الإصدار 1.0.0-alpha02
5 نيسان (أبريل) 2023
تم طرح "androidx.wear.compose:compose-material3:1.0.0-alpha02
". يحتوي الإصدار 1.0.0-alpha02 على هذه الالتزامات.
إصلاح الأخطاء
- لقد أضفنا السمة
DefaultTextStyle
إلى مواد Wear Compose 3 التي تضبط السمةPlatformTextStyle.includeFontPadding
تلقائيًا على "صحيح" (الإعداد الحالي). سيتيح لنا ذلك مزامنة إيقاف مساحة متروكة الخطوط تلقائيًا مع مكتبات Compose في المستقبل (راجع إصلاح المساحة المتروكة للخطوط في 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. يحتوي الإصدار الأولي الأول هذا على عمليات تنفيذ مبكرة ووظيفية لما يلي:
وسنواصل تطوير Wear Material (
androidx.wear.compose:compose-material
) وWear Material 3 (androidx.wear.compose:compose-material3
) بالتوازي. سيتم توسيع نطاق تطبيق Material3 من خلال مجموعة التطبيقات المصغّرة لتشمل مكونات أخرى معروفة من Compose على نظام التشغيل Wear OS، مثل الأزرار وأدوات الاختيار وأشرطة التمرير.إنّ مكتبات Wear Material وWear Material 3 حصريةان وغير مختلطتين في التطبيق نفسه، لأنّها تشيران بشكل أساسي إلى مواضيع مختلفة قد تؤدي إلى تناقضات غير متوقّعة.
الإصدار 1.4
الإصدار 1.4.0-beta03
12 حزيران (يونيو) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-beta03
". يحتوي الإصدار 1.4.0-beta03 على هذه الالتزامات.
إصلاح الأخطاء
- لقد عدّلنا العمود "
Modifier.rotaryScrollable
" لاستبدال العنصر "قابل للتركيز" بعنصر "التركيز على الاستهداف"، ما يؤدي إلى تحسين الأداء. (Id294b) - لقد أصلحنا مشكلة أدّت إلى تكرار إشعار "
ProgressIndicator
" بموجبTalkBack
. (I94563) - لقد عدَّلنا الملفات الشخصية الأساسية لمكتبة Wear Compose. (I3cbc3)
الإصدار 1.4.0-beta02
29 أيار (مايو) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-beta02
". يحتوي الإصدار 1.4.0-beta02 على هذه الالتزامات.
إصلاح الأخطاء
- لقد زِدنا عرض الحدود الذي يتم تمريره من النص المقوّس إلى برامج قراءة الشاشة لمعالجة المشاكل المتعلّقة بالاقتطاع (Id865f).
- لقد قيّدنا حدود
HorizontalPageIndicator
التي تم ضبطها على برامج قراءة الشاشة، وكان المؤشر يشغل في السابق وضع ملء الشاشة (Id8d7a).
الإصدار 1.4.0-beta01
14 أيار (مايو) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-beta01
". يحتوي الإصدار 1.4.0-beta01 على هذه الالتزامات.
يشير الإصدار 1.4 إلى الإصدار التجريبي 01 من Compose لتطبيق Wear OS إلى أنّ هذا الإصدار من المكتبة مكتمل وأن واجهة برمجة التطبيقات مقفلة (باستثناء الحالات التي تكون فيها ميزة تجريبية). يتضمن إصدار Wear Compose 1.4 الوظائف الجديدة التالية:
- لقد أضفنا
Modifier.rotaryScrollable
، وهو مفتاح تعديل جديد يربط بين الأحداث الدورانية والحاويات القابلة للتمرير، ما يتيح للمستخدمين التمرير باستخدام زر الساعة أو حافة دوّارة على جهاز Wear OS. بالإضافة إلى ذلك، يتيحScalingLazyColumn
وPicker
الآن استخدام طريقة إدخال البيانات عبر وحدة تحكُّم دورانية تلقائيًا. استخدِم المَعلمةrotaryScrollableBehavior
لضبط سلوك الانتقال أو الانطباق. بالنسبة إلى سلوك الانطباق، ننصح بتوفير ميزة الانطباق عبر المعلَمةflingBehavior
أيضًا عند التمرير باللمس. - يوفّر تطبيق "
SwipeDismissableNavHost
" الآن صورة متحركة لإدخال عمليات النقل داخل التطبيق. - يتم عرض
PositionIndicator
الآن تلقائيًا عند عرض الشاشة لأول مرة. - تمت إضافة
SelectableChip
وSplitSelectableChip
كصيغة علىToggleChip
- يمكنك استخدام هذا معRadioButton
لتوفير دلالات قابلة للاختيار بدلاً من دلالات قابلة للتبديل لإمكانية الوصول. - يتيح
ListHeader
الآن ضبط الارتفاع عندما يحتاج المحتوى إلى ارتفاع إضافي ليتوافق مع أحجام الخطوط الكبيرة.
إصلاح الأخطاء
- لقد أصلحنا خطأً حيث أعلنت الشرائح القابلة للاختيار عن تفعيل ميزة "النقر مرّتين" للتبديل بعد اختيار الشرائح. (I7ed88)
الإصدار 1.4.0-alpha08
1 أيار (مايو) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-alpha08
". يحتوي الإصدار 1.4.0-alpha08 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد أجرينا التغييرات التالية على واجهة برمجة التطبيقات الدورانية الجديدة: تمت إعادة تسمية
Modifier.rotary
لتصبحModifier.rotaryScrollable
، وتسمية واجهةRotaryBehavior
إلىRotaryScrollableBehavior
ووظيفتهاhandleScrollEvent
إلىperformScroll
، وإعادة تسميةRotaryScrollableAdapter
إلىRotaryScrollableLayoutInfoProvider
وإزالة الخاصيةscrollableState
. (I0c8a6) - لقد أجرينا تغييرات إضافية على واجهة برمجة التطبيقات roary API، حيث تمت إعادة تسمية
RotaryScrollableLayoutInfoProvider
لتصبحRotarySnapLayoutInfoProvider
(لأنّ هذا المزوّد لا يحتاج إلا للدوران الدوار مع الانطباق)، وتغيير نوع المعلَمةsnapOffset
فيRotaryScrollableDefaults.snapBehavior snapOffset
من Int إلى Dp. (Iddebe) - أعدنا تسمية المعلَمة
clickInteractionSource
فيSplitSelectableChip
لتصبحcontainerInteractionSource
. (Ia8f84) - لقد عدّلنا أسماء مَعلمات معاودة الاتصال للنقرات من "
SplitSelectableChip
" من "onClick
" إلى "onSelectionClick
" ومن "onBodyClick
" إلى "onContainerClick
". (I32237)
إصلاح الأخطاء
- لقد عدّلنا المساحة المتروكة الأفقية لـ
PositionIndicator
إلى 2dp (كانت 5 بكسل مستقل الكثافة)، لإصلاح خطأ يتداخل فيهPositionIndicator
(شريط التمرير) مع المحتوى القابل للتمرير. يُرجى العلم أنّه من المتوقّع أن يؤدي هذا التغيير إلى إيقاف لقطات الشاشة الحالية التي تتضمّنPositionIndicator
بسبب تغيير المساحة المتروكة. (I57472) - لقد أدخلنا تحسينات على المستندات الخاصة بواجهة برمجة التطبيقات الدورانية الجديدة من خلال وصف الاختلافات بين الأجهزة الدورانية منخفضة الدقة والدقة العالية. (I63abe)
- لقد عالجنا استثناء خارج النطاق في
SwipeDismissableNavHost
يمكن أن يحدث عندما كانت قيم ألفا المُدخلة أقل من الصفر. (Ib75a1، b/335782510)
الإصدار 1.4.0-alpha07
17 نيسان (أبريل) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-alpha07
". يحتوي الإصدار 1.4.0-alpha07 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد أضفنا
Modifier.rotary
، وهو مفتاح تعديل جديد يربط بين الأحداث الدورانية والحاويات القابلة للتمرير، ما يتيح للمستخدمين التمرير باستخدام زر الساعة أو حافة دوّارة على جهاز Wear OS. بالإضافة إلى ذلك، يتيح كل منScalingLazyColumn
وأداة الاختيار الآن استخدام طريقة إدخال البيانات عبر وحدة تحكُّم دورانية تلقائيًا، مع التحميلات الزائدة الجديدة التي تتضمّن المَعلمةrotaryBehavior
لتحديد إعدادات الانتقال أو الانطباق. إذا تم ضبط المعلَمةrotaryBehavior
على الانطباق، من المستحسن توفير الانطباق عبر المعلَمةflingBehavior
أيضًا، من أجل التمرير باللمس. (I2ef6f) - يتم استبدال مصادر
NestedScroll
"السحب والتنقل" بـUserInput
وSideEffect
لاستيعاب التعريف الموسّع لهذه المصادر التي تتضمن الآن الصور المتحركة (التأثير الجانبي) وبكرة الماوس ولوحة المفاتيح (UserInput). (I40579) - لقد أضفنا
SelectableChip
وSplitSelectableChip
لتوضيح الفرق بين عناصر التحكّم في الإيقاف/التفعيل مثلSwitch/Checkbox
وعناصر التحكّم القابلة للاختيار مثلRadioButton
. يستبدل هذا الإجراء الأحمال الزائدة المضافة سابقًا لـToggleChip/SplitToggleChip
بمَعلماتselectionControl
. (Ia0217) - تم تحديث معدِّل مستوى الظهور لـ
IndeterminateStrokeWidth
فيProgressIndicatorDefaults
إلى "علني". (I5b5a4)
الإصدار 1.4.0-alpha06
3 نيسان (أبريل) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-alpha06
". يحتوي الإصدار 1.4.0-alpha06 على هذه الالتزامات.
إصلاح الأخطاء
- لقد أضفنا مسودة داخلية لدعم وحدة المعالجة المركزية (Rotary)، كجزء من الجهود الكبيرة المتمثلة في نقل سلوك Rotary إلى AndroidX من تطبيق Horologist. (I617d1)
- لقد أضفنا مسودة داخلية لدعم تقنية اللمس، وذلك كجزء من الجهود الكبيرة المتمثلة في نقل سلوك Rotary إلى AndroidX من Horologist. (I5568a)
الإصدار 1.4.0-alpha05
20 آذار (مارس) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-alpha05
". يحتوي الإصدار 1.4.0-alpha05 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد جعلنا السمتَين
initialCenterItemIndex
وinitialCenterItemScrollOffset
فيScalingLazyListState
علنية. (I0c616) - لقد جعلنا
FullScreenStrokeWidth
منProgressIndicatorDefaults
علنية. (Ibea23)
إصلاح الأخطاء
- لقد تم تحسين أداء
PositionIndicator
عن طريق خفض عدد المكالمات إلىlayoutInfo
منScalingLazyColumn
. (Idc83d)
الإصدار 1.4.0-alpha04
6 مارس 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-alpha04
". يحتوي الإصدار 1.4.0-alpha04 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- أضفنا حملاً زائدًا جديدًا لكل من
ToggleChip
وSplitToggleChip
والتي تأخذ المعلَمةselectionControl
بدلاً من المعلَمةtoggleControl
. يجب استخدام هذه السمة مع عنصر التحكمRadioButton
لتوفير دلالات قابلة للاختيار بدلاً من دلالات قابلة للتبديل لتسهيل الاستخدام (I1d6d9). - لقد عدّلنا أسماء مَعلمات التحميل الزائد
selectionControl
الجديدة منonSelected
إلىonSelect
فيToggleChip
وSplitToggleChip
(I1a971).
الإصدار 1.4.0-alpha03
21 شباط (فبراير) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-alpha03
". يتضمّن الإصدار 1.4.0-alpha03 هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- تم إيقاف برنامج تضمين
Modifier.inspectable
نهائيًا. ستعمل واجهة برمجة التطبيقات هذه على إنشاء عدد أكبر من عمليات إبطال صلاحية المحرِّر أكثر من اللازم، لذا لا ننصح باستخدامها الآن. ننصح المطوِّرين بتطبيق طريقةinspectableProperties()
علىModifierNodeElement
إذا أرادوا عرض سمات التعديل للأدوات. (Ib3236)
إصلاح الأخطاء
- لقد أصلحنا خطأً في الوثائق لتعليقات
WearPreview*
التوضيحية. (Id526d)
الإصدار 1.4.0-alpha02
7 شباط (فبراير) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-alpha02
". يحتوي الإصدار 1.4.0-alpha02 على هذه الالتزامات.
إصلاح الأخطاء
- لقد أصلحنا خطأً في ميزة "التمرير السريع" للاطّلاع على الإجراءات التي تمكّن المستخدم من التفاعل مع (وإلغاء) إجراء معيّن تم اتّخاذه بشأن عنصر من خلال البدء بالتمرير سريعًا على عنصر آخر (Ide059).
- لقد عدّلنا
ListHeader
لإتاحة إمكانية تعديل الارتفاع عندما يحتاج المحتوى إلى ارتفاع إضافي ليتوافق مع أحجام الخطوط الكبيرة. (I7290c، b/251166127)
الإصدار 1.4.0-alpha01
24 كانون الثاني (يناير) 2024
تم طرح "androidx.wear.compose:compose-*:1.4.0-alpha01
". يحتوي الإصدار 1.4.0-alpha01 على هذه الالتزامات.
الميزات الجديدة
- لقد أضفنا مؤثرات حركية لإدخالات إلى
SwipeDismissableNavHost
لإجراء عمليات النقل داخل التطبيق.(cfeb79a) - يتم عرض
PositionIndicator
الآن تلقائيًا عند عرض الشاشة لأول مرة. تم إجراء هذا التغيير للمساعدة في تلبية إرشادات جودة Wear. هذا يعني أنّه يجب تعديل اختبارات لقطات الشاشة على الشاشات التي تتضمّنPositionIndicator
، وذلك لأنّه لم يكن يتم عرضPositionIndicator
في السابق. (419cef7)
تغييرات واجهة برمجة التطبيقات
- أضفنا واجهة برمجة تطبيقات تمويج جديدة في مكتبات
wear:compose-material
وwear:compose-material3
لتحلّ محلّ واجهةrememberRipple
المتوقّفة. تتم أيضًا إضافةCompositionLocal
مؤقتًا،LocalUseFallbackRippleImplementation
، لإعادة مكوّنات Material إلى استخدام واجهات برمجة تطبيقاتrememberRipple/RippleTheme
المتوقّفة نهائيًا. ستتم إزالة هذه الميزة في الإصدار الثابت التالي، لأنّ الغرض منها هو أن يكون وسيلة مساعدة مؤقتة لنقل البيانات في الحالات التي توفِّر فيهاRippleTheme
مخصّص. يمكنك الانتقال إلى developer.android.com للحصول على معلومات حول نقل البيانات والمزيد من المعلومات الأساسية المرتبطة بهذا التغيير. (af92b21) - لقد أجرينا تحديثًا لـ
ColorScheme
ليكون غير قابل للتغيير، ما يجعل التحديثات الفردية للألوان أقل كفاءة، ولكن يجعل الاستخدام الأكثر شيوعًا للألوان أكثر كفاءة. السبب وراء هذا التغيير هو أن معظم التطبيقات لن تقوم بتحديث الألوان الفردية كحالة استخدام رئيسية. لا يزال هذا ممكنًا، لكنه سيعيد إنشاؤه أكثر من ذي قبل، وبدورنا نعمل على تقليل عدد الاشتراكات في الولاية بشكل كبير من خلال جميع الرموز البرمجية لمواد العرض، وسيؤثر ذلك في عملية الإعداد وتكلفة وقت التشغيل للمزيد من حالات الاستخدام العادية. (f5c48b7) - تم تعديل مكونات محتوى Wear وMaterial3 التي تعرض
MutableInteractionSource
في واجهة برمجة التطبيقات لعرض قيمةMutableInteractionSource
فارغة يتم ضبطها تلقائيًا على القيمة "فارغ". ما مِن تغييرات دلالية هنا: يعني ضبط القيمة "فارغ" أنك لا تريد رفعMutableInteractionSource
، وسيتم إنشاؤه داخل المكوِّن إذا لزم الأمر. يؤدي التغيير إلى قيمة "فارغ" إلى السماح لبعض المكونات بعدم تخصيصMutableInteractionSource
مطلقًا، والسماح للمكوّنات الأخرى بإنشاء مثيل بشكل كسول فقط عند الحاجة، ما يحسّن الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدمMutableInteractionSource
الذي تمرّره إلى هذه المكوّنات، نقترح إدخال قيمة فارغة بدلاً من ذلك. يوصى أيضًا بإجراء تغييرات مماثلة في المكونات الخاصة بك. (f8fa920) - تم تحديث
rememberExpandableState
لحفظ الحالة القابلة للتوسيع. ويضمن ذلك تخزين البيانات عند الانتقال إلى شاشة أخرى واستعادتها عند الرجوع إلى الشاشة الأصلية. (5c80095)
إصلاح الأخطاء
- لقد عدّلنا إعدادات
ReduceMotion
لكي يصبح بإمكانك استخدام أداة معالجة الحدث. (7c6b122) - لقد عدّلنا أداة "الاستماع" إلى "
TouchExplorationStateProvider
" لكي يصبح على دراية بمراحل نشاطها (be28b01). - لقد أزلنا طبقة المادة الأساسية في
CompactButton
لتحسين الأداء (25db8e9). - لقد جعلنا
BasicSwipeToDismissBox
أكثر فعالية في حالات إزاحة NaN لتجنُّب الاستثناءات (b983739). - لقد عدّلنا
BasicSwipeToDismissBox
للتأكّد من أنّ قيم ألفا تقع ضمن النطاق 0,1. - أصلحنا خطأً في
ToggleButton
وSplitToggleButton
وCheckbox
وSwitch
وRadioButton
بحيث لا يتم تكرار إشعارات تسهيل الاستخدام (كان يتم تكرار الأدوار الدلالية في السابق) (d11eeb7).
الإصدار 1.3
الإصدار 1.3.1
3 نيسان (أبريل) 2024
تم طرح "androidx.wear.compose:compose-*:1.3.1
". يتضمّن الإصدار 1.3.1 هذه الالتزامات.
إصلاح الأخطاء
- لقد أصلحنا خطأً في ميزة "التمرير السريع"، حيث كان من الممكن التفاعل مع (وإلغاء) إجراء مطلوب بشأن عنصر من خلال البدء بالتمرير السريع على عنصر آخر. (Ide059)
الإصدار 1.3.0
24 كانون الثاني (يناير) 2024
تم طرح "androidx.wear.compose:compose-*:1.3.0
". يتضمّن الإصدار 1.3.0 هذه الالتزامات.
التغييرات المهمة منذ الإصدار 1.2.0
- أصبحت الآن دالة الفئة
SwipeToDismissBoxState
والتعدادSwipeToDismissValue
والإضافةModifier.edgeSwipeToDismiss
جزءًا من حزمةandroidx.wear.compose.foundation
، بدلاً من حزمةandroidx.wear.compose.material
. تتيح لك هذه البنية المحدثة تنفيذ معالجة الإيماءات بشكل مستقل عن اعتبارات التصميم الأخرى. ويتم التعامل مع مهام سير عمل "التصميم المتعدد الأبعاد"، مثل استخدام الألوان من مظهر تم ضبطه، بشكل منفصل. - يمكنك الاستعانة بالصفَّين
SwipeToRevealCard
وSwipeToRevealChip
في تنفيذrecommended swipe-to-reveal guidance
. توضح الفئةSwipeToRevealSample
كيفية استخدام هذه المكوّنات. طرح الإصدار 1.3.0-alpha02 تغييرًا يؤدي إلى زيادة ارتفاع عناصر
Chip
وToggleChip
لإتاحة إمكانية تغيير حجم الخط الذي يختاره المستخدم بشكل أفضل. وقد يؤدي ذلك إلى حدوث اقتصاص. لحلّ هذه المشكلة، يستخدم الآن شكلlarge
فيMaterialTheme
نصف قطر زاوية أكبر (26 وحدة بكسل مستقلة الكثافة بدلاً من 24 بكسل مستقل الكثافة). يستخدم الكائنانChip
وToggleChip
نصف قطر الزاوية الجديد هذا لتجنب اقتصاص المحتوى من زوايا الشريحة وToggleChip
.- لم يتم تغيير معظم
Chips
وToggleChips
، بناءً على ارتفاعهما التلقائي الذي يبلغ 52 وحدة بكسل مستقلة الكثافة. في المقابل، قد يؤدي استخدام كائناتChip
وToggleChip
التي تحتوي على أسطر متعددة من نص تصنيف أساسي أو ثانوي أو تم إلغاء الارتفاع له إلى تعطُّل اختبارات لقطات الشاشة.
- لم يتم تغيير معظم
تغييرات إضافية
للاطّلاع على مجموعة أكثر اكتمالاً من التغييرات التي تم إدخالها في الإصدار 1.3.0، يمكنك الاطّلاع على ملاحظات الإصدار التجريبي 01.
اقتراحات للتنفيذ
- إذا كان تطبيقك يسمح للمستخدمين بتحريك محتوى الشاشة، كما هو الحال في تطبيق مستند إلى الخرائط، يمكنك إيقاف معالجة التمرير السريع من خلال ضبط
userSwipeEnabled
علىfalse
فيSwipeDismissableNavHost
القابل للإنشاء، وتضمين زر يسمح للمستخدمين بالانتقال إلى الشاشة السابقة. - لإيقاف الصور المتحركة لمؤشر الموضع أثناء الحركة مع التلاشي للداخل وتغيير الموضع ضمن قائمة تمرير، استخدِم كائن
SnapSpec
. - أثناء الانتظار إلى أن يحمّل أحد تطبيقات الوسائط المحتوى لتشغيله، يمكنك عرض
Placeholder
فارغة قابلة للإنشاء. - لإنشاء مجموعة من العناصر القابلة للتوسيع عند الطلب، ننصحك باستخدام الفئة التجريبية
ExpandableStateMapping
.
الإصدار 1.3.0-rc01
10 كانون الثاني (يناير) 2024
تم طرح "androidx.wear.compose:compose-*:1.3.0-rc01
". يتضمّن الإصدار 1.3.0-rc01 هذه الالتزامات.
إصلاح الأخطاء
-
لقد عدّلنا الشكل الكبير
MaterialTheme
ليستخدم نصف قطر دائرة الزاوية المستديرة 26 بكسل مستقل الكثافة، وسيتم استخدامه الآن من قِبل الرقاقة وToggleChip
. وهذا التغيير ضروري لإتاحة تعديلات الارتفاع عندما يحتاج المحتوى إلى ارتفاع إضافي لاستيعاب أحجام الخطوط الكبيرة، وبخلاف ذلك، يعمل شكل الاستاد الحالي على مقاطع بعض المحتوى النصي.الشكل 1: نص مثبّت على الزوايا. الشكل 2: لم يتم اقتصاص النص. قد يؤدي هذا التغيير إلى حدوث خلل في اختبارات لقطات الشاشة. (I2e6ae)
الإصدار 1.3.0-beta02
13 كانون الأول (ديسمبر) 2023
تم طرح "androidx.wear.compose:compose-*:1.3.0-beta02
". يتضمّن الإصدار 1.3.0-beta02 هذه الالتزامات.
إصلاح الأخطاء
- لقد استعدنا حركة التمرير السريع المقصودة في
BasicSwipeToDismissBox
. تم تغيير ذلك في إصدار سابق، بحيث حدث جزء التمرير من الانتقال أثناء لمس الإصبع للشاشة. (Id8e76)
الإصدار 1.3.0-beta01
15 تشرين الثاني (نوفمبر) 2023
تم طرح "androidx.wear.compose:compose-*:1.3.0-beta01
". يتضمّن الإصدار 1.3.0-beta01 هذه الالتزامات.
يشير الإصدار 1.3 إلى الإصدار التجريبي 01 من Compose لتطبيق Wear OS إلى أنّ هذا الإصدار من المكتبة مكتمل وأن واجهة برمجة التطبيقات مقفلة (باستثناء الحالات التي تكون فيها ميزة تجريبية). يتضمن إصدار Wear Compose 1.3 الوظائف الجديدة التالية:
- تم نقل بيانات
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
في واجهات برمجة التطبيقات للبطاقات والرقائق في المواد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
. تم إيقاف واجهة برمجة التطبيقات السابقة نهائيًا، وجارٍ إعادة توجيه الطلبات إلى واجهة برمجة التطبيقات الجديدة. لأسباب تتعلّق بالأداء وللحفاظ على اتساق تجربة المستخدم، عند استخدامPositionIndicator
مع قائمة قابلة للتمرير، ننصحك بإيقاف العلامتينshowFadeInAnimation
وshowPositionAnimation
. إذا تم استخدامPositionIndicator
كمؤشر مستقل، مثلاً لتغيير مستوى الصوت، ننصحك بتفعيل جميع الصور المتحركة الثلاث. (I44294) - لقد أوقفنا المواد
SwipeToDismissBoxState
وSwipeToDismissValue
وedgeSwipeToDismiss
نهائيًا بعد نقل وظيفة "التمرير السريع للرفض" إلىwear.compose.foundation
. يُرجى استبداله بالعناصر المكافئة لـwear.compose.foundation
. (Iee8c9)
إصلاح الأخطاء
- لقد عدّلنا الملفات الشخصية الأساسية لمكتبات ارتداء الملابس الأساسية ومكتبتها ذات الصلة بمواد العرض ومكتبات التنقّل. (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
. تم إيقاف واجهة برمجة التطبيقات السابقة نهائيًا، وجارٍ إعادة توجيه الطلبات إلى واجهة برمجة التطبيقات الجديدة. لأسباب تتعلّق بالأداء وللحفاظ على اتساق تجربة المستخدم، عند استخدامPositionIndicator
مع قائمة قابلة للتمرير، ننصحك بإيقاف العلامتينshowFadeInAnimation
وshowPositionAnimation
. إذا تم استخدام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 هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد أضفنا عنصرَين جديدَين قابلَين للإنشاء في Material لتنفيذ
SwipeToReveal
باستخدام البطاقات والشرائح. تتّبع هذه العناصر القابلة للإنشاء إرشادات تجربة المستخدم المقترَحة بشأن المكوّن وتسهّل على المطوّرين تنفيذSwipeToReveal
مع المكوّنات الحالية في Wear Material. (I7ec65) - لقد فعّلنا تعليقات
FloatRange
التوضيحية كقيود لواجهة برمجة التطبيقات كان مذكورًا سابقًا في التعليقات. (Icb401)
إصلاح الأخطاء
- تم نقل منطق التمرير الأولي لـ
ScalingLazyColumn
داخلonGloballyPositioned()
. (Ic90f1) - نستخدم الآن
drawWithCache
فيPositionIndicator
وProgressIndicator
وSelectionControls
لتحسين عمليات تخصيص الحدود. (I5f225، b/288234617) - لقد أصلحنا إمكانية ظهور علامات الاختيار في الحالات غير المفعّلة. (Ib25bf)
- لقد عدّلنا سياسة
Placeholder
للسماح بإعادة الضبط من خلال عرض العنصر النائب إذا لم يعُد المحتوى في حالة جاهزية. (Ibd820) - لقد أجرينا بعض الإصلاحات على اختبارات
Placeholder
غير المستقرة (Idb560)
الإصدار 1.3.0-alpha02
26 تموز (يوليو) 2023
تم طرح "androidx.wear.compose:compose-*:1.3.0-alpha02
". يحتوي الإصدار 1.3.0-alpha02 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد قدّمنا
ExpandableStateMapping
، وهي طريقة جديدة لإنشاءExpandableStates
، للحالات التي يجب فيها إنشاء النماذج عند الطلب، وليس بالضرورة ضمن نطاق@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 والانتقال إلى استخدام الإصدار الجديد
SwipeToDismissBox
من تطبيق Wear Compose Foundation. (I4ff8e)
إصلاح الأخطاء
- لقد أصلحنا خطأ Z-order حيث لم يعرض "
expandedItem
" المحتوى الصحيح بعد النقر على سلوك أحد الأزرار عند توفّر أزرار. (I1899d، b/289991514) - تحسين معالجة التركيز لـ
SwipeToDismissBox
(وبالتاليSwipeDismissableNavHost
) باستخدامHierarchicalFocusCoordinator
(I45362، b/277852486) - لقد أجرينا إصلاحًا على معالجة الإيماءات في
SwipeableV2
. (I89737) - لقد أنهينا الملفات الشخصية الأساسية للإصدار 1.2. (Id5740)
- بعد نقل
SwipeToDismissBox
إلى Foundation، أصبحت آلية تنفيذ MaterialSwipeToDismissBox
تعيد التوجيه الآن إلى Foundation 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)
![تم اقتصاص النص بحجم خط كبير.](https://developer.android.google.cn/static/jetpack/androidx/images/IncludeFontPadding-True.png?authuser=5&hl=ar)
- لا تتوفّر هذه القيمة عند إيقاف المساحة المتروكة للخط:
![لم يتم اقتصاص النص بحجم خط كبير.](https://developer.android.google.cn/static/jetpack/androidx/images/IncludeFontPadding-False.png?authuser=5&hl=ar)
- لقد عدّلنا
wear.compose.foundation
لتصبح واجهة برمجة تطبيقات تابعة لواجهة برمجة تطبيقاتwear.compose.material
(I72004، b/285404743). - لقد أصلحنا خطأً في "
SwipeToDismissBox
". يتم الآن تمرير الخلفية ومفاتيح المحتوى إلى قسم "التذكر" بحيث يتم إنشاء معدِّلات جديدة عند تغيير المحتوى أو الخلفية. (Ib876c، b/280392104) - لقد عدّلنا
TimeText
لاستخدام اللغة عند اختيار تنسيق الوقت 12 أو 24 ساعة. (If4a3d) - تم إصلاح التناقض في المعلَمات التلقائية
contentScrimColor
SwipeToDismissBox
. (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 ضِمن الإصدار 1.2.0 من نظام التشغيل Wear OS (مزيد من المعلومات)
- للاطّلاع على قائمة بالتغييرات الأساسية في الإصدار 1.2 من Wear OS، يمكنك الاطّلاع على ملاحظات الإصدار (Compose for Wear OS 1.2 الإصدار التجريبي 01).
الإصدار 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 هذه الالتزامات.
الميزات الجديدة
- تمت إضافة المتغيّر
CompositionLocal
التجريبيLocalReduceMotion
الجديد الذي يوقِف الضبط والتلاشي على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 على هذه الالتزامات.
ميزات ComposeAllowed على الإصدار 1.2 من نظام التشغيل Wear OS
يشير الإصدار 1.2 إلى الإصدار التجريبي 01 من Compose لتطبيق Wear OS إلى أنّ هذا الإصدار من المكتبة مكتمل وأنّ واجهة برمجة التطبيقات مقفلة (باستثناء الحالات التي تم وضع علامة عليها على أنّها تجريبية). يتضمن إصدار Wear Compose 1.2 الوظائف الجديدة التالية:
expandableItem
وexpandableItems
هما مكوّنان جديدان منFoundation
يتيحان توسيع العناصر ضمنScalingLazyColumn
. استخدِمexpandableItem
لعنصر واحد قابل للتوسيع، مثل النص الذي يظهر فيه عدد الأسطر. استخدِمexpandableItems
لمجموعة من العناصر القابلة للتوسيع وexpandableButton
لتبسيط إنشاء زر يمكن تصغيره بعد توسيع المحتوى.HierarchicalFocusCoordinator
- تتيح هذه اللعبة التجريبية القابلة للإنشاء إمكانية وضع علامات على الأشجار الفرعية في المقطوعة الموسيقية على أنّها مفعّلة أو تم إيقاف التركيز.Picker
: تتضمّن واجهة برمجة التطبيقات الآنuserScrollEnabled
للتحكّم في ما إذا كانت أداة الاختيار نشطة للتمرير السريع لدى المستخدم.PickerGroup
: ميزة جديدة قابلة للإنشاء للتعامل مع أدوات اختيار متعددة معًا تتعامل هذه الأداة مع التركيز بين أدوات الاختيار باستخدام واجهة برمجة التطبيقاتHierarchicalFocusCoordinator
وتتيح التوسيط التلقائي لعناصر المنتقي.Placeholder
: أجرينا تعديلات على الصور المتحركة التي لامعة و"مسح ضوئي". يتم الآن تطبيق تأثير الحذف سريعًا عندما يكون المحتوى جاهزًا.ScalingLazyColumn
- تم نقل بياناتScalingLazyColumn
والفئات المرتبطة بها منandroidx.wear.compose.material.ScalingLazyColumn
إلىandroidx.wear.compose.foundation.lazy.ScalingLazyColumn
. يُرجى التحديث لاستخدام إصدار "Foundation.Lazy
".SwipeToReveal
- أتحنا ميزة "التمرير السريع" كوسيلة للوصول إلى الإجراءات الثانوية، وهذا تكميليًا لنمط "الضغط مع الاستمرار" الحالي.Stepper
- يتضمن الآن حملاً زائدًا مع معلَمةenableRangeSemantics
إضافية لتسهيل إيقاف دلالات النطاق التلقائي.Previews
- أضفنا التعليقات التوضيحية المخصّصة التالية لمعاينة العناصر القابلة للإنشاء على شاشات Wear: يعاينWearPreviewSmallRound
العنصر القابل للإنشاء على جهاز صغير مستدير، وWearPreviewLargeRound
يعاين العنصر القابل للإنشاء على جهاز مستدير كبير، وWearPreviewSquare
يعاين العنصر القابل للإنشاء على جهاز مربّع. في ما يلي أيضًا التعليقات التوضيحية التالية والمعاينة المتعددة: يعرضWearPreviewFontScales
العناصر القابلة للإنشاء على جهاز قابل للارتداء بأحجام خطوط متعددة، بينما يعاينWearPreviewDevices
العناصر القابلة للإنشاء على أجهزة Wear المختلفة.- لقد أضفنا السمة
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 الأساسي. سيعالج هذا الإجراء بعض حالات اقتصاص النص بأحجام خطوط كبيرة وقد يؤثر أيضًا في تصاميم الشاشة، لذلك يجب تعديل اختبارات لقطات الشاشة. على سبيل المثال، مع أحجام الخطوط الكبيرة، يظهر اقتصاص النص هنا:
![تم اقتصاص النص بحجم خط كبير.](https://developer.android.google.cn/static/jetpack/androidx/images/IncludeFontPadding-True.png?authuser=5&hl=ar)
- لا تتوفّر هذه القيمة عند إيقاف المساحة المتروكة للخط:
![لم يتم اقتصاص النص بحجم خط كبير.](https://developer.android.google.cn/static/jetpack/androidx/images/IncludeFontPadding-False.png?authuser=5&hl=ar)
يمكن استخدام الإعداد الجديد الآن من خلال إلغاء أسلوب الخط في المظهر - يُرجى الاطّلاع على مثال للرمز البرمجي.
الإصدار 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 في الإصدارات التجريبية من "أداة الاختيار". (If8c19) - لقد أدخلنا تحسينات على انتقالات مربّعات الحوار، فأصبحت عملية الانتقال في المقدمة أكثر سلاسة لملاءمة الانتقال إلى النهاية. (Ib5af9)
- لقد أضفنا السمة
DefaultTextStyle
إلى ميزة Wear Compose التي ضبطت السمةPlatformTextStyle.includeFontPadding
تلقائيًا على "صحيح" (هذا هو الإعداد الحالي). سيتيح لنا ذلك مزامنة إيقاف مساحة متروكة الخطوط تلقائيًا مع مكتبات ComposeAllowed في المستقبل، ويمكنك الاطّلاع على (إصلاح مساحة متروكة الخط في 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: يعرض "
WearPreviewSmallRound
" المحتوى القابل للإنشاء على جهاز صغير مستدير، وWearPreviewLargeRound
يعاين العنصر القابل للإنشاء على جهاز مستدير كبير، وWearPreviewSquare
يعاين العنصر القابل للإنشاء على جهاز مربّع. في ما يلي أيضًا التعليقات التوضيحية التالية والمعاينة المتعددة: يعرضWearPreviewFontScales
العناصر القابلة للإنشاء على جهاز قابل للارتداء بأحجام خطوط متعددة، بينما يعاينWearPreviewDevices
العناصر القابلة للإنشاء على أجهزة Wear المختلفة. لاستخدام هذه المعاينات، يجب استخدام أحدث إصدار من "استوديو Android" (Giraffe Canary 6) أو إصدار أحدث. تجدر الإشارة إلى أنّه إذا كانت هذه التعليقات التوضيحية لا تناسب هدفك، سيظلّ من الممكن استخدام "المعاينة" وتتيح إجراء المزيد من عمليات التخصيص عبر المَعلمات. (I397ff) - لقد وضعنا علامة "
HierarchicalFocusCoordinator
" على أنّه تجريبي بينما يُعد مؤهلاً لنقله إلى مكتبات الإنشاء الأساسية، نظرًا إلى قابلية تطبيقه على نطاق واسع. (I3a768)
إصلاح الأخطاء
- تم إصلاح خطأ على
HierarchicalFocusCoordinator
، عندما تم تغيير دالة lambda التي تم تمريرها للمعلَمةfocusEnabled
، نستخدم الآن الخطأ الجديد بشكلٍ صحيح. (Icb353) - لقد عدّلنا لون المحتوى التلقائي الذي تم إيقافه إلى "الخلفية" عند استخدام الألوان الأساسية كخلفية في
Button
وCompactButton
وChip
وCompactChip
وToggleButton
. يعمل هذا على تحسين التباين في سهولة الوصول. (I527cc)
الإصدار 1.2.0-alpha05
22 شباط (فبراير) 2023
تم طرح "androidx.wear.compose:compose-*:1.2.0-alpha05
". يحتوي الإصدار 1.2.0-alpha05 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- تم تعديل واجهة برمجة التطبيقات
PickerGroup
للسماح بنشر قيود الحد الأدنى على العنصر القابل للإنشاء بشكل اختياري. عند ضبط السياسة على "صحيح"، سيتم السماح بالحدّ الأدنى من القيود المفروضة من العنصر الرئيسي القابل للإنشاء علىPickerGroup
. وفي حال ضبط السياسة على "خطأ"، سيُعيدPickerGroup
ضبط الحدّ الأدنى للقيود. (I3e046) - لقد أضفنا واجهة برمجة التطبيقات
animateScrollToOption
إلى Picker API لإتاحة الرسوم المتحركة الآلية في خيار Picker (أداة الاختيار) المحدد (I6fe67).
إصلاح الأخطاء
- تم تحديث
HorizontalPageIndicator
للتوافق مع التنسيقات من اليمين إلى اليسار. (Ia4359) - تمت إضافة اختبارات لقطات الشاشة للتنسيق من اليمين إلى اليسار في
HorizontalPageIndicator
(I6fbb8) - تمت إضافة المزيد من الاختبارات إلى
SwipeDismissableNavHostTest
التي تستخدمTestNavHostController
(I61d54).
الإصدار 1.2.0-alpha04
8 شباط (فبراير) 2023
تم طرح "androidx.wear.compose:compose-*:1.2.0-alpha04
". يحتوي الإصدار 1.2.0-alpha04 على هذه الالتزامات.
الميزات الجديدة
PickerGroup
للتعامل مع أدوات اختيار متعددة معًا باستخدام واجهة برمجة التطبيقات للتركيز تتعامل هذه الأداة مع التركيز بين أدوات الاختيار المختلفة، وتفعِّل التوسيط التلقائي للمنتقيات استنادًا إلى المَعلمات، كما تسمح للمطوّرين بتغيير التركيز بين أدوات الاختيار المختلفة أثناء معالجة الأحداث من المجموعة. في وضع 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
، وسيكون طبيعيًا أكثر لأنّه ليس مكوّنًا من مكوّنات مادّية رأي. يتم إجراء هذا التغيير الآن استعدادًا لإنشاء مكتبة Material3 جديدة والتي سنعمل على تطويرها بالتوازي مع مكتبة Material الحالية. (I060e7)
تشكّل التغييرات التالية جزءًا من عملية نقل ScalingLazyColumn
من Material إلى Foundation.Lazy
:
- تم إيقاف واجهات برمجة التطبيقات
PositionIndicator
التي تستهدف المادةScalingLazyColumn
نهائيًا - يُرجى التحديث إلىFoundation.Lazy ScalingLazyColumn
. بالإضافة إلى ذلك، تمت إضافة حقلanchorType
إلىScalingLazyListLayoutInfo
. (I29d95) - تم وضع علامة على واجهة برمجة التطبيقات
ScalingLazyColumn
تشير إلى أنّها متوقفة نهائيًا في حزمة Wear Compose Material (I16d34). - لقد عدّلنا أداة التعديل في "
ScrollAway
" لاستخدامScalingLazyListState
من نظام التشغيل Wear ComposeFoundation.Lazy
، وأوقفنا نهائيًا الحِمل الزائد الذي استغرقتهScalingLazyListState
من تطبيق Wear Compose Material. (Ifc42c) - لقد حدّثنا واجهات برمجة تطبيقات Dialog API لاستخدام
ScalingLazyListState
منFoundation.Lazy
وإيقاف التحميلات الزائدة التي تستخدم MaterialScalingLazyListState
(Ic8960) - لقد حدّثنا واجهات برمجة تطبيقات Picker API لاستخدام
ScalingParams
منFoundation.Lazy
وأوقفنا نهائيًا عمليات التحميل الزائدة التي تستخدم MaterialScalingParams
. (Idc3d8)
إصلاح الأخطاء
- لقد أصلحنا خطأً أدّى إلى عمليات إعادة تركيب غير ضرورية في
ScalingLazyListState.centerItemIndex
من خلال التأكد من أنّ السياسة لا تدفع التعديلات إلا عندما تتغير القيمة فعليًا (Ia9f38). - لقد أجرينا تحسينات على أداء
SwipeToDismissBox
(I3933b). - تمت إضافة اختبارات معيارية لتطبيق
ScalingLazyColumn
في Wear Compose Foundation (Ie00f9). - لقد عدّلنا بعض طُرق فئات
ScalingLazyColumn
الداخلية في Material لاستخدام مكافئاتها منFoundation.Lazy
(I38aab). - لقد أصلحنا بعض المشاكل في اختبارات "المنتقي" وأضفنا المزيد من الاختبارات للتحقّق من التمرير باستخدام الإزاحة (I6ac34).
- لقد نقلنا العروض التوضيحية للدمج
ScalingLazyColumn
للاعتماد علىFoundation.Lazy
بدلاً من MaterialScalingLazyColumn
(Ic6caa) - لقد أضفنا معلَمات
fromDate/toDate
اختيارية إلى العرض التوضيحي لـDatePicker
(I961cd).
الإصدار 1.2.0-alpha02
11 كانون الثاني (يناير) 2023
تم طرح "androidx.wear.compose:compose-*:1.2.0-alpha02
". يحتوي الإصدار 1.2.0-alpha02 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- تُجري اختبارات واجهة المستخدم في Android Compose الآن اختبارات التنسيق لكل إطار عند تنفيذ الإطارات للوصول إلى وضع عدم النشاط (مثلاً من خلال
waitForIdle
). قد يؤثر ذلك في الاختبارات التي يتم تأكيدها في الإطارات الفردية للصور المتحركة للتنسيق. (I8ea08، b/222093277) - تمت إضافة المَعلمة
minLines
إلى نظام Wear Text للحصول على سلوك متّسق معBasicText
(I24874). - لقد تمّت إتاحة "
CompactChipTapTargetPadding
" للجميع لكي يظهر في المستندات (If1e70، b/234119038).
إصلاح الأخطاء
- إيقاف إصدارات أنظمة أساسية متعددة لحزم
wear.compose
(Iad3d7) - إصلاح مستندات kdocs في
scrollToOption
(I6f9a0) - تم تعديل السمة
PlaceholderState.rememberPlaceholderState()
لاستخدامrememberUpdatedState
مع تعديل الحالة في حال استخدامonContentReady
lambda. (I02635، b/260343754) - لقد أصلحنا مشكلة عدم استقرار النص التي ظهرت في المكوِّن
Picker
من خلال الاستفادة من استراتيجية الإنشاء الجديدة التي تمت إضافتها إلىModifier.graphicsLayer
. (I99302) - لقد أصلحنا خطأً تسبّب في ظهور وميض في الإصدار التجريبي من "
DatePicker
" (I660bd). - لقد أدخلنا تحسينات على تسهيل الاستخدام في العروض التوضيحية لأداة اختيار الوقت والتاريخ لمدة 12 ساعة (I05e12)
- لقد عدَّلنا العروض التوضيحية لأداة اختيار الوقت والتاريخ بحيث لا تتأثر أدوات الاختيار بالتغييرات في خيار الإعلانات المتجاوبة على شبكة البحث عند إلغاء اختيارها (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
- الإصدار الثابت من Compose لأجهزة Wear OS 1.1.0 (مزيد من المعلومات)
- للحصول على قائمة بالتغييرات الأساسية في إصدار Wear Compose 1.1، يمكنك الاطّلاع على ملاحظات الإصدار (Compose for Wear OS 1.1 الإصدار التجريبي 01).
الميزات الجديدة
- لقد حدَّثنا الوظيفة "العنصر النائب" التجريبية ليتم تطبيق تأثير "مسح البيانات" فورًا عندما يكون المحتوى جاهزًا بدلاً من انتظار بدء حلقة الصور المتحركة التالية. لقد أجرينا أيضًا بعض التعديلات على البريق ومحو الصور المتحركة. (I5a7f4)
إصلاح الأخطاء
- لقد غيَّرنا عرض الحد التلقائي لـ
OutlinedButton/OutlinedCompactButton
من 2.dp إلى 1.dp ليطابق مواصفات تجربة المستخدم النهائية. (Icf84d) - لتقليل تأثير العنصر الأول الذي تمت إضافته إلى عنصر
ScalingLazyColumn
فارغ يظهر عند الانتقال إلى مكانه، أضفناautoCentering topPadding
تقريبًا عندما يكون المحتوى فارغًا. يحتسب هذا التغيير مقدار المساحة المتروكة العلوية المطلوبة بافتراض أنّ قيمة العنصر الأولي بارتفاع 0.dp. بالنسبة إلىScalingLazyListAnchorType.ItemStart
، سيتم احتساب المساحة المتروكة العلوية الصحيحة بالنسبة إلىScalingLazyListAnchorType.ItemCenter
، وستكون هذه العملية الحسابية غير صحيحة لأن ارتفاع العناصر مطلوب لضبط حجم المحتوى بشكل صحيح، ما يؤدي إلى تأثير تمرير صغير في مكانه بناءً على الارتفاع الحقيقي للعناصر.(I239a4) - لقد حدّثنا إطار عمل الخلفية الذي تم تطبيقه على الصورة المتحركة
SwipeToDismiss
لتتوافق مع نظام Wear الأساسي.(I9003e) - لقد أصلحنا معالجة
PositionIndicator
لكل منLazyListState
وScalingLazyListState
لعناصر القائمة ذات الحجم 0 لتجنُّب القسمة على صفر.(Ic28dd)
الإصدار 1.1.0-rc01
9 تشرين الثاني (نوفمبر) 2022
تم طرح androidx.wear.compose:compose-foundation:1.1.0-rc01
وandroidx.wear.compose:compose-material:1.1.0-rc01
وandroidx.wear.compose:compose-navigation:1.1.0-rc01
. يحتوي الإصدار 1.1.0-rc01 على هذه الالتزامات.
إصلاح الأخطاء
- لقد أضفنا قواعد الملفات الشخصية الأساسية لكل من
Placeholders
وScrollAway
وRadioButton
وSwitch
وCheckbox
وOutlinedButton
وOutlinedCompactButton
وOutlinedChip
وOutlinedCompactChip
. (I8249c) - لقد أصلحنا خطأً في
Modifier.scrollAway
بحيث إذا كانت قيمةitemIndex
المحدّدة غير صالحة (على سبيل المثال، إذا كان فهرس العناصر هذا خارج النطاق)، سيستمر عرضTimeText
الآن. (I2137a) - لقد عدّلنا الصورة المتحركة في
SwipeToDismissBox
لتتوافق مع طريقة تنفيذ النظام الأساسي. بعد تشغيل صورة متحركة للضغط، تنزلق الشاشة الآن إلى اليمين بعد تشغيل الرفض. (I41d34) - في إطار التحسين، عدّلنا السمة
Modifier.scrollAway
لقراءةscrollState
فقط داخل مجموعة القياس لتجنّب إعادة تركيب مفتاح التعديل بعد كل عملية إعادة قياس. (I4c6f1) - لقد أضفنا مستندات ونموذجًا إلى العناصر النائبة لإظهار الترتيب الصحيح للسمة
Modifier.placeholder
وModifier.placeholderShimmer
عند تطبيقه على العنصر القابل للإنشاء نفسه. (Ie96f4، b/256583229) - لقد غيَّرنا عرض الحد التلقائي لـ
OutlinedCompactChip/OutlinedChip
من 2.dp إلى 1.dp ليطابق مواصفات تجربة المستخدم النهائية. (Ib3d8e) - أصلحنا خطأً في
rememberPickerState
لم يكن يتم فيه حفظ الإدخالات المُعدَّلة، وبالتالي لم يتم تعديل العناصر القابلة للإنشاء بعد إجراء تغييرات على الإدخالات. (I49ff6، b/255323197) - لقد أجرينا بعض التعديلات على واجهة المستخدم على العناصر النائبة، 1) تغيير التدرج اللامع إلى 1.5 ضعف حجم الشاشة، 2) إضافة تخفيف (البيزي المكعب) للتقدم اللامع و3) تسريع الصور المتحركة لإزالة اللمعان (250 ملي ثانية). (Id29c1)
- لقد صححنا خطأ في واجهة المستخدم في تأثير "مسح العناصر النائبة" حيث كان يتم محو خلفيات الشرائح والبطاقة في وقت مبكر قليلاً بسبب عدم أخذ موضع العنصر على الشاشة في الاعتبار. (I2c7cb)
- لقد عدَّلنا رسم خلفية العنصر النائب لدمج الألوان بدلاً من وضع طبقات عليها حيثما أمكن ذلك لتقليل مخاطر مزج ألفا للطبقات التي تم اقتصاصها المختلفة من السماح بمرور الألوان الأساسية في حواف خلفية العنصر النائب. (I2ea26)
- لقد صحّحنا طريقة احتساب
ScalingLazyListState.centerItemIndex/centerItemOffset
بحيث إذا كان العنصران يقعان على جانبَي خط مركز إطار العرض، سيتم اعتبار أنّ العنصر الأقرب هوcenterItem
. (I30709، b/254257769) - لقد صحّحنا خطأً في
ScalingLazyListState.layoutInfo.visibleItemsInfo
، وكان يُبلغ عن إزاحة غير صحيحة أثناء إعدادScalingLazyColumn
. سيتم الآن عرض قائمة فارغة إلى أن تظهر جميع عناصر القائمة وتحصل على الإزاحة الصحيحة. تحقَّق من وجودScalingLazyListState.layoutInfo.visibleItemsInfo.isNotEmpty()
للتأكّد من اكتمال إعدادScalingLazyColumn
وظهور العناصر. (I3a3b8)
الإصدار 1.1.0-beta01
24 تشرين الأول (أكتوبر) 2022
تم طرح androidx.wear.compose:compose-foundation:1.1.0-beta01
وandroidx.wear.compose:compose-material:1.1.0-beta01
وandroidx.wear.compose:compose-navigation:1.1.0-beta01
. يتضمّن الإصدار 1.1.0-beta01 هذه الالتزامات.
ميزات Compose ضِمن الإصدار 1.1 من نظام التشغيل Wear OS
أشار الإصدار 1.1.0 إلى الإصدار التجريبي 01 من Compose ضِمن نظام التشغيل 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% إلى السطح الأساسي بنسبة 0%. 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
لإضافة إعداد صريح لمَعلمات AutoCentering فيScalingLazyColumn
الداخلية لأداة الاختيار لضمان إمكانية تمرير خيار "صفر" إلى منتصف العرض. (I8a4d7)
الإصدار 1.1.0-alpha07
5 تشرين الأول (أكتوبر) 2022
تم طرح androidx.wear.compose:compose-foundation:1.1.0-alpha07
وandroidx.wear.compose:compose-material:1.1.0-alpha07
وandroidx.wear.compose:compose-navigation:1.1.0-alpha07
. يحتوي الإصدار 1.1.0-alpha07 على هذه الالتزامات.
الميزات الجديدة
- لقد أضفنا إمكانية استخدام العناصر النائبة التجريبية. يحتوي هذا على ثلاثة تأثيرات بصرية مميزة تم تصميمها للعمل معًا. أولاً، يتم استخدام تأثير فرشاة الخلفية للعنصر النائب في حاويات مثل الشريحة والبطاقات للرسم فوق الخلفية العادية أثناء انتظار تحميل المحتوى. ثانيًا، أداة تعديل (
Modifier.placeholder()
) لرسم تطبيق مصغّر لعنصر نائب على شكل استاد فوق المحتوى الذي يتم تحميله. ثالثًا، تأثير تدرج/لمعان تعديل (Modifier.placeholderShimmer()
) يتم رسمه فوق التأثيرات الأخرى للإشارة إلى المستخدمين بأنّنا في انتظار تحميل البيانات. جميع هذه التأثيرات مصمّمة ليتمّ التنسيق والتألق ومحوها بطريقة منسَّقة. (I3c339)
تغييرات واجهة برمجة التطبيقات
- تمت إضافة الدعم لـ
fontWeight
وfontFamily
وfontStyle
وfontSynthesis
فيCurvedTextStyle
، ويمكن استخدامه علىcurvedText
وbasicCurvedText
. يمكن استخدام هذه المَعلمة لتحديد الخط والنمط المراد استخدامهما في النص المنحني.(Iaa1a8),(I72759) - تم تعديل معلَمة الإزاحة
Modifier.scrollAway
إلى Dp لتحقيق التوافق معModifier.offset
(كانت في السابق بالبكسل). كما تمت إعادة بنائها باعتبارها "LayoutModifier
" لتحسين الكفاءة. (I9f94b) - كجزء من واجهة برمجة التطبيقات الجديدة للتحكّم والإيقاف، أعدنا تسمية "
RadioButton’s circleColor
" إلى "ringColor
". (I28fa9) - لقد أضفنا عناصر تحكُّم
Checkbox
وSwitch
وRadioButton
المتحركة للاستخدام معToggleChip
وSplitToggleChip
. ويمكن استخدامها بدلاً من الرموز الثابتة المقدَّمة منToggleChipDefaults
(switchIcon
وcheckboxIcon
وradioIcon
). (I8a8c4)
الإصدار 1.1.0-alpha06
21 أيلول (سبتمبر) 2022
تم طرح androidx.wear.compose:compose-foundation:1.1.0-alpha06
وandroidx.wear.compose:compose-material:1.1.0-alpha06
وandroidx.wear.compose:compose-navigation:1.1.0-alpha06
. يحتوي الإصدار 1.1.0-alpha06 على هذه الالتزامات.
الميزات الجديدة
- لقد أضفنا
Modifier.scrollAway
، التي تعمل على تمرير عنصر عموديًا داخل/خارج العرض، بناءً على حالة التمرير (مع وجود أحمال زائدة للعمل معColumn
وLazyColumn
وScalingLazyColumn
). يتم استخدامScrollAway
عادةً لتمريرTimeText
خارج إطار العرض عندما يبدأ المستخدم في تمرير قائمة من العناصر لأعلى. (I61766)
إصلاح الأخطاء
- تم تحديد موضع جهاز
PositionIndicator
وتغيير حجمه بحيث لا يشغل سوى المساحة المطلوبة. وهذه الميزة مفيدة، على سبيل المثال، إذا تمت إضافة معلومات دلالية إليها، أصبحت TalkBack الآن الحدود الصحيحة للسمةPositionIndicator
على الشاشة. (Ie6106، b/244409133)
الإصدار 1.1.0-alpha05
7 أيلول (سبتمبر) 2022
تم طرح androidx.wear.compose:compose-foundation:1.1.0-alpha05
وandroidx.wear.compose:compose-material:1.1.0-alpha05
وandroidx.wear.compose:compose-navigation:1.1.0-alpha05
. يحتوي الإصدار 1.1.0-alpha05 على هذه الالتزامات.
إصلاح الأخطاء
- تمت إضافة أدوار الأزرار إلى "
InlineSlider
" و"Stepper
" ليتمكّن تطبيق Talkback من التعرّف علىهما كأزرار. (Icb46c وb/244260275) - لقد صححنا الترتيب z للموضع ومؤشرات الصفحة في السقالة. سيتم وضع المؤشرات الآن أعلى المقالة الكاملة وبالتالي لن يتم حجبها بواسطة المقالة القصيرة إذا كانت موجودة. (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 بهدف تحسين إمكانية الوصول إلى المحتوى، لأنّ الألوان الأصلية لم تتضمّن تباينًا كافيًا، ما يمنع المستخدمين من التفريق بين خلفيات الشرائح/البطاقات/الأزرار عن لون خلفية المظهر. الألوان المعدَّلة هي السطح (0xFF202124->0xFF303133)، وonPrimary(0xFF202124->0xFF303133)، وonsecondary(0xFF202124->0xFF303133)، وPrimaryVariant(0xFF669DF6->0xFF669DF6->0xFF669DF6->0xFF0FF2F8) وonPrimary(0xFF202124->0xFF303133)، وonsecondary(0xFF202124->0xFF303133)، وPrimaryVariant(0xFF669DF6->0xFF669DF6->0xFF669DF6->0xFF0FF4F8) وonPrimary(0xFF202124->0xFF303133). قد تؤثر التغييرات في الألوان على الرغم من أنها طفيفة نسبيًا على اختبارات لقطات الشاشة الحالية. (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 على هذه الالتزامات.
الميزات الجديدة
- لقد بدّلنا تبعيات Compose ضِمن نظام التشغيل 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) - لقد أدخلنا تحسينات على تسهيل الاستخدام على أداة "المنتقي" حتى يمكن التنقّل على الشاشات المتعددة المنتقيات باستخدام برامج قراءة الشاشة وإمكانية الوصول إلى وصف المحتوى (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 OS، يمكنك الاطّلاع على ملاحظات الإصدار (Compose for Wear OS الإصدار التجريبي 01).
إصلاح الأخطاء
- وقد حرّكنا إمكانية رؤية إعلان الشاشة الكاملة عند إظهار/إخفاء مربع الحوار، لتكون متوافقة مع الرسوم المتحركة الحالية للتحجيم. (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% إلى تدرج أساسي بنسبة 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 هذه الالتزامات.
ميزات ComposeAllowed على الإصدار 1.0 من نظام التشغيل Wear OS
تمثّل 1.0.0-beta01
ميزة ComposeAllowed على نظام التشغيل Wear OS إنجازًا مهمًّا، لأنّ المكتبة مكتملة العدد وواجهة برمجة التطبيقات مقفلة.
تشمل مكونات Wear Compose Material في إصدار 1.0 ما يلي:
- يوفر مظهر Material Design كبديل عن Compose for Mobile
MaterialTheme
الألوان والأشكال وأسلوب الخط لتصميم المكوّنات على الأجهزة القابلة للارتداء التي تطبّق إرشادات تجربة المستخدم في نظام Wear Material Design بشكل غير تقليدي. Button
وCompactButton
وToggleButton
- يوفر هذا الزر فتحة واحدة لالتقاط رمز أو صورة أو نص قصير (3 أحرف كحد أقصى). دائرية الشكل مع المقاسات المقترحة للأزرار الافتراضية أو الكبيرة أو الصغيرة. يوفرCompactButton
فتحة واحدة لأخذ أي محتوى (رمز أو صورة أو نص) وهو دائري في الشكل مع حجم الخلفية صغير جدًا. يتضمّن "CompactButton
" مساحة متروكة شفافة اختيارية حول الخلفية تزيد من المساحة القابلة للنقر.ToggleButton
هو زر يوفر فتحة واحدة لاستيعاب أي محتوى (نص قصير أو رمز أو صورة) ويحتوي على حالات تشغيل/إيقاف (محددة/غير محددة) بألوان ورموز مختلفة لإظهار ما إذا كان تم وضع علامة عليه أم لا- البطاقات - تُستخدم لعرض معلومات عن التطبيقات مثل الإشعارات. تصميم مرن لحالات الاستخدام المختلفة حيث يقدّم
AppCard
وTitleCard
تنسيقات مختلفة ويتيح استخدام الصور باعتبارها محتوى للبطاقة أو خلفيات - الرقائق هي مكونات على شكل استاد تشبه الأزرار، ولكن بمساحة أكبر وفتحات متعددة للسماح بالتصنيفات والتسميات الثانوية والأيقونات. بأحجام مختلفة مع إتاحة استخدام الصور كخلفيات
- ToggleChips و"تقسيم الشرائح": شريحة ذات حالة محدّدة أو غير محدَّدة، مع إضافة فتحة
ToggleControl
لعرض رمز، مثل مفتاح تبديل أو زر اختيار، لعرض الحالة التي تم وضع علامة فيها على المكوِّن. بالإضافة إلى ذلك، يتضمّن "SplitToggleChip
" منطقتَين يمكن النقر عليهما، إحداهما قابلة للنقر والأخرى قابلة للتبديل. - مؤشر Circular Progressator: مؤشّر مستوى التقدّم لمواد ارتداء المنتج مع شكلَين مختلفَين يعبر الأول عن نسبة الإنجاز في مهمة جارية ويدعم فجوة في المسار الدائري بين زوايا البداية والنهاية. بينما يشير الثانية إلى تقدم غير محدد لوقت انتظار غير محدد.
- المنحنيات النصية: تشكّل جزءًا من DSL لوصف
CurvedLayouts
، إلى جانبcurvedRow
وcurvedColumn
، لوضع المكوّنات حول الأجهزة الدائرية. يمكنك الاطّلاع على نظام Wear Component Foundation أدناه للحصول على مزيد من التفاصيل عنCurvedLayout
وCurvedModifier
(يلعب هذا دور مشابه لـ "المعدِّلات" في العالم غير المنحني ويتيح ضبط جوانب مختلفة للتخطيط والمساحة المتروكة والتدرجات وما إلى ذلك). - مربّع الحوار والتنبيه والتأكيد - يعرِض هذا الخيار مربّع حوار بملء الشاشة، مع وضع طبقات فوق أي محتوى آخر، كما يتيح التمرير سريعًا للإغلاق. تتطلّب هذه الميزة فتحة واحدة يُتوقّع أن تعبّر عن رأيها في محتوى مربّع حوار Wear Material، مثل "تنبيه" أو "تأكيد". التنبيه هو محتوى مربّعات حوار يستند إلى رأي معيّن، مع خانات للرمز والعنوان والرسالة. إنّها تتضمّن عبئًا زائدًا إما لزرَّين سالبَين وإيجابيَين يظهران جنبًا إلى جنب أو فتحة لشريحة واحدة أو أكثر من الشرائح المكدسة عموديًا. التأكيد هو محتوى مربّع حوار يتضمّن آراءً ويعرِض رسائل لمدة معيّنة. يحتوي على فتحة لرمز أو صورة (يمكن أن تكون متحركة).
- مؤشر أفقي للصفحة: يعرض موضع الصفحة الأفقي بطريقة تناسب شكل الجهاز القابل للارتداء. مصممة للعرض بملء الشاشة وإظهار مؤشر منحنٍ على الأجهزة المستديرة. يمكن استخدامها مع عارض صفحة Accompanist
- رمز: تطبيق على Wear الذي يستخدم اللون وألفا من مظهر Wear Material. للحصول على أيقونة قابلة للنقر، راجع "الزر" أو "الشريحة".
- المنتقي - يعرض قائمة قابلة للتمرير بالعناصر التي يمكنك الاختيار منها. سيتم تلقائيًا تكرار العناصر "إلى ما لا نهاية" في كلا الاتجاهَين. يمكن عرضه في وضع القراءة فقط لإخفاء الخيارات التي لم يتم اختيارها.
- مؤشر الموضع: يعرض موضع التمرير أو أي مؤشر موضعي آخر بطريقة تناسب شكل الجهاز القابل للارتداء. مصممة للعرض بملء الشاشة وتُظهر مؤشرًا منحنٍ على الأجهزة المستديرة.
- سقالة - يتم تنفيذ هيكل التخطيط المرئي الأساسي لـ Wear Material Design. يوفّر هذا المكوِّن واجهة برمجة تطبيقات لتجميع العديد من مكوّنات Wear Material (مثل "
TimeText
" و"PositionIndicator
" و"Vignette
") التي تؤدي إلى إنشاء الشاشة، ما يضمن استخدام استراتيجية تصميم مناسبة لها وجمع البيانات اللازمة حتى تعمل هذه المكوّنات معًا بشكل صحيح. - ScalingLazyColumn - مكون التمرير/قائمة عين السمكة الذي يشكل جزءًا أساسيًا من لغة Wear Material Design. يوفر تأثيرات التوسيع والشفافية لعناصر المحتوى. تم تصميم
ScalingLazyColumn
بشكل يتيح التعامل مع أعداد كبيرة من عناصر المحتوى، والتي يتم إنشاؤها عند الحاجة فقط. - شريط تمرير - يسمح للمستخدمين بالاختيار من بين مجموعة من القيم. يتم عرض نطاق الاختيارات كشريط، ويمكن عرضه اختياريًا باستخدام فواصل.
- الخطوة - مكون في وضع ملء الشاشة يسمح للمستخدمين بالاختيار من بين مجموعة من القيم، باستخدام أزرار الزيادة/الخفض في أعلى وأسفل الشاشة، مع فتحة في المنتصف للنص أو الرقاقة.
- مرِّر سريعًالإغلاق مربع الاختيار، وهو يعالج إيماءة التمرير السريع للإغلاق. ويتم أخذ فتحة واحدة للخلفية (يتم عرضها أثناء إيماءة التمرير السريع فقط) والمحتوى الذي يعمل في المقدّمة. يمكن دمجه اختياريًا مع مكتبة التنقّل androidx باستخدام
SwipeDismissableNavHost
(يمكنك الاطّلاع على مكتبة التنقل في Wear Compose أدناه). - النص - تطبيق 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
.منحني صف وعمود منحني - على غرار الصف والعمود، يمكن دمج
curvedRow
وcurvedColumn
داخلCurvedLayout
لوضع العناصر حسب الحاجة. بالنسبة إلىcurvedRow
، يمكن تحديد اتجاه التنسيق الزاوي والمحاذاة الشعاعية. بالنسبة إلىcurvedColumn
، يمكن تحديد المحاذاة الزاويّة والاتجاه الشعاعي.CurvedModifier - تقبل جميع المكوّنات المنحنية معلَمة تعديل يمكن إنشاؤها باستخدام
CurvedModifier
: الخلفية والحجم والوزن والمساحة المتروكة.يتم أيضًا تضمين المكوّن التالي من ميزة التنقّل في تطبيق Wear Compose:
ScrollableNavHost - يوفر مكانًا في التسلسل الهرمي Compose لحدوث التنقل المستقل، مع توفير التنقل للخلف من خلال إيماءة التمرير السريع. يتم عرض المحتوى على
SwipeToDismissBox
، مع عرض مستوى التنقّل الحالي. أثناء إيماءة التمرير السريع للإغلاق، يتم عرض مستوى التنقّل السابق (إن وُجد) في الخلفية.يمكنك الاطّلاع على ملاحظات الإصدار السابق الخاصة بإصدارات ألفا المختلفة للحصول على مزيد من التفاصيل حول ما تم تسليمه.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة
CurvedModifier.padding*
دالة. تُستخدم هذه لتحديد المساحة الإضافية المراد إضافتها حول مكون منحني. (I4dbb4) - تمت إزالة صف داخلي واحد (
CompositionLocal
) (I42490) - لقد أضفنا قيمًا ثابتة لأحجام الرموز
Button
وCompactButton
وToggleButton
كإرشادات (I57cab). - إضافة المَعلمة المفعّلة إلى
AppCard
وTitleCard
وتتوفّر لديهم الآن واجهة برمجة تطبيقات مشابهة لبطاقاتandroidx.compose.material
. عند ضبط المعلَمة على false، لن تكون البطاقة قابلة للنقر. (Idc48d، b/228869805)
إصلاح الأخطاء
- توقِف أداة الخطوة الآن زرَّي التصغير والزيادة عند الوصول إلى الحدَّّين الأدنى والأقصى (وتُطبّق ContentAlpha.Disable على رمزColor) (I4be9f).
- أضفنا مساحة متروكة واحدة (dp) حول محتوى "أداة الاختيار" عند الرسم بتدرج لمنع عدم الاستقرار على النص الذي يظهر عند التمرير السريع. (I0b7b9)
- إضافة اختبارات لقطات الشاشة لنظام
PositionIndicator
(I5e8bc) - إضافة المزيد من الاختبارات
AppCard
وTitleCard
(I85391، b/228869805)
الإصدار 1.0.0-alpha21
20 نيسان (أبريل) 2022
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha21
وandroidx.wear.compose:compose-material:1.0.0-alpha21
وandroidx.wear.compose:compose-navigation:1.0.0-alpha21
. يحتوي الإصدار 1.0.0-alpha21 على هذه الالتزامات.
الميزات الجديدة
- تمت إضافة مُعدِّلات منحنية جديدة لتحديد خلفية العنصر منحنٍ:
CurvedModifier.background
و.radialGradientBackground
و.angularGradientBackground
(I8f392). - السماح بتحديد وضع تجاوز النص المقوّس (مقطع/علامة حذف/مرئي) (I8e7aa)
- تمت إضافة عنصر تعديل
CurvedModifier.weight
، مشابهًا للمُعدِّل في Compose. يمكن استخدامه هذا مع عناصر drawdRow و CurvedLayout (للعرض) وعناصر أصغر حجمًا منحنية (للارتفاع). (I8abbd) - تمت إضافة مفاتيح التعديل
CurvedModifier.size
و.angularSize
و.radialSize
لتحديد حجم العنصر المقوّس. (I623c7)
تغييرات واجهة برمجة التطبيقات
- يمكنك إعادة ترتيب المَعلمات للتأكّد من ظهور اللون بشكل متّسق قبل اللون في واجهة برمجة التطبيقات Wear Compose API (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. وتكون أحجام الرموز المقترَحة هي 20x20 عند توفّر الرمز والتصنيف، و24x24 لشريحة مضغوطة فقط على شكل رمز. وبالنسبة إلى حالة الاستخدام للرمز فقط، تأكّدنا أيضًا من محاذاة الرمز إلى الوسط. (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 (يأخذ في الاعتبار دوران الشاشة، لوضع نفسه عكسًا للإطار الأيمن الفعلي) أو القيمة المطلقة لليسار واليمين. (I2f1f3) - بالنسبة إلى
SwipeToDismissBox
، أعدنا تسميةSwipeDismissTarget
.Original إلى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 لتتوافق مع أحدث إرشادات تجربة المستخدم لدينا. من الملاحظة، تم إجراء تعديلات ثانوية متعدّدة لارتفاع الأسطر وتباعد الأسطر، وهي قيمة الآن أصغر من قيمهما السابقة. (Ie3077)
- أضفنا مقاومة لجهاز
SwipeToDismissBox
بحيث لا تحدث الحركة إلا عند التمرير سريعًا للإغلاق وليس في الاتجاه المقابل على الإطلاق. (Ifdfb9) - لقد غيّرنا بعض قيم المَعلمات التلقائية للدوال
CircularProgressIndicator
لجعلها متوافقة مع إرشادات تجربة المستخدم في تصميم Wear Material. بالنسبة إلى الإصدار الدوّار أو غير المحدّد، تم تعديل الحجم (40->24.dp) و"ColorColor" (الأساسي->onBackground) و"شفافية تتبُّع الألوان" ( 30%-> 10%) وعرض الخط (4-> 3dp). بالنسبة إلى إصدار التقدم/تحديد إصدار المسار، تم تحديث شفافية اللون (30%->10%). (I659cc) - لقد عدَّلنا مَعلمات التوسعة التلقائية لـ
ScalingLazyColumn
بما يتوافق مع أحدث مواصفات تجربة المستخدم في تصميم Wear Material. ينتج عن هذا بصريًا بدء اقتراب حجم عناصر القائمة من مركز القائمة، ولكن تقليل الحجم عند حافة القائمة من ذي قبل. (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 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- العديد من التحسينات على مؤشر الموضع: أعادت ShowResult تسمية مَعلم Positionموضع الفهرسة. بعض تحسينات الأداء لتجنُّب إعادة العمليات الحسابية عند عدم الحاجة (Iaed9d)
- تم تعديل اللون المقترَح لـ
SplitToggleChip
. أصبح لـ SplitToggleChip الآن خلفية ملونة خالصة عند وضع علامة عليه أو إلغاء تحديده، بحيث يكون لون عنصر ToggleControl هو المؤشر الأساسي على ما إذا تم تحديد المكوِّن أم لا. لقد أضفنا سمةToggleDefaults.splitToggleChipColors()
جديدة لتتوافق مع نظام الألوان الجديد. لقد بسّطنا أيضًا طرقtoggleChipColors()
لإزالة splitBackgroundOverlayColor (I7e66e). - لقد أضفنا القيمة غير المعدَّلة إلى
ScalingLazyListItemInfo
لأنّه ليس من الآمن احتساب حجم العنصر الأصلي باستخدام الحجم الذي تمّ تحجيمه وعامل القياس بسبب الدقة في العمليات الحسابية للعائم. (I54657، b/221079441) - أضِف
HorizontalPageIndicator
. وهي تمثل إجمالي عدد الصفحات وصفحة محددة. قد يكون خطيًا أو منحنيًا حسب شكل الجهاز. كما أنها تدعم شكل المؤشر المخصص، الذي يحدد كيفية تمثيل كل مؤشر بشكل مرئي. (Iac898) - تم تحديث
PickerState
بحيث يمكن تحديث numberOfOptions. يدعم ذلك حالات الاستخدام مثلDatePicker
، عندما يتغير عدد الأيام في الشهر حسب الشهر المحدّد. تم تغيير معلمة الدالة الإنشائية لـ PickerState إلى firstNumberOfOptions. (Iad066) - إخفاء
PositionIndicator
عندما يكون شريط تمرير ولا يمكن التمرير (Id0a7f) - لتحقيق التوافق مع Scaffold، يعرض الآن مكوّن مربّع الحوار بملء الشاشة
PositionIndicator
وVignette
. نستخدم الآن أيضًاScalingLazyColumn
بدلاً منColumn
، ما يعني أنّ محتوى مربّع الحوار متوفّر الآن فيScalingLazyListScope
(ويجب عادةً أن يكون مُحاطًا بالعنصر { /* content */ }). ويدعم الحوار معلَمة verticalArrangement وفقًا لذلك. (Idea13) - لقد غيَّرنا اسم خاصيّتَي
ToggleChip
وSplitToggleChip
لتفعيل SwitchIcon ليتلاءم بشكل أفضل مع التصميم المتعدد الأبعاد من أجل مساعدة المصممين والمطوّرين على استخدام واجهة برمجة التطبيقات. (If5921، b/220129803) - لقد أضفنا شرحًا جديدًا للإدخال 3 إلى نوع سمة Wear Material Typology.Caption3 هو خط صغير يُستخدم في الكتابة الطويلة جدًا مثل النصوص القانونية. (I74b13، b/220128356)
إصلاح الأخطاء
- أوقف الرسوم المتحركة السريعة عندما نكون هناك. (Idb69d)
- تحريك التغييرات في مؤشر الموضع. (I94cb9)
- استنادًا إلى الملاحظات التي تتعلّق بواجهة المستخدم أو تجربة المستخدم، غيّرنا ميزة "التوسيط التلقائي" في
ScalingLazyColumn
لكي لا توفِّر مساحة كافية إلا للتأكّد من أنّ العناصر التي تحتوي على الفهرسScalingLazyListState.initialCenterItemIndex
أو أعلى سيتم تمريرها بشكل كامل إلى منتصف إطار العرض. يسمح هذا للمطورين بوضع عنصر أو عنصرين حول العنصر في البداية في المنتصف ولا يمكن التمرير في المنتصف. يعني هذا أنّScalingLazyColumn
الذي يعمل في مركز السيارات لن يتمكّن من التمرير فوقinitialCenterItemIndex/initialCenterItemScrollOffset
(I22ee2). - لقد أضفنا عرضًا توضيحيًا لـ "أداة اختيار التاريخ" وأصلحنا خطأً في
PickerState
حيث لم يتم تطبيق خيار "مُحدّد ومبدئي" إلى أن يتم عرض "منتقي التاريخ". (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)
لتفعيل ميزة Snap. (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) - واجهة برمجة تطبيقات إضافية تتضمّن عددًا صحيحًا للشريط المضمّن وشريط الخطوات (I1b5d6)
إصلاح الأخطاء
- لقد غيَّرنا القيمة firstCenterItemIndex التلقائية لـ
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
. يمكن استخدام التنبيه والتأكيد كوجهة للتنقل. وتمت أيضًا إضافة نطاق العمود إلى معلمات التنبيه والتأكيد حسب الضرورة. (Ia9014) - لقد أزلنا
onSurfaceVariant2
من أداة Compose لألوان المظاهر في نظام التشغيل WearOS Material واستبدلنا الاستخدامات المتاحة في المكتبة بـonSurfaceVariant
. (Icd592) - تمت إضافة طريقة لاختيار خيار آليًا على
PickerState
. ويمكن الآن أيضًا تحديد الخيار المحدد في البداية عند إنشاءPickerState
. (I92bdf) - لقد وفّرنا إمكانية تخصيص طريقة تبادل البيانات مع
ScalingLazyColumn
. (I1ad2e، b/208842968) - أضفنا "
NavController.currentBackStackEntryAsState()
" إلى مكتبة "Wear.Compose.Navigation
". (If9028، b/212739653) - تمت إضافة
Modifier.onRotaryScrollEvent()
وModifier.onPreRotaryScrollEvent()
لأجهزة Wear التي تحتوي على زر جانبي دوار.(I18bf5، b/210748686)
الإصدار 1.0.0-alpha14
12 كانون الثاني (يناير) 2022
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha14
وandroidx.wear.compose:compose-material:1.0.0-alpha14
وandroidx.wear.compose:compose-navigation:1.0.0-alpha14
. يحتوي الإصدار 1.0.0-alpha14 على هذه الالتزامات.
الميزات الجديدة
لقد أضفنا عددًا من الطرق إلى
ScalingLazyListState
للسماح للمطوّرين بالتحكّم في الانتقال إلى عناصر قائمة معيّنة وكذلك إعداد عنصر القائمة الأولي والإزاحة.وكجزء من هذا التغيير، عدّلنا أيضًا سمة ScalingLazyList بحيث يتم توجيهها حول مركز إطار العرض في ScalingLazyList بدلاً من بداية إطار العرض.
تمت إضافة الموقع الجديد
anchorType: ScalingLazyListAnchorType = ScalingLazyListAnchorType.ItemCenter
إلىScalingLazyList
للتحكّم في ما إذا كان يجب محاذاة الوسط (ScalingLazyListAnchorType.ItemCenter
) أوEdge
(ScalingLazyListAnchorType.ItemStart
) مع خط الوسط لإطار العرض.نتيجةً لذلك، تم تغيير
ScalingLazyListItemInfo.offset
وScalingLazyListItemInfo.adjustedOffset
وسيعكسان الآن معادلة العنصر في ما يتعلق بموضع عنصر القائمة وanchorType
في القائمة. على سبيل المثال، بالنسبة إلىScalingLazyColumn
الذي يتضمّنanchorType
منItemCenter
وعنصر قائمة مع وضع وسطه في منتصف إطار العرض، ستكون الإزاحة0
.الطرق الجديدة هي
scrollTo
وanimatedScrollTo
وcenterItemIndex
وcenterItemOffset
. (I61b61)أضفنا معالِج زر الرجوع إلى
SwipeDismissableNavHost
، لكي يؤدي الضغط على زر الرجوع إلى الانتقال إلى المستوى السابق في التسلسل الهرمي للتنقّل. (I5b086، b/210205624)
الإصدار 1.0.0-alpha13
15 كانون الأول (ديسمبر) 2021
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha13
وandroidx.wear.compose:compose-material:1.0.0-alpha13
وandroidx.wear.compose:compose-navigation:1.0.0-alpha13
. يحتوي الإصدار 1.0.0-alpha13 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- لقد أجرينا
RangeIcons
داخليًا (يُشار إليه داخليًا من خلالInlineSlider
وStepper
). (I927ec)
إصلاح الأخطاء
تم إصلاح مشكلة تكمن في إضافة وجهة في التسلسل الهرمي
SwipeDismissableNavHost
قبل الوصول إلى حالة دورة حياةCREATED
، ما يؤدي إلى حدوثIllegalStateException
. كان هذا الإصلاح شرطًا أساسيًا لتعديل الاعتمادية علىnavigation-compose
إلى2.4.0-beta02
وغيرها. (I40a2b، b/207328687)تمت إضافة فئة تعداد Drawables للحصول على موارد قابلة للرسم داخل مكتبة 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 على هذه الالتزامات.
الميزات الجديدة
لقد أضفنا مكون برنامج الخطوة الذي يسمح للمستخدمين بالاختيار من بين مجموعة من القيم. الخطوة 2 عبارة عن عنصر تحكم في وضع ملء الشاشة مع زري زيادة وخفض في الجزء العلوي والسفلي، ومساحة في المنتصف (من المتوقع أن تأخذ إما شريحة أو نص). يمكن تخصيص رموز الأزرار إذا لزم الأمر. (I625fe)
لقد أضفنا عنصرَين جديدَين قابلَين للإنشاء لعرض مربّعات الحوار: التنبيه: ينتظر التطبيق إقرارًا من المستخدم ويعرض عنوانًا ورمزًا ورسالة وأحدهما أ) زرَّين للخيارات الإيجابية/السلبية البسيطة، أو ب) الشرائح المكدّسة عموديًا أو شرائح التبديل لتوفير خيارات أكثر مرونة. يحتوي مربع الحوار البسيط هذا على فتحات لعنوان ورمز (متحرك). (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/العمود (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. يسمح شريط التمرير المضمّن للمستخدمين بالاختيار من بين نطاق من القيم. يتم عرض نطاق الاختيارات كشريط بين القيم الدنيا والقصوى للنطاق، والتي يمكن للمستخدمين اختيار قيمة واحدة منها. (If0148)
اطّلِع على ميزة Compose الجديدة المخصّصة في الدرس التطبيقي حول الترميز في WearOS.
تغييرات واجهة برمجة التطبيقات
- أصبحت قيمة مقياس "الأداء العالي" الآن
minSdkVersion
من23
. (If2655)
إصلاح الأخطاء
- حدِّث معالجة النقل في ScrollRejectableNavHost في SideEffect (I04994، b/202863359)
- تحديث طريقة معالجة النقل في ScrollEscapeableNavHost (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 Material. (I4759b، b/199754668)
إصلاح الأخطاء
- تمت إضافة نماذج TakeToRejectBox التي لا تزال قائمة (Ibaffe)
- تمت إضافة روابط تؤدي إلى أدلة developer.android.com من K Docs، التي توضّح كيفية CurvedText وTimeText وScrollTo المطلوبةBox. (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
وتم نقلهما إلى نهاية قائمة الخصائص للسماح بتقديمهما باعتبارهما لامدا لاحقة. تمت أيضًا إعادة التسميةbodyColor
إلىcontentColor
للحفاظ على التوافق مع أسماء الخانات الجديدة. (I57e78)
إصلاح الأخطاء
- تمت إضافة روابط تؤدي إلى أدلة developer.android.com من Kdocs، بخصوص الأزرار والبطاقة والشرائح والمظهر ومؤشر الموضع وتوسيع نطاق مكوّنات الأعمدة الكسولة. (I22428)
- أصلح نظام التشغيل WearOS مرِّر سريعًا ToRejectBox في بعض الأحيان لا يتعامل مع التمريرات السريعة. (I9387e)
- تمت إضافة نماذج لكل من Button وCompactButton وChip وCompactChip وAppCard وTitleCard وToggleButton وToggleChip وتقسيمToggleChip (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)
- تمت إضافة رسم متحرك إلى ScrollToChooseBox (I9ad1b).
- تمت إضافة معلمة hasBackground إلى واجهة برمجة التطبيقات للتمرير السريع للتجاهل بحيث يمكن إيقاف إيماءة التمرير السريع عند عدم وجود محتوى في الخلفية لعرضه. (I313d8)
- تأخذ ميزة "
rememberNavController()
" الآن مجموعة اختيارية من مثيلاتNavigator
التي ستتم إضافتها إلىNavController
التي تم إرجاعها لتوفير دعم أفضل لبرامج التنقّل الاختيارية، مثل تلك الواردة من مواد التنقّل المتوافقة مع الأجهزة الجوّالة. (I4619e) - ارجع إلى NamedNavArgument من navigation-common وأزل نسخة من wear.compose.navigation. (I43af6)
إصلاح الأخطاء
- تم إصلاح الخطأ في اختبار CurvedRow على الأجهزة الأصغر. (If7941)
- إصلاح الوميض المحتمل على CurvedRow عند تحديث المحتوى، ويضمن إعادة قياس الصف المنحني (Ie4e06).
- تم تعديل ChipDefaults.RestrictBackgroundChipColors() بما يتماشى مع تغييرات مواصفات تجربة المستخدم. يبدأ التدرج الآن بـ MaterialTheme.colors.primary مع ألفا 32.5% وينتهي بـ MaterialTheme.colors.surface بدرجة ألفا بنسبة 0% على خلفية MaterialTheme.colors.surface @ 75% ألفا. (Id1548)
- لقد عدّلنا ألوان ToggleChips عندما تكون في الحالة المحدّدة، وذلك لتتوافق مع أحدث إرشادات حول مواصفات تجربة المستخدم لنظام Material Design. عند اختيار ToggleChips، أصبح لديه الآن خلفية متدرجة من MaterialTheme.color.surface @ 0% alpha، من أعلى اليمين، إلى MaterialTheme.color.primary @ 32% alpha، أسفل اليمين، على خلفية من MaterialTheme.color.surface بنسبة ألفا تبلغ% 75. ينتج عن ذلك اختلاف أدق بين وضع علامة في مربّع الاختيار أو عدم وضع علامة فيه في حقل ToggleChip. (Idd40b)
الإصدار 1.0.0-alpha06
15 أيلول (سبتمبر) 2021
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha06
وandroidx.wear.compose:compose-material:1.0.0-alpha06
وandroidx.wear.compose:compose-navigation:1.0.0-alpha06
. يحتوي الإصدار 1.0.0-alpha06 على هذه الالتزامات.
الميزات الجديدة
- لقد أضفنا "سقّالة" وهو تطبيق من المستوى الأعلى قابل للإنشاء يوفّر بنية للتعامل مع مؤشرات الموضع (مثل موضع التمرير أو مستوى الصوت)، وهو عبارة عن منطقة أعلى الشاشة لعرض الوقت وحالة التطبيق، كما يتيح استخدام نقوش الصورة النصفية لتمويه حافة الشاشة العلوية والسفلية للمحتوى القابل للتمرير. المنطقة الرئيسية للسقالة هي مكان وضع محتويات التطبيق. (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 كمكتبة منفصلة، وبالتالي لا تتطلّب تطبيقات WearCompose البسيطة التي تنفّذ التنقّل المشغَّل يدويًا الاعتماد على مكتبة التنقّل في نظام التشغيل Androidx.
تغييرات واجهة برمجة التطبيقات
- تم تحديث "
SwipeDismissableNavHost
" للتوافق معrememberSaveable
من خلال ضبط الهوية الأساسية للخلفية والمحتوى (I746fd). - أضفنا محوّل PositionIndexator الذي يمكنه التعامل مع LazyListState (I21b88).
- تم تحديث ScrollToSubBox لتتيح إمكانية الحفظ (Ie728b)
- لقد أضفنا دعم renameLayout إلى ScalingLazyColumn. يتيح ذلك عكس اتجاه التمرير والتنسيق (I9e2fc)
- تم إيقاف
performGesture
وGestureScope
نهائيًا، وقد تم استبدالهما بـperformTouchInput
وTouchInjectionScope
. (Ia5f3f، b/190493367) - لقد أعدنا تسمية VignetteValue إلى VignettePosition وأطلقنا على VignetteValue.Both اسمهما إلى VignettePosition.TopAndBottom. (I57ad7)
- قمنا بإعادة تسمية ScalingLazyColumnState إلى ScalingLazyListState و ScalingLazyColumnItemInfo إلى ScalingLazyListItemInfo و ScalingLazyColumnLayoutInfo إلى ScalingLazyListLayoutInfo و ScalingLazyColumnDomain إلى ScalingLazyListScope في حالة ما إذا قررنا إضافة تنفيذ ScalingLazyListScope (I22734)
إصلاح الأخطاء
- تم تعديل وثائق CompactChip لوصف ما يحدث في حال عدم توفير رمز أو تسمية. (I4ba88)
- لقد أجرينا بعض التعديلات على مكوّنات بطاقة Wear OS. (I6b3d0)
- تم تقليل التباعد بين العنوان والنص في بطاقة العنوان من 8.dp إلى 2.dp.
- تم تغيير خط عنوان بطاقة TitleCard من النص الأساسي إلى العنوان 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)
إصلاح الأخطاء
- لقد قللنا التباعد بين الرمز والنص في الشريحة و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 على هذه الالتزامات.
الميزات الجديدة
- تمت إضافة ScrollToSepBox ومعدِّل قابل للتمرير السريع يمكن استخدامهما لإتاحة إيماءة التمرير السريع من اليسار إلى اليمين للإغلاق. على الرغم من أنها مستقلة عن مكونات التنقل، فمن المتوقع أن يتم استخدامها للخروج من شاشة والانتقال إلى أخرى. تمت إضافة اختبارات الدمج إلى العرض التوضيحي بالتمرير السريع للإغلاق. (I7bbaa)
- أضفنا واجهتَي ScalingLazyColumnItemInfo وScalingLazyColumnLayoutInfo إلى الفئة ScalingLazyColumnState. للسماح للمطورين بمعرفة المواضع والأحجام الفعلية للعناصر في ScalingLazyColumn بعد تطبيق التوسيع. وأصلحنا أيضًا خطأً بالطريقة التي تم بها احتساب الحجم عند تطبيق المساحة المتروكة في المحتوى "الأعلى" على عمود ScalingLazyColumn. (I27c07)
تغييرات واجهة برمجة التطبيقات
- أضِف الفئة CurvedTextStyle لتحديد خيارات نمط النص المقوّس. يشبه TextStyle، ولكنه يتيح الآن استخدام اللون وحجم الخط والخلفية فقط. وستتم إضافة المزيد من خيارات التصميم في المستقبل. (I96ac3)
- أضفنا واجهتَي ScalingLazyColumnItemInfo وScalingLazyColumnLayoutInfo إلى الفئة ScalingLazyColumnState. للسماح للمطورين بمعرفة المواضع والأحجام الفعلية للعناصر في ScalingLazyColumn بعد تطبيق التوسيع. وأصلحنا أيضًا خطأً بالطريقة التي تم بها احتساب الحجم عند تطبيق المساحة المتروكة في المحتوى "الأعلى" على عمود ScalingLazyColumn. (I27c07)
- تمت إضافة
@ExperimentalWearMaterialApi
إلى تعدادSwipeDismissTarget
، وهو جزء من واجهة برمجة التطبيقاتSwipeToDismissBox
. (I48b5e)
إصلاح الأخطاء
- تمت إضافة مواد الاختبار لـ TakeTo المطلوبةBox (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 وتقسيمToggleChips (I7b639 على المطوّرين).
- تم تعديل المساحة المتروكة في محتوى البداية والنهاية في الشرائح بحيث تصبح 14.dp باستمرار بغض النظر عما إذا كان هناك رمز في الشريحة أم لا (كان في السابق 12.dp في حال توفّر الرمز و14.dp إذا لم يكن كذلك) (I34c86)
إصلاح الأخطاء
- إضافة اختبارات لـ CurvedRow (I93cdb)
- ربط تبعيات Wear Compose بـ Compose 1.0.0-rc01. (Ie6bc9)
- تم تغيير تسليم صورة الخلفية في البطاقات والشرائح بحيث يتم اقتصاص الصورة بدلاً من تمديدها للحفاظ على تناسب الصورة. (I29b41)
- تمت إضافة المزيد من العروض التوضيحية واختبارات الدمج لكل من Button وToggleButton. (5e27ed2)
- تمت إضافة المزيد من اختبارات الشرائح لتغطية ألوان محتوى imageBackgroundChips (Ia9183).
الإصدار 1.0.0-alpha01
1 تموز (يوليو) 2021
تم طرح androidx.wear.compose:compose-foundation:1.0.0-alpha01
وandroidx.wear.compose:compose-material:1.0.0-alpha01
. يحتوي الإصدار 1.0.0-alpha01 على هذه الالتزامات.
الميزات الجديدة
Wear Compose هي مكتبة مستندة إلى لغة البرمجة Kotlin ومتوافقة مع تصميم Wear Material، وهو إحدى إضافات التصميم المتعدد الأبعاد للأجهزة القابلة للارتداء التي تعمل بنظام التشغيل WearOS. يحتوي الإصدار الأولي الأول هذا على عمليات تنفيذ مبكرة ووظيفية لما يلي:
- تحديد نسق المواد - يخلق الألوان وأسلوب الخط والأشكال باستمرار عبر المكونات المستخدمة من هذه المكتبة.
- الشريحة وCompactChip: يتم تصميم الرقائق على شكل ملعب، ويمكن إضافة أشكال مختلفة إليها، سواء على مستوى الأيقونة أو شركة الإنتاج أو شركة الإنتاج الثانوية.
- - ToggleChip وتقسيمToggleChip: نوع متخصص من الرقائق يشتمل على فتحة لرمز تبديل ثنائي الحالة، مثل زر الاختيار أو مربّع الاختيار. بالإضافة إلى ذلك، يحتوي SplitToggleChip على منطقتين قابلتين للنقر، إحداهما قابلة للنقر والأخرى قابلة للتبديل.
- زر، زر مضغوط - الأزرار دائرية الشكل، مع فتحة محتوى واحدة للرمز أو الحد الأدنى من النص (3 أحرف كحد أقصى).
- زر التبديل - زر لتشغيل إجراء أو إيقافه، مع فتحة واحدة للرمز أو الحد الأدنى من النص (3 أحرف كحد أقصى).
- بطاقات وAppCard: مستطيلة الشكل بزوايا مستديرة توفر فتحات للمحتوى مثل رمز التطبيق والوقت والعنوان والجسم.
ستعمل الإصدارات المستقبلية على توسيع نطاق مجموعة التطبيقات المصغّرة مع إضافة دعم لأدوات اختيار تصميم Material Design وأشرطة التمرير والقوائم ومؤشرات الصفحات ومربعات الحوار ومؤشرات rsb القابلة للتمرير والخبز المحمّص وغير ذلك.
بالإضافة إلى ذلك، سيتم توفير الدعم لميزات أخرى خاصة بالأجهزة القابلة للارتداء، مثل التنسيقات والنصوص المقوّسة، بالإضافة إلى تركيب السقالات لتسهيل إنشاء التطبيقات للأجهزة القابلة للارتداء أو التطبيقات على سطحها.
تم تصميم Wear Compose Material باستخدام المبادئ نفسها المتبّعة في Compose Material، على الرغم من أنّها تستهدف الأجهزة القابلة للارتداء. يجب استخدام مكتبة Wear Compose Material بدلاً من مكتبة Compose Material عند إنشاء جهاز قابل للارتداء.
يجب اعتبار مكتبتَي "Material" غير مختلطتين ويجب عدم مزجهما في التطبيق نفسه. فإذا وجد المطورون أنفسهم يدرجون مكتبة Compose Material في ملحقاتهم، يقترحون إما أ) عدم وجود مكونات في مكتبة Wear Compose Material، يُرجى إخبارنا بما تحتاج إليه، أو ب) استخدام أحد المكوّنات التي لا ننصح باستخدامها على جهاز قابل للارتداء.