إنشاء مادة 3
androidx.compose.material3
(اطّلِع على مستندات مرجع واجهة برمجة التطبيقات لجميع حِزم Compose)
آخر تعديل | الإصدار الثابت | إصدار محتمل | الإصدار التجريبي | الإصدار التجريبي الأول |
---|---|---|---|---|
13 تشرين الثاني (نوفمبر) 2024 | 1.3.1 | - | - | 1.4.0-alpha04 |
البنية
Compose هو مجموعة من سبعة معرّفات مجموعات Maven ضمن androidx
. تحتوي كل مجموعة
على مجموعة فرعية مستهدفة من الوظائف، ولكل مجموعة مجموعة خاصة بها من ملاحظات
الإصدار.
يوضّح هذا الجدول المجموعات والروابط لكل مجموعة من ملاحظات الإصدار.
مجموعة | الوصف |
---|---|
compose.animation | إنشاء صور متحركة في تطبيقات Jetpack Compose لتحسين تجربة المستخدم |
compose.compiler | حوِّل وظائف @Composable وفعِّل التحسينات باستخدام مكوّن إضافي لمجمّع Kotlin. |
compose.foundation | يمكنك كتابة تطبيقات Jetpack Compose باستخدام وحدات أساسية جاهزة للاستخدام وتوسيع الأساس لإنشاء أجزاء نظام التصميم الخاص بك. |
compose.material | أنشئ واجهات مستخدم Jetpack Compose باستخدام مكونات Material Design الجاهزة للاستخدام. هذه هي نقطة الدخول ذات المستوى الأعلى في أداة "الإنشاء"، وهي مصمّمة لتوفير مكوّنات تتطابق مع تلك الموضّحة على www.material.io. |
compose.material3 | أنشئ واجهات مستخدم Jetpack Compose باستخدام مكونات Material Design 3، وهي الإصدار التالي من Material Design. يتضمّن Material 3 ميزات تخصيص Material You، مثل الألوان الديناميكية، وتصميمًا جديدًا للعناصر والمظاهر، وهو مصمّم ليتوافق مع التصميم المرئي الجديد لنظام Android 12 وواجهة مستخدم النظام. |
compose.runtime | الوحدات الأساسية لنموذج برمجة Compose وإدارة الحالة، ووقت التشغيل الأساسي الذي يستهدفه مكوّن Compose Compiler الإضافي |
compose.ui | المكونات الأساسية لواجهة مستخدم إنشاء الرسائل اللازمة للتفاعل مع الجهاز، بما في ذلك التنسيق والرسم والإدخال |
الإعلان عن التبعيات
لإضافة تبعية على Compose، يجب إضافة مستودع Google Maven إلى مشروعك. اطّلِع على مستودع Maven من Google لمزيد من المعلومات.
أضِف التبعيات للعناصر التي تحتاج إليها في ملف build.gradle
ل
تطبيقك أو وحدتك:
رائع
dependencies { implementation "androidx.compose.material3:material3:1.3.1" implementation "androidx.compose.material3:material3-window-size-class:1.3.1" implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04" } android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
dependencies { implementation("androidx.compose.material3:material3:1.3.1") implementation("androidx.compose.material3:material3-window-size-class:1.3.1") implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.4.0-alpha04") } android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.1.1" } kotlinOptions { jvmTarget = "1.8" } }
لمزيد من المعلومات عن العناصر الاعتمادية، اطّلِع على مقالة إضافة عناصر الاعتماد الخاصة بالإصدار.
ملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إعلامنا إذا واجهت مشاكل جديدة أو كان لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مكتبة جديدة. يمكنك إضافة صوتك إلى مشكلة حالية عن طريق النقر على زر النجمة.
اطّلِع على مستندات أداة تتبُّع المشاكل لمزيد من المعلومات.
الإصدار 1.0 من Compose Material3 Common
الإصدار 1.0.0-alpha01
17 نيسان (أبريل) 2024
تم إصدار androidx.compose.material3:material3-common:1.0.0-alpha01
وandroidx.compose.material3:material3-common-android:1.0.0-alpha01
وandroidx.compose.material3:material3-common-desktop:1.0.0-alpha01
. يتضمّن الإصدار 1.0.0-alpha01 عمليات الربط هذه.
الميزات الجديدة
المكونات التي لا تتضمّن مظهرًا يمكن استخدامها لإنشاء مكونات Material Design:
- لوحة الألوان
- الرمز
- حجم مساحة اللمس
Compose Material3 Adaptive Navigation Suite Version 1.0
الإصدار 1.0.0-alpha07
1 مايو 2024
تم إصدار androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha07
وandroidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha07
وandroidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha07
. يحتوي الإصدار 1.0.0-alpha07 على عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- جعل واجهات برمجة تطبيقات Navigation Suite غير تجريبية (If62af)
إصلاح الأخطاء
- استخدام المكوّنات المضمّنة للمحتوى تلقائيًا (50266df)
الإصدار 1.0.0-alpha06
17 نيسان (أبريل) 2024
تم إصدار androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha06
وandroidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha06
وandroidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha06
. يتضمّن الإصدار 1.0.0-alpha06 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- أضِف
containerColor
وcontentColor
إلىNavigationSuiteScaffoldDefaults
. (I64e3a، b/331993720) - إضافة دالة
itemColors
إلىNavigationSuiteDefaults
(Idf719، b/328480012) - اجعل
NavigationSuiteScope
مغلقًا. (Iefa57)
الإصدار 1.0.0-alpha05
6 مارس 2024
تم إصدار androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha05
وandroidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha05
وandroidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha05
. يتضمّن الإصدار 1.0.0-alpha05 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- اجعل
NavigationSuiteItemColors
مبرِّجًا علنيًا. (Ica83a، b/324886877)
الإصدار 1.0.0-alpha04
21 شباط (فبراير) 2024
تم إصدار androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha04
وandroidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha04
وandroidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha04
. يحتوي الإصدار 1.0.0-alpha04 على هذه المراجعات.
تعديلات على التبعيات
- عدِّل التبعيات التكيُّفية لـ Material3 إلى مسارات الوحدات الجديدة. (Ibc421)
- انتقِل إلى استخدام إصدار "مدير النوافذ" لفئات أحجام النوافذ. (I3794d)
الإصدار 1.0.0-alpha03
7 شباط (فبراير) 2024
تم إصدار androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha03
وandroidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha03
وandroidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha03
. يحتوي الإصدار 1.0.0-alpha03 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تعديل اسم الحزمة إلى navigationsuite من navigation-suite (I7eff7)
- تم تعديل مكوّنات Material3 التي تعرض
MutableInteractionSource
في واجهة برمجة التطبيقات لتعرض الآنMutableInteractionSource
قابلاً للتغيير إلى قيمة فارغة. ما مِن تغييرات دلالية هنا: يعني تمرير القيمة null أنّك لا تريد رفعMutableInteractionSource
، وسيتم إنشاؤه داخل المكوّن إذا لزم الأمر. يؤدي التغيير إلى قيمة فارغة إلى عدم تخصيص بعض المكوّناتMutableInteractionSource
مطلقًا، كما يسمح للمكوّنات الأخرى بإنشاء مثيل بشكل كسول فقط عند الحاجة، ما يؤدي إلى تحسين الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدمMutableInteractionSource
الذي ترسله إلى هذه المكوّنات، ننصحك بإرسال قيمة فارغة بدلاً من ذلك. وننصحك أيضًا بإجراء تغييرات مشابهة في مكوّناتك. (I41abb، b/298048146)
الإصدار 1.0.0-alpha02
13 كانون الأول (ديسمبر) 2023
تم إصدار androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha02
وandroidx.compose.material3:material3-adaptive-navigation-suite-android:1.0.0-alpha02
وandroidx.compose.material3:material3-adaptive-navigation-suite-desktop:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.
الميزات الجديدة
- أضِف
NavigationSuiteType
"بدون" (If8cb1، b/313688598)
إصلاح الأخطاء
- حلّ مشكلة ملء عنصر التنقّل للشاشة بالكامل عندما تحتوي سطح الجذر على
modifier.fillMaxSize
(c9cf250، b/312664933)
الإصدار 1.0.0-alpha01
15 تشرين الثاني (نوفمبر) 2023
تم إصدار androidx.compose.material3:material3-adaptive-navigation-suite:1.0.0-alpha01
. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.
الميزات الجديدة
Compose Material3 Adaptive Version 1.0
الإصدار 1.0.0-alpha06
7 شباط (فبراير) 2024
تم إصدار androidx.compose.material3:material3-adaptive:1.0.0-alpha06
وandroidx.compose.material3:material3-adaptive-android:1.0.0-alpha06
وandroidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha06
. يحتوي الإصدار 1.0.0-alpha06 على هذه المراجعات.
الميزات الجديدة
- تمت إضافة خيارات سلوك إضافية لزر
ThreePaneScaffoldNavigator
للرجوع. (I858aa) - تمت إضافة محتوى اختياري للوجهة إلى سجلّ التنقّل. (Ibd7e6)
الإصدار 1.0.0-alpha05
24 كانون الثاني (يناير) 2024
تم إصدار androidx.compose.material3:material3-adaptive:1.0.0-alpha05
وandroidx.compose.material3:material3-adaptive-android:1.0.0-alpha05
وandroidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha05
. يحتوي الإصدار 1.0.0-alpha05 على هذه المراجعات.
الميزات الجديدة
- إتاحة الاطّلاع على السجلّ في التنقّل في إطار العمل وحساب القيم (I71d46)
الإصدار 1.0.0-alpha04
10 كانون الثاني (يناير) 2024
تم إصدار androidx.compose.material3:material3-adaptive:1.0.0-alpha04
وandroidx.compose.material3:material3-adaptive-android:1.0.0-alpha04
وandroidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha04
. يحتوي الإصدار 1.0.0-alpha04 على هذه المراجعات.
الميزات الجديدة
- تمت إضافة ميزة العرض من الحافة إلى الحافة في إطارات عمل اللوحة (I1b462)
تغييرات واجهة برمجة التطبيقات
- تم نقل سمات حدود المفصل في "الوضع" إلى قائمة بمعلومات المفصل (I24f90)
إصلاح الأخطاء
- لم تتم إعادة تركيب
AnimatedPane
(c3f573d)
الإصدار 1.0.0-alpha03
13 كانون الأول (ديسمبر) 2023
تم إصدار androidx.compose.material3:material3-adaptive:1.0.0-alpha03
وandroidx.compose.material3:material3-adaptive-android:1.0.0-alpha03
وandroidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha03
. يحتوي الإصدار 1.0.0-alpha03 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- غيِّر أدوار إطار العمل إلى أسماء بديلة
ThreePaneScaffoldRole
. (I65bd1) - إنشاء فئة أساسية لأدوار إطار العمل (I4784d)
- إزالة المَعلمة غير الضرورية من محتوى
AnimatedPane
(Ibc73b) - تعيد تسمية
collectWindowSizeAsState
وتُعرِض القيم الأوّلية بدلاً من ذلك (I480f4)
الإصدار 1.0.0-alpha02
29 تشرين الثاني (نوفمبر) 2023
تم إصدار androidx.compose.material3:material3-adaptive:1.0.0-alpha02
وandroidx.compose.material3:material3-adaptive-android:1.0.0-alpha02
وandroidx.compose.material3:material3-adaptive-desktop:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تقسيم واجهات برمجة تطبيقات التنقّل عن واجهات برمجة تطبيقات الإطارات الهيكلية التكيُّفية (Ic4045)
- أزِل فئة
GutterSize
. (I785b3)
إصلاح الأخطاء
- عدم تبديل الأقسام عند عدم استخدام
AnimatedPane
(d88f181)
الإصدار 1.0.0-alpha01
15 تشرين الثاني (نوفمبر) 2023
تم إصدار androidx.compose.material3:material3-adaptive:1.0.0-alpha01
. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.
الميزات الجديدة
واجهات برمجة التطبيقات للحالة التكيُّفية في Material3:
واجهات برمجة التطبيقات لتوجيهات إطار العمل المخصّص للوحة التكيُّفية في Material3:
واجهات برمجة التطبيقات لإطار عمل اللوحة التكيُّفية في Material3:
- واجهات برمجة التطبيقات الأساسية لإطار عمل اللوحة
Compose Material3 الإصدار 1.4
الإصدار 1.4.0-alpha04
13 تشرين الثاني (نوفمبر) 2024
تم إصدار androidx.compose.material3:material3-*:1.4.0-alpha04
. يتضمّن الإصدار 1.4.0-alpha04 عمليات الربط هذه.
التغييرات في السلوك
- ألغِ التغييرات التي تم إجراؤها على الألوان في الإصدار aosp/3212478 على
iconButtonColors
وiconToggleButtonColors
وoutlinedIconButtonColors
وoutlinedIconToggleButtonColors
وoutlinedIconToggleButtonBorder
. تم نقل السلوك الذي تمّت إزالته الآن إلى مجموعة جديدة من الدوالّ تُسمىiconButtonVibrantColors
وما إلى ذلك للتأكيد على الألوان العالية التباين التي يتم عرضها. (Iffd8d)
الميزات الجديدة
- تقديم المكوّن
VerticalDragHandle
(I6c770)
تغييرات واجهة برمجة التطبيقات
- أعِد تسمية
DismissibleModalWideNavigationRailDefaults
إلىModalWideNavigationRailDefaults
. (I8e877) - أضِف
NavigationBarComponentOverrides
. (I8a3f3) - أضِف
NavigationRailComponentOverride
. (I83e13) - أدخِل
WideNavigationRailState
للتعامل مع تصغير/توسيع شريط التمرير، واسمح بإغلاقModalWideNavigationRail
وحذفDismissibleModalWideNavigationRail
. (I88568) - أضِف الإعدادات التلقائية للحجم xSmall وmedium وlarge وxLarge إلى الإعدادات التلقائية للزرّ التبديلي. (Ie95d1)
- أضِف الإعدادات التلقائية للحجم xSmall وmedium وlarge وxLarge إلى الإعدادات التلقائية للزر. (If8b6d)
إصلاح الأخطاء
- تم تعديل لون الرمز اللاحق لشريحة الفلتر من "أساسي" إلى
OnSurfaceContainer
، وفقًا للمواصفات. تم تعديل جميع ألوان مخطط الشريحة من "مخطّط" إلى "مخطّط متغير"، وفقًا للمواصفات. (I68bd4)
الإصدار 1.4.0-alpha03
30 تشرين الأول (أكتوبر) 2024
تم إصدار androidx.compose.material3:material3-*:1.4.0-alpha03
. يحتوي الإصدار 1.4.0-alpha03 على عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- تم إيقاف طريقة وضع تصميم
SheetState
مع الكثافة نهائيًا لصالح الحدود الدنيا للموقع الجغرافي والسرعة. (Ifd16e) - تمت إضافة
rememberTooltipPositionProvider
يحتوي على منطق تحديد موضع معدَّل. تم إيقافrememberPlainTooltipPositionProvider
وrememberRichTooltipPositionProvider
نهائيًا. (Ie66e2) - تتيح لك
ModalBottomSheetProperties
الإضافية تخصيص ألوان شريط الحالة وشريط التنقّل. يتم تعديل هذه الإعدادات تلقائيًا استنادًا إلى لون المحتوى بدلاً من حالة المظهر الداكن للنظام. (Ib874e، b/362539765) - تحسين تجربة الإدخال لأدوات اختيار التاريخ: في وضع الإدخال، سيتم التركيز على حقل نص التاريخ لإدخال النص على الفور. يضيف التغيير مَعلمة
requestFocus
إلىDatePicker
وDateRangePicker
. يمكنك منع التركيز من خلال تمريرfalse
. (I12d09، b/286399710، b/340102743) - تخزين الإعدادات التلقائية للشكل في عنصر الشكل ضبط الشكل التلقائي على
@Composable
للزرّ "تبديل" يتم تصغير الأشكال إلى شكل واحد تلقائيًا لأنّ الصيغ تشير إلى ملف الرمز المميّز نفسه. (Iaa014)
إصلاح الأخطاء
- يمكنك تحسين سلوك
contentPadding
في التنسيق الأساسي لتجنُّب إعادة تكوين محتوى النصّ دائمًا عند تغييرcontentPadding
. (I8c8e2، b/373904168) - تمت إعادة تسمية
TextFieldLabelScope
progress
إلىlabelMinimizedProgress
. - تمت إعادة تسمية
TextFieldLabelPosition
Default
إلىAttached
. تمت إزالة عناصر الواجهة. (If75c6) - تم إصلاح مشكلة في
DatePicker
في وضع الإدخال حيث يمكن أن تؤدي أخطاء التحقّق من الصحة إلى تغيير ارتفاع المكوّن. (I2e229، b/280462363) - اجعل شريط التمرير المادّي يغيّر قيمته عند الضغط على مفاتيح التحكّم. (I1c442)
الإصدار 1.4.0-alpha02
16 أكتوبر 2024
تم إصدار androidx.compose.material3:material3-*:1.4.0-alpha02
. يتضمّن الإصدار 1.4.0-alpha02 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- تعديلات على أدوات اختيار التاريخ لضمان استخدام اللغة بشكلٍ متسق في
DatePicker
وDateRangePicker
عند ضبط لغة مباشرةً من خلالDatePickerState
أوDateRangePickerState
يُرجى العلم أنّه عند ضبط اللغات على الولاية مباشرةً، عليك التأكّد من أنّ نصوص العنوان والعنوان الرئيسي قد تمّت ترجمتها وفقًا لذلك، لأنّ النص التلقائي سيظلّ ساريًا وفقًا للغة التلقائية للمنصة. (I37073، b/326490763، b/321657276) - تم الآن عرض
SheetState.isAnimationRunning
. (I9a3d7) DatePickerColors
تُعطى الآن الأولوية بشكل صحيح على أي ألوان متضاربة تم تحديدها في أنماط نص أسلوب الخط في المظهر. يُرجى العلم أيضًا أنّ هذا التعديل يضبط موضع المَعلمةcolor
في وظائف أداة اختيار التاريخ ويقدّم مَعلمةcontentColor
لتخصيص ألوان نص العنوان والعناوين. (I30d03، b/347031394)- أعِد تسمية
SplitButton
إلىSplitButtonLayout
وأزِل واجهات برمجة التطبيقات الخاصة بخيارات اللون فيSplitButton
، وسيتمّ إنشاء خيارات المنتج من خلال إعادة استخدام خيارات الزرّ التي يوفّرهاSplitButtonDefaults
. (I44c36) - يتضمّن
ModalBottomSheet
الآن المَعلمةsheetGestureEnabled
(I856cb، b/288211587) - تمت إعادة تسمية
standardMotionScheme
وexpressiveMotionScheme
ليصبحا عاديًا وتعبيريًا. يمكن الآن الوصول إلى كلتا الدالتَين من خلال العنصر المصاحبMotionScheme
من خلال استدعاءMotionScheme.standard()
وMotionScheme.expressive()
. (Iceccf) - إضافة المَعلمة
maxWidth
إلى نصائح التلميح العادية والغنية يتم ضبطه تلقائيًا على مواصفات التصميم التي تبلغ 200 نقطة كثافة بكسل للنصائح التوضيحية العادية و320 نقطة كثافة بكسل للنصائح التوضيحية الغنية. (I30ce9)
إصلاح الأخطاء
- يعدّل
DatePicker
وDateRangePicker
الآن الشهر المعروض بشكل صحيح عند ضبطه من خلالdisplayedMonthMillis
الولاية. (If9e47، b/333414302) - ينقل محتوى
ModalBottomSheet
المحتوى الآن بعيدًا عن شريط الحالة. (I5114c، b/321877275، b/336962418، b/342093067) - [لوحة البيانات في أسفل الشاشة] تغيير الأولوية لإعادة الاتصال إلى
PRIORITY_DEFAULT
للسماح بإغلاق لوحة مفاتيح IME أولاً (I447fb) - إصلاح الأعطال في
DatePicker
وDateRangePicker
عند ضبط الحد الأدنى للسنة القابلة للاختيار على سنة مستقبلية (I78656، b/319395747) - حلّ مشكلة في أداة اختيار التاريخ لتعديل واجهة المستخدم عند تطبيق مثيل
SelectableDates
معدَّل (Iad59a، b/290135807، b/339898760)
الإصدار 1.4.0-alpha01
2 أكتوبر 2024
تم إصدار androidx.compose.material3:material3-*:1.4.0-alpha01
. يحتوي الإصدار 1.4.0-alpha01 على عمليات الربط هذه.
التغييرات في السلوك
- لم تعُد المكتبة تضيف تبعية إلى
material-icons-core
، لذا إذا كان مشروعك يعتمد على ذلك، عليك إضافة هذه التبعية صراحةً في ملفاتbuild.gradle[.kts]
. (I735ff، b/349894318) - تم تغيير لون التصنيف النشط
NavigationBarItem
وNavigationRailItem
منonSurface
إلىsecondary
لتحسين سهولة الاستخدام وتباين الألوان وتحسين التماسك داخل النظام (Ibc297). للرجوع إلى السلوك السابق، انسخ الألوان التلقائية وغيِّرselectedTextColor
إلىMaterialTheme.colorScheme.onSurface
. - تستخدم الآن مكوّنات Material 3
MotionScheme
الجديد لتحديد حركتها. (Ie0f93) - تغييرات غير محدّدة في حركة مؤشر التقدم الدائري (I3c07e)
- عدِّل
OutlinedIconButtonColors
وOutlinedIconToggleButtonColors
لتحسين تباين الألوان. (I2743d) - تم تعديل لون الحاوية والمحتوى لكل من
FilledIconToggleButtonColors
وFilledTonalIconToggleButtonColors
. (Ic5d0f) - تم تعديل لون حدود
OutlinedButton
منoutline
إلىoutlineVariant
. (057f00)
تغييرات واجهة برمجة التطبيقات
- تمت إضافة مَعلمة
reverseLayout
اختيارية إلى الدالةenterAlwaysScrollBehavior
فيTopAppBar
لتوفير إمكانات أفضل للمحتوى الذي تم ضبطه باستخدامreverseLayout
. (I4e0e5) - يتيح
SegmentedButton
الآن استخدام الوسيطةcontentPadding
. (I5ad91، b/358414376) - لم يعُد لدى
PullToRefreshState
تنفيذ تلقائي لـisAnimating
(I6a593) - تمت إضافة عدد جديد من عمليات التحميل الزائد لمواد
TextField
وOutlinedTextField
التي تستخدمTextFieldState
. تمت إضافة واجهات برمجة تطبيقات لصناديق الزينة متوافقة معTextFieldDecorator
. (If13a1) - تمت إضافة مَعلمة للتحكّم في
labelPosition
في حقل النص. يتيح استخدامalwaysMinimize
لنمط واجهة المستخدم عرض تصنيف وعنصر نائب في حقل نصي في الوقت نفسه حتى في حال عدم التركيز على الحقل. (I1ef2c) - تمت إضافة المادة
SecureTextField
والمادةOutlinedSecureTextField
لحقول إدخال كلمة المرور. (I7e22d) - تمت إضافة نطاق إلى تصنيفات حقول النصوص لطلب معلومات عن مستوى تقدّم الحركة. (If5ec8)
- إتاحة استخدام
MotionEvent.CLASSIFICATION_DEEP_PRESS
في نصائح التلميح (I62e6a) - أصبحت
isAfternoon
فيTimePickerState
الآن قيمة إضافة بدلاً من متغيّر في الواجهة، وتمّت إعادة تسميتها إلىisPm
(I89a97). - تعديل فئة أسلوب الخط لتتوافق مع مقاييس الأنواع المميّزة (Ifa13c)
- تمت إضافة واجهة برمجة التطبيقات
ModalWideNavigationRail
وإعادة تسمية واجهات برمجة التطبيقاتModalExpandedNavigationRail
إلىDismissibleModalWideNavigationRail
. (Ic9118) - تم تعديل
FloatingAppBarScrollBehavior
لاحتسابscreenOffset
تلقائيًا بدون الحاجة إلى@Composable
. (Idf349) - تعديلات على واجهة برمجة التطبيقات
LoadingIndicator
لإصلاح عملية التسمية في عنصر defaults تمت إضافة ثابتLoadingIndicatorElevation
فيPullToRefresh
. (I1d72b) - تعديلات على واجهة برمجة التطبيقات
LoadingIndicator
لإصلاح عملية التسمية في عنصر defaults تمت إضافة ثابتLoadingIndicatorElevation
فيPullToRefresh
. (I1d72b) - تمت إضافة مَعلمتَي
amplitude
وwaveSpeed
إلى الصيغ غير المحدّدة منLinearWavyProgressIndicator
وCircularWavyProgressIndicator
. (I2a0c5) - أن تتيح تغيير شكل زر التبديل للرمز استنادًا إلى حالته (مضغوط أو تم وضع علامة عليه) (Ibc781)
- تعديل فئة أسلوب الخط لتتوافق مع مقاييس الأنواع المميّزة (Ifa13c)
SplitButton
يتم تغيير الشكل استنادًا إلى الحالة التلقائية / المضغوطة. تمت إزالة واجهة برمجة التطبيقاتAnimatedTrailingButton
لأنّ واجهة برمجة التطبيقاتTrailingButton
يمكنها تقديم عمليات التخصيص نفسها (I95066)- أضِف مُعدِّلًا لإضافة تأثير متحرك إلى عرض رمز التطبيق المصغّر المفعّل و إخفائه، مثلاً عند الانتقال للأعلى أو للأسفل في المحتوى. (I8338d)
- إضافة أشكال مجموعات الأزرار المتصلة والمسافات إلى
ButtonGroupDefaults
لاستخدامها في عيّنة (I68e30) - إضافة زر مُقسَّم إلى مساحة فارغة أفقية للزرّ الأخير وتفعيل الوضع المُحسَّن للعرض على الشاشة من خلال احتساب الاختلافات بين زوايا البداية والنهاية (I122e2)
- نقدّم لك
MotionScheme
جديدًا من Material Design للسماح بضبط مخطط لحركة المكوّن. يتم ضبط المخطط من خلالMaterialTheme
. (Id50c2)
إصلاح الأخطاء
- طبِّق فهرس التنقّل الصحيح للتركيز على
Scaffold
عنصرَي Composables فرعيَّين. ويكون الترتيب على النحو التالي:topBar
وbottomBar
وشريط التطبيقات المصغّرة والمحتوى وشريط التطبيقات المصغّرة. (I5936b) - تم إصلاح مشكلة في
DatePicker
وDateRangePicker
حيث لم تبدأ بعض عناصر التاريخ (مثل أسماء الأشهر) بحرف كبير في لغات وإطارات تنسيق معيّنة. (I1430f) - دمج الرموز المميّزة لمكوّنات زرّ الإجراء الرئيسي وقائمة زرّ الإجراء الرئيسي (تعديلات مرئية بسيطة على الحشوات والنص) (Ib57f3)
- أصبح
ModalBottomSheet
الآن أولاً في ترتيب التنقّل الدلالي، يليه الشاشة البينية. (I436f9، b/358594665) - حلّ مشكلة عدم اختفاء شريط التطبيق السفلي بالكامل عند التمرير تحت حبوبة التنقّل في وضع "ملء الشاشة" (I3ee21)
Compose Material3 الإصدار 1.3
الإصدار 1.3.1
30 تشرين الأول (أكتوبر) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.1
. يتضمّن الإصدار 1.3.1 عمليات الربط هذه.
إصلاح الأخطاء
- يعدّل
DatePicker
وDateRangePicker
الآن الشهر المعروض بشكل صحيح عند ضبطه من خلالdisplayedMonthMillis
الولاية. (If9e47، b/333414302) - إصلاح الأعطال في
DatePicker
وDateRangePicker
عند ضبط الحد الأدنى للسنة القابلة للاختيار على سنة مستقبلية (I78656، b/319395747) - حلّ مشكلة في أداة اختيار التاريخ لتعديل واجهة المستخدم عند تطبيق مثيل
SelectableDates
معدَّل (Iad59a، b/290135807، b/339898760) - غيِّر الأولوية المخصّصة لإعادة الاتصال بالخلفية والتي تستخدمها الأوراق السفلية إلى
PRIORITY_DEFAULT
للسماح بإغلاق لوحة مفاتيح IME أولاً. (I447fb)
الإصدار 1.3.0
4 أيلول (سبتمبر) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0
. يحتوي الإصدار 1.3.0 على عمليات الربط هذه.
التغييرات المهمة منذ الإصدار 1.2.0
الميزات الرئيسية في الإصدار 1.3.0
مكونات جديدة في Material Design 3
- منصّة العرض الدوّارة
-
HorizontalMultiBrowseCarousel
وHorizontalUncontainedCarousel
تحسينات على مكوّنات Material Design 3 الحالية
-
- [
ModalBottomSheet
] تتوفّر الآن ميزة "الرجوع التوقّعي" على أجهزة U+ (Iccf32 وb/281967264 وb/304850357). - [
SearchBar
] تتيح الآن إيماءة "إظهار شاشة الرجوع" على الإصدار 14 من نظام التشغيل Android والإصدارات الأحدث (I657f8) - تتيح الآن ميزة "لائحة التنقّل" (
ModalDrawerSheet
وDismissibleDrawerSheet
) ميزة "الرجوع التوقّعي" على U+ كميزة اختيارية (Ie5b0b). - تتيح
DropdownMenu
الآن تخصيص اللون والشكل والارتفاع والحدود. (I8e981،b/289554448، b/301887035، b/283654243) - تم تعديل شريط التمرير لتحسين إمكانية الوصول من خلال إضافة فاصل ومؤشر للتوقف. (I3058e)
- تم تعديل
ProgressIndicator
لتحسين إمكانية الاستخدام من خلال إضافة فاصل ومؤشر محطة. (I21451) - تمت إضافة علامة تبويب تلقائية لمعلومات التلميح الغنية، مع السماح بعرض علامة تبويب مخصّصة عند تحديد علامة
LayoutCoordinates
. (Ifd42c) التغييرات التي قد تؤدي إلى أعطال - واجهات برمجة التطبيقات الجديدة لميزة "السحب لإعادة التحميل":
- تم تبسيط السمة
PullToRefreshState
لاستخدام القيم الكسورية بدلاً من وحدات Dp. - يتحكم المستخدم في حالة
isRefreshing
بدلاً منPullToRefreshState
. - تم فصل عملية الربط المتداخلة للانتقال إلى أعلى أو أسفل الصفحة عن
PullToRefreshState
. يتم التعامل مع ذلك من خلالPullToRefreshBox
أوModifier.pullToRefresh
الجديدَين. - يشكّل هذا التعديل تغييرًا جذريًا في واجهات برمجة التطبيقات التجريبية السابقة. (I0adeb، b/314496282، b/317177684، b/323787138، b/324573502، b/317177683) التغييرات المرئية التي تؤدي إلى إيقاف التوافق
- تم تبسيط السمة
- عدِّل تراكب حالة التركيز ليكون 0.1f لضمان تباين ألوان كافٍ. (I7ea77)
- تعديلات طفيفة على الإعدادات التلقائية للون السطح والخلفية في
lightColorScheme
وdarkColorScheme
(I9db52) - تم تعديل ألوان شريط التمرير و
ProgressIndicator
لتلبية مواصفات التباين غير النصي الجديدة. (I26807) - يتم الآن استخدام
SurfaceContainer
خيار من خلال المكوّنات. إنّ المكوّنات التي كانت تحسب اللون رسميًا باستخدامSurface
وTonalElevation
تستخدم الآن أدوارSurfaceContainer
تلقائيًا، وهي لا تتأثر بزيادة القيمة اللونية. (b/304584161) - تم تعديل الأدوار الأساسية لسطح العرض وحاويات السطح قليلاً، ما يوفّر المزيد من الألوان في المظهرين الفاتح والداكن. (I677a5)
- تم ترقية واجهات برمجة التطبيقات التجريبية إلى الإصدار الثابت.
- أضفنا تحسينات على الأداء
الإصدار 1.3.0-rc01
21 آب (أغسطس) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-rc01
. يتضمّن الإصدار 1.3.0-rc01 عمليات الربط هذه.
إصلاح الأخطاء
- أصبح
ModalBottomSheet
الآن أولاً في ترتيب التنقّل الدلالي، يليه الشاشة البينية. (I436f9، b/358594665)
الإصدار 1.3.0-beta05
24 تموز (يوليو) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-beta05
. يتضمّن الإصدار 1.3.0-beta05 عمليات الربط هذه.
- تم حلّ مشكلة عدم ظهور محتوى
BottomSheet
أو ظهوره بشكل غير كامل على نظامَي التشغيل Android N وO (a10a2d). - تم زيادة حدود الدلالات الخاصة بشريط التمرير لكي يعرض
TalkBack
مؤشرات التركيز بشكل صحيح حول إصبعَي التمرير. (0b5a1d)
الإصدار 1.3.0-beta04
26 حزيران (يونيو) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-beta04
. يتضمّن الإصدار 1.3.0-beta04 هذه المراجعات.
الإصدار 1.3.0-beta03
12 يونيو 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-beta03
. يتضمّن الإصدار 1.3.0-beta03 عمليات الربط هذه.
المساهمة الخارجية
- إتاحة
androidx.compose.material3.DropdownMenu
من مجموعة المصادر المشتركة (If62c0)
الإصدار 1.3.0-beta02
29 أيار (مايو) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-beta02
. يتضمّن الإصدار 1.3.0-beta02 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- تتوافق
Modifier.pullToRefreshIndicator
مع ميزة "إظهار/إخفاء المحتوى"، لذا عليك تعديل واجهات برمجة التطبيقات الخاصة بميزة "السحب للتحديث" لتصبح "مفعّلة" قيمة منطقية بدلاً من دالة lambda. إتاحة محاذاة المحتوى فيPullToRefreshBox
(I75679) - جعل
TooltipScope
واجهة مغلقة وإنشاء عملية تنفيذ داخلية لاستخدامها فيTooltipBox
وLabel (I3833e) - تمت إضافة مُعدِّلَين جديدَين إلى
CarouselItemScope
-maskClip
وmaskBorder
- لإضافة شكل وحدود بسهولة إلى أي عنصر في لوحة العرض الدوّارة (Id67a1). - أصبحت
TimePickerState
الآن واجهة تتيح ضبط الوقت (I88546). - تم تعديل واجهة برمجة التطبيقات لتنسيق الروابط: تم نقل
TextLinkStyles
إلىTextStyle
وإزالةTextDefaults
من المادة. (I5477b)
إصلاح الأخطاء
- أصبحت رموز حالة
ModalBottomSheet
وشريط التنقّل تستجيب الآن لحالة المظهر الداكن. (Ie1fe7، b/338342149) - تمت إضافة دلالات إغلاق الورقة إلى
ModalBottomSheet
الشاشة البينية. (0e61cb،b/328801864)
المساهمة الخارجية
- إتاحة
androidx.compose.material3.AlertDialog
من مجموعة المصادر الشائعة (Ia33f5) - إتاحة
ModalBottomSheet
من مجموعة المصادر الشائعة (Id7cc7)
الإصدار 1.3.0-beta01
14 أيار (مايو) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-beta01
. يتضمّن الإصدار 1.3.0-beta01 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- استخدام
DpSize
بدلاً منCaretProperties
جارٍ إزالةCaretProperties
. أعِد تسميةCaretScope
إلىTooltipScope
. (Id9a76) - تم تعديل واجهة برمجة التطبيقات للحصول على روابط ذات مظهر Material في النص. على وجه التحديد، تمّت إزالة الطرق من
TextDefaults
لإنشاءLinkAnnotations
ذات طابع معيّن وتحليل HTML باستخدام روابط ذات طابع معيّن. بدلاً من ذلك، تمت إضافة فئةTextLinkStyles
تتيح تصميم الروابط كمَعلمة إلى عنصر Text composable. (I31b93)
الإصدار 1.3.0-alpha06
1 مايو 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-alpha06
. يتضمّن الإصدار 1.3.0-alpha06 عمليات الربط هذه.
التغييرات التي قد تؤدي إلى حدوث أعطال
واجهات برمجة التطبيقات الجديدة لميزة "السحب لإعادة التحميل":
- تم تبسيط سمة
PullToRefreshState
لاستخدام القيم الكسورية بدلاً من وحدات Dp. - يتحكم المستخدم في حالة
isRefreshing
بدلاً منPullToRefreshState
. - تم فصل عملية الربط المتداخلة للانتقال إلى أعلى أو أسفل الصفحة عن
PullToRefreshState
. يتم التعامل مع ذلك من خلالPullToRefreshBox
أوModifier.pullToRefresh
الجديدَين. - هذا التعديل هو تغيير جذري في واجهات برمجة التطبيقات التجريبية السابقة. (I0adeb، b/314496282، b/317177684، b/323787138، b/324573502، b/317177683)
- تم تبسيط سمة
تغييرات واجهة برمجة التطبيقات
- تمّت إزالة
RippleConfiguration#isEnabled
، وتمّ جعلLocalRippleConfiguration
قابلاً للحذف. لإيقاف تأثير التموج، بدلاً من تقديمRippleConfiguration
معisEnabled = false
، قدِّمnull
إلىLocalRippleConfiguration
. (I22725) ModalBottomSheet
يرسم الشاشة المصغّرة بشكل أدق فوق شريط الحالة عند تفعيل وضع "ملء الشاشة". يمكن الآن لمحتوى اللوحة السفلية المشروط أن يشغل مساحات مضمّنة في النافذة، ما يسمح بعرض محتوى مرئي فوق شريط التنقّل. تمت إعادة تسمية المَعلمةModalBottomSheet
windowInsets
إلىcontentWindowInsets
لتحديد مكان تطبيق الأجزاء المُدمَجة، ولم تعُد هذه الأجزاء مرتبطة بمنطق النافذة. تم تغيير نوعcontentWindowInsets
إلى دالة تعرضWindowInsets
، للسماح بحلّها في نافذتها الجديدة. (I39630 وb/274872542 وb/300280229 وb/290893168)- يستخدم كلّ من
PrimaryScrollableTabRow
وSecondaryScrollableTabRow
الآن تنسيقًا مخصّصًا بدلاً من التركيب الفرعي، ما من شأنه تحسين الأداء. (I991e0) - تم توفير خيار تنسيق حالة الضغط على الروابط النصية بالإضافة إلى التنسيق العادي والتنسيق عند التمرير فوق الرابط والتركيز عليه. تحتوي كل طرق
TextDefaults
على وسيطةpressedStyle
لدعم ذلك. (Ic473f، b/139312671)
إصلاح الأخطاء
- تتطابق الآن نقاط تثبيت سحب "درج التنقّل" مع عرض
drawerContent
. (Ibc72f، b/245355396) OutlinedTextField
يراعي الآن سمك الحشو العلوي للعلامة حجم خط النظام. (Idc781)- تمّ تحديد موقع الحزمة الثابت على
CalendarLocale
. (Ifa235) - [الرجوع التلقائي] تعديل الصور المتحركة لإيماءة الرجوع التلقائي لاستخدام منحنى الاستقراء (0.1, 0.1, 0, 1) (I2591a)
الإصدار 1.3.0-alpha05
17 نيسان (أبريل) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-alpha05
. يحتوي الإصدار 1.3.0-alpha05 على عمليات الربط هذه.
الميزات الجديدة
- تحتوي
SearchBar
وDockedSearchBar
على وظائف زائدة جديدة تأخذ مَعلمة حقل نصي. يتيح ذلك تصميم حقل النص بشكل منفصل عن بقية شريط البحث، بالإضافة إلى إدخال حقول نص مخصّصة. تمّ إتاحة حقل النص للتنفيذ الحالي على النحو التالي:SearchBarDefaults.InputField
. (I50c73 وb/275074248 وb/278773336 وb/326627700) - تمت إضافة دالة lambda
drawTick
إلى واجهة برمجة التطبيقات العامة من أجل تخصيص علامات التبويب إذا لزم الأمر (I0c048).
تغييرات واجهة برمجة التطبيقات
- تمّ توفير خيار تنسيق حالة الضغط على روابط النصوص بالإضافة إلى التنسيق العادي، وتنسيق التمرير فوق الرابط والتركيز عليه (I5f864، b/139312671)
- تم تعديل
CarouselItemInfo
لعرض مستطيل قناع يتم اقتصاص العنصر من خلاله (I785d8) - تمت إزالة
BasicTooltipState
من واجهة برمجة التطبيقات العامة لنظام Material 3. يتم دمج وظائفها معTooltipState
إلى أن يتم استقرارBasicTooltip
في Foundation. (Icda29) - تمت إضافة عنصر
TextDefaults
يحتوي على طرق لإنشاءLinkAnnotation
وتحليل سلسلة مُشارَكة بعلامة HTML تُطبّقMaterialTheme
على الروابط (I98532 وb/139312671). - لم تعُد
ExposedDropdownMenuBoxScope
تسمح بالفئات الفرعية. تحتوي القوائم المنسدلة الظاهرة الآن علىMenuAnchorType
التي يجب تمريرها إلىmenuAnchor
لتوفير ميزات أفضل لإمكانية الاستخدام. يجب استخدام هذا الإجراء بدلاً من تمريرfocusable
إلىExposedDropdownMenu
، الذي تم إيقافه نهائيًا الآن. يحتويmenuAnchor
على مَعلمة جديدة للتحكّم في حالةenabled
. (I55ee6 وb/257209915 وb/308840226) - تم إصلاح لون الحدود في
OutlinedButton
عند إيقافه. تمت إضافةButtonDefaults.outlinedButtonBorder("enabled")
overload التي تأخذ الحالة مفعَّلة. (Ie650b، b/318461363) - تمت إضافة فئة
CarouselItemInfo
جديدة لمساعدة العملاء في الحصول على معلومات عن أحجام السلع. (I9070c) - تم إيقاف رمز إنشاء
ColorScheme
بدون حاويات السطح نهائيًا. يُرجى نقل البيانات إلى أداة الإنشاء التي تتضمّن حاويات السطح. (I35c11) - [مخطّط]
TextFieldDefaults
تمت إعادة تسميةContainerBox
إلىContainer
. (Ie8d3b)
إصلاح الأخطاء
- لن يتم الانتقال في
BottomSheetScaffold
من خلال الانتقال المُدمَج إذا كانت قيمةsheetSwipeEnabled
غير صحيحة. (I5e1c1، b/306464779) - تمت إزالة بعض التعليقات التوضيحية لميزة "تفعيل ميزة
ExperimentalMaterial3Api
" فيIconButtonSamples.kt
. (I111d1)
الإصدار 1.3.0-alpha04
3 نيسان (أبريل) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-alpha04
. يتضمّن الإصدار 1.3.0-alpha04 عمليات الربط هذه.
الميزات الجديدة
- تمت إضافة إصدارَين تجريبيَّين من منصّة العرض الدوّارة في Material3، وهما
HorizontalMultiBrowseCarousel
وHorizontalUncontainedCarousel
(I88d64). - تم تعديل "درج التنقّل" في ميزة "إنشاء" في الإصدار 3 من تطبيق Gmail (
ModalDrawerSheet
وDismissibleDrawerSheet
) لتفعيل ميزة "الرجوع التوقّعي" في الإصدار 14 من تطبيق Gmail (Ie5b0b) - تمت إضافة واجهة برمجة تطبيقات جديدة في رمز التطبيق للسماح بتمرير صبغة اللون كعنصر lambda لتجنُّب إعادة التركيب. (I5b5a2)
- تتيح واجهات برمجة تطبيقات شريط التطبيقات العلوي الآن الارتفاعات المخصّصة لكل من الأقسام الثابتة والقابلة للطي. (Ib8b0c، b/323403446)
تغييرات واجهة برمجة التطبيقات
- تتيح واجهات برمجة تطبيقات شريط التطبيقات العلوي الآن الارتفاعات المخصّصة لكل من الأقسام الثابتة والقابلة للطي. تم إصلاح مشكلة كانت تؤدي إلى إعادة إنشاء أشرطة التطبيقات العلوية ذات السطر الواحد مرات كثيرة جدًا عند الانتقال للأعلى أو للأسفل في المحتوى. تم حلّ مشكلة
MediumTopAppBar
اقتطاع العناوين على الأجهزة التي تستخدم إعدادات كبيرة للخط/العرض. (Ib8b0c، b/323403446، b/300953236، b/286296147، b/330410290، b/308540676) - أصبحت الإصدارات
SegmentedButton
وواجهات برمجة التطبيقات المرتبطة بها مستقرة الآن (I8a158). - تم تصنيف الإصدارات
SwipeToDismissBox
وSwipeToDismissBoxDefaults
وSwipeToDismissBoxState
وSwipeToDismissBoxValue
على أنّها مستقرة. (I5f000) - تمت إزالة واجهات برمجة التطبيقات وفهارس
DismissDirection
وDismissValue
التي تم إيقافها نهائيًا. (I89ccd) - تمت إضافة علامة تجريبية إلى عنصر
CarouselState
المصاحب لمنصّة العرض بعناصر متغيّرة. (I94154) - إيقاف
LocalMinimumInteractiveComponentEnforcement
نهائيًا وتقديمLocalMinimumInteractiveComponentSize
ليحلّ محلّه (I7a7ac) - أصبحت طريقة وضع تصميم
SearchBarColors
علنية الآن. (I769ca) - تمت إضافة مَعلمة
gesturesEnabled
إلىSwipeToDismissBox
. (Idc59f، b/324170119) - تمّت إزالة واجهات برمجة تطبيقات حقول النصوص التي تم وضع علامة عليها باعتبارها متوقّفة نهائيًا وتجريبية. (I1305f)
الإصدار 1.3.0-alpha03
20 مارس 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-alpha03
. يتضمّن الإصدار 1.3.0-alpha03 عمليات الربط هذه.
التغييرات المرئية التي قد تؤدي إلى حدوث أعطال
- عدِّل تراكب حالة التركيز ليكون 0.1f لضمان تباين ألوان كافٍ. (I7ea77)
- تعديلات طفيفة على الإعدادات التلقائية للون السطح والخلفية في
lightColorScheme
وdarkColorScheme
(I9db52)
الميزات الجديدة
- تمّت إضافة مَعلمات لتخصيص
ExposedDropdownMenu
. على وجه الخصوص، تحتوي القوائم الآن على مَعلمةfocusable
(true
التلقائية) التي يجب ضبطها علىfalse
عند العمل مع حقول نصية قابلة للتعديل. (I4184c وb/323694447 وb/278609042)
تغييرات واجهة برمجة التطبيقات
- تمت إزالة العلامة
ScaffoldSubcomposeInMeasureFix
. (Ie2a4b) - تم وضع علامة "
@Immutable
" علىNavigationRailItemColors
. (If6112، b/327660613) - تم وضع علامة "
@Immutable
" علىNavigationBarItemColors
. (I42a30، b/298064514) - إعادة ترتيب المَعلمات في العنصر القابل للتجميع "مسار شريط التمرير" (I9f315)
- يتم تنفيذ
ExposedDropdownMenu
الآن باستخدامPopup
. من المفترض أن يكون السلوك متطابقًا باستثناء القوائم التي يمكن التركيز عليها والتي تحتوي على حقول نصية قابلة للتعديل، إذ يمكن إغلاقها عند الكتابة على لوحة المفاتيح.
إصلاح الأخطاء
- تم تعديل الأدوار الأساسية لسطح العرض وحاويات السطح قليلاً، ما يوفّر المزيد من الألوان في المظهرين الفاتح والداكن. (I677a5)
- تم تعديل ألوان شريط التمرير و
ProgressIndicator
لتلبية مواصفات التباين غير النصي الجديدة. (I26807) - عدِّل تراكب حالة التركيز ليكون 0.1f لضمان تباين ألوان كافٍ. (I7ea77)
- تعديلات طفيفة على الإعدادات التلقائية للون السطح والخلفية في
lightColorScheme
وdarkColorScheme
(I9db52)
الإصدار 1.3.0-alpha02
6 مارس 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-alpha02
. يتضمّن الإصدار 1.3.0-alpha02 عمليات الربط هذه.
تغييرات واجهة برمجة التطبيقات
- جعل حالات شريط التمرير ثابتة مرة أخرى إعادة ضبط
State.onValueChangeFinished
على أنّه قيمة يتم تغليفonValueChangeFinished
فيrememberUpdatedState
. (I82ab2، b/322269951) - تستخدم مكونات التنقّل الآن أدوار
SurfaceContainer
الجديدة. يوفّرDrawerDefaults
الآن سمتَيstandardContainerColor
وmodalContainerColor
مختلفتَين. تم تغيير اسم "DrawerDefaults.ModalDrawerElevation
" إلى "0.dp
". (I7fbac) - إزالة
@Stable
من الولاياتSlider
لأنّنا سنغيّرstate.onValueChangeFinished
إلىvar
(Ied34a، b/322269951) - أصبحت مواصفات الصور المتحركة
ModalBottomSheet
وStandardBottomSheet
الآنTweenSpec
، بعد أن تم تعديلها من صورة متحركة ربيعية. يحلّ ذلك مشكلة الزيادة المرئية في القيمة. تمّت الآن إزالة وظائف إنشاءSheetState
التي تمّ إيقافها نهائيًا بدون كثافة. (I7babc، b/285847707)
إصلاح الأخطاء
- يتم الآن استخدام
SurfaceContainer
خيار من خلال المكوّنات. إنّ المكوّنات التي كانت تحسب اللون رسميًا باستخدام Surface وTonalElevation
تستخدم الآن أدوارSurfaceContainer
تلقائيًا، وهي لا تتأثر بزيادة القيمة اللونية. (b/304584161) - تم إصلاح الخلل الذي كان يتسبب في ظهور لون حاوية
ElevatedFilterChip
غير المحدّدة والمتوقفة باللون الأسود. (I400e6، b/322407043) - إصلاح مؤشر التقدّم غير المحدّد عندما يكون التقدّم 0 (Id6582)
- تم إصلاح مشكلة في
Slider
وRangeSlider
في التنسيق من اليمين إلى اليسار (Iab0e1) - إضافة
SliderRangeTolerance
لحساب نطاق شريط التمرير لأنّ تقريب القيمة العائمة قد يكون غير دقيق (Ic918a، b/324934900) - تأكَّد من أنّ
DatePickerDialog
يعرض أزراره عند دمجDateRangePicker
أو عند عرض أي نوع من أداة اختيار التاريخ على شاشات صغيرة باستخدام خطوط أكبر حجمًا. (Ie4758، b/325107799، b/277768544) - يستخدم
Menu
الآن دورSurfaceContainer
للون الحاوية. تم تغيير اسم "MenuDefaults.TonalElevation
" إلى "0.dp
". (I135b7) - يستخدم
TextField
الآن دورSurfaceContainerHighest
للون الحاوية. (I4dced) - تستفيد الشرائح المميّزة الآن من دور
SurfaceContainerLow
(I7cd2f). - لون حاوية
DatePicker
هو الآنSurfaceContainerHigh
. تم تغيير اسم "DatePickerDefaults.TonalElevation
" إلى "0.dp
". (Ida753) - تعديل لون حاوية "الأوراق السفلية" ولون مقبض السحب (I72a0a)
- لون حاوية
RichTooltip
هو الآنSurfaceContainer
. (Ia8b45) - لون حاوية
SearchBar
هو الآنSurfaceContainerHighest
. تم تغيير اسم "SearchBarDefaults.TonalElevation
" إلى "0.dp
". (I88604) - إيقاف مفتاح التبديل الخاص بالتعديلات وإزالة الاختيار من المقاطع الصوتية أو الرموز للاستفادة من دور اللون
SurfaceContainerHighest
(I7687a) - لون حاوية
AlertDialog
هو الآنSurfaceContainerHigh
. (Ie0433) - لون حاوية
BottomAppBar
هو الآنSurfaceContainer
. أصبح لونTopAppBar
onScroll
الآنSurfaceContainer
. (I41630) - لون حاوية
ElevatedCard
هو الآنSurfaceContainerLow
. لون حاويةFilledCard
هوSurfaceContainerHighest
. (I35141) - لون حاوية
ElevatedButton
هو الآنSurfaceContainerLow
. أصبح لون حاويةFilledIconButton
عند عدم اختيارها هوSurfaceContainerHighest
. (I792c9) - تعديل لون حاوية
TimePicker
ودور لون خلفية الساعة إلىSurfaceContainerHighest
(I43b93)
الإصدار 1.3.0-alpha01
21 شباط (فبراير) 2024
تم إصدار androidx.compose.material3:material3-*:1.3.0-alpha01
. يحتوي الإصدار 1.3.0-alpha01 على هذه المراجعات.
الميزات الجديدة
- تعديل Compose M3
ModalBottomSheet
لتفعيل ميزة "الترجيع التوقّعي" على U+ (Iccf32 وb/281967264 وb/304850357) - تم تعديل Compose M3
SearchBar
ليتيح استخدام ميزة "الترجيع التلقائي" على U+ (I657f8) - تم تعديل شريط التمرير لتحسين إمكانية الوصول من خلال إضافة فاصل ومؤشر للتوقف. (I3058e)
- تم تعديل
ProgressIndicator
لتحسين إمكانية الاستخدام من خلال إضافة فاصل ومؤشر محطة. (I21451) - من خلال إضافة علامة تبويب تلقائية للنص التوضيحي الموسّع، تتيح واجهة برمجة التطبيقات الجديدة للنص التوضيحي الموسّع الآن رسم علامة تبويب مخصّصة عند تحديد علامة الربط
LayoutCoordinates
. (Ifd42c)
التغييرات في السلوك
- تم نقل مكونات Material لاستخدام واجهات برمجة التطبيقات الجديدة للتموّج، ولم تعُد تطلب
RippleTheme
.
تغييرات واجهة برمجة التطبيقات
- أصبحت ميزة
drawStopIndicator
الممتعة متاحة للجميع الآن. (I3f59f) - وضع علامة على دالة
formatWithSkeleton
فيDatePicker
كداخلية (Ic65dc) - تتيح
DropdownMenu
الآن تخصيص اللون والشكل والارتفاع والحدود. (I8e981، b/289554448، b/301887035، b/283654243) - تم تعديل مكونات Material3 التي تعرض
MutableInteractionSource
في واجهة برمجة التطبيقات لتعرض الآنMutableInteractionSource
قابلاً للتغيير ويكون الإعداد التلقائي له هوnull
. ما مِن تغييرات دلالية هنا: يعني تمرير القيمة null أنّك لا تريد رفعMutableInteractionSource
، وسيتم إنشاؤه داخل المكوّن إذا لزم الأمر. يؤدي التغيير إلى قيمة فارغة إلى عدم تخصيص بعض المكوّناتMutableInteractionSource
مطلقًا، كما يسمح للمكوّنات الأخرى بإنشاء مثيل بشكل كسول فقط عند الحاجة، ما يؤدي إلى تحسين الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدمMutableInteractionSource
الذي ترسله إلى هذه المكوّنات، ننصحك بإرسال قيمة فارغة بدلاً من ذلك. وننصحك أيضًا بإجراء تغييرات مشابهة في مكوّناتك. (I41abb، b/298048146) - تضيف
RippleConfiguration
وLocalRippleConfiguration
للسماح بتخصيص التموجات لكل مكوّن / شجرة فرعية باستخدام قيم ثابتة. على سبيل المثال، لتغيير لون مكوّن لا يمكنك التحكّم فيه أو إيقاف تأثير التموج لمكوّن معيّن. في معظم الحالات، يجب استخدام القيم التلقائية: فهذه واجهات برمجة التطبيقات هي مخرج للنجاة من أجل تخصيص مكوّنات فردية / أشجار فرعية محدودة. لإجراء تغييرات أوسع وأنظمة تصميم مخصّصة، عليك إنشاء تأثير تموج خاص بك باستخدامcreateRippleModifierNode
. (I7b5d6، b/298048146) - إضافة واجهة برمجة تطبيقات جديدة للتأثير المتموج في material3 تحلّ محل
rememberRipple
المتوقّفة نهائيًا تُضيف هذه الطريقة أيضًاCompositionLocal
وLocalUseFallbackRippleImplementation
مؤقتَين لإعادة مكونات material3 إلى استخدام واجهات برمجة التطبيقاتrememberRipple
أوRippleTheme
التي تم إيقافها نهائيًا. ستتم إزالة هذا الإجراء في الإصدار الثابت التالي، وهو مخصّص فقط لمساعدة مؤقتة في نقل البيانات في الحالات التي تقدّم فيهاRippleTheme
مخصّصًا. (I34cbc، b/298048146)
إصلاح الأخطاء
- تمت إزالة التكوين الفرعي داخل
ModalBottomSheet
لتحسين الأداء. تم إصلاح مشكلة تؤدي إلى تعطُّلModalBottomSheet
في سيناريوهات معيّنة معLookaheadScope
. (I2a198) - تمت إزالة التكوين الفرعي داخل
BottomSheetScaffold
لتحسين الأداء. تم إصلاح مشكلة كانت تؤدي إلى تعطُّلBottomSheetScaffold
في سيناريوهات معيّنة معLookaheadScope
. (Ie6401) - تم تعديل محاذاة الشارة لتصبح أقرب إلى مركز محتوى العنصر الأساسي مقارنةً بأعلى يسار الصفحة. (I18a28)
- تم إصلاح مشكلة في تسهيل الاستخدام في
DateRangePicker
حيث تم نقل عنوان نص الشهر والسنة على أنّه قابل للتنفيذ لمستخدمي قارئ الشاشة وميزة "الوصول عبر مفتاح التحويل" وتطبيق Voice Access. (I2ac55) - تم إصلاح خطأ في ترتيب المَعلمات
mediumTopAppBarColors
. (Ibe64a)
الإصدار 1.2
الإصدار 1.2.1
6 مارس 2024
تم إصدار androidx.compose.material3:material3-*:1.2.1
. يحتوي الإصدار 1.2.1 على عمليات الربط هذه.
إصلاح الأخطاء
- اجعل حالات شريط التمرير ثابتة مرة أخرى. إعادة ضبط
State.onValueChangeFinished
على أنّه قيمة يتم تغليفonValueChangeFinished
فيrememberUpdatedState
. (Ie8fd0، b/322269951) - إزالة
@Stable
من الولاياتSlider
لأنّنا سنغيّرstate.onValueChangeFinished
إلىvar
(I82ba1، b/322269951) - إصلاح
NavigationBar
لون مخصّص لنسخه من الإعدادات التلقائية (80a779، b/326894020) - حلّ مشكلة التراجع في
ExposedDropdownMenu
ليصبح بالإمكان التركيز عليه مرة أخرى (3fcec1، b/323694447) - حلّ مشكلة تخزين ألوان الأزرار مؤقتًا (3e5bbcb/327371655)
الإصدار 1.2.0
7 شباط (فبراير) 2024
تم إصدار androidx.compose.material3:material3-*:1.2.0
. يحتوي الإصدار 1.2.0 على هذه المراجعات.
مشكلة معروفة
- تمّ رصد خطأ في العرض المرئي لميزة "الإنشاء" في الإصدار
PrimaryTabRow
كجزء من تغيير لتحسين الأداء. الحلّ هو استخدامTabRow
معTabRowDefaults.PrimaryIndicator
.
التغييرات المهمة منذ الإصدار 1.1.0
مكونات Material Design 3 الجديدة
- السحب للأسفل لإعادة التحميل
- زر مجزّأ
تحسينات على مكوّنات Material Design 3 الحالية:
- شريط التطبيق السفلي (محاذاة من اليمين إلى اليسار، إخفاء تلقائي عند الانتقال للأعلى أو للأسفل)
- تعديل مرئي على علامات التبويب
- الشارة (تعديل على المحاذاة)
تم ترقية واجهات برمجة التطبيقات التجريبية إلى الإصدار الثابت
تحسينات على الأداء
- يُرجى الاطّلاع على مشاركة المدونة هذه لمعرفة المزيد من التفاصيل.
الإصدار 1.2.0-rc01
24 كانون الثاني (يناير) 2024
تم إصدار androidx.compose.material3:material3-*:1.2.0-rc01
. يحتوي الإصدار 1.2.0-rc01 على هذه المراجعات.
إصلاح الأخطاء
- تم إصلاح خطأ في ترتيب المَعلمات
mediumTopAppBarColors
. (Ibe64a) - تم إصلاح خلل ظهر في
1.2.0-beta02
فيCardDefaults.cardColors
لم يؤدي إلى تعديلcontentColor
استنادًا إلى قيمة المَعلمةcontainerColor
. (Iee041، b/319671246) - تم إصلاح خطأ في
disabledContentColor
ظهر في1.2.0-beta02
وإضافة تحسين بسيط. (I6dda1، b/318428829)
الإصدار 1.2.0-beta02
10 كانون الثاني (يناير) 2024
تم إصدار androidx.compose.material3:material3-*:1.2.0-beta02
. يحتوي الإصدار 1.2.0-beta02 على هذه المراجعات.
خطأ معروف
- سيؤدي خطأ في
IconButtonColors
إلى ضبطdisabledContentColor
تلقائيًا على قيمة شفافية (0.38f) منLocalContentColor
بدلاً منcontentColor
المحدّد من قِبل المستخدم. ويتمثل الحلّ في ضبطdisabledContentColor
بشكل صريح. سيتم حلّ هذه المشكلة في الإصدار التالي.
تغييرات واجهة برمجة التطبيقات
- إضافة إمكانية تفعيل علامات الإقحام في نصائح واجهة المستخدم لواجهات برمجة التطبيقات Plain
Tooltip
(Ibf767) - تمت إعادة تسمية
SwipeToDismissState
وrememberSwipeToDismiss
وSwipeToDismissValue
ليصبح اسمها_SwipeToDismissBox_
. (I68d6d)
إصلاح الأخطاء
- تمّت معالجة قيمة الحشو في نهاية العنصر
ListItem
بما يتوافق مع المواصفات (Ibd68b، b/305342674). - تم الآن ربط لون المخطط للبطاقة المخطّطة بشكل صحيح بـ
OutlineVariant
. (I75480، b/310979715) - يتم الآن استخراج الألوان الديناميكية من أدوار الألوان المحدّدة في النظام. يؤدي ذلك إلى تحسين التباين للمحتوى الذي يمكن الوصول إليه، كما يتوافق اللون الديناميكي بشكلٍ أفضل مع مواصفات Material. (I1de96)
- تم إصلاح معالجة
ModalBottomSheet
للرجوع على Android T/13 والإصدارات الأحدث عندandroid:enableOnBackInvokedCallback="true"
. (I728dc، b/306196110)
الإصدار 1.2.0-beta01
13 كانون الأول (ديسمبر) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-beta01
. يحتوي الإصدار 1.2.0-beta01 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- وضع علامة "تجريبي" على
TabIndicatorScope
(I45c88) - إزالة واجهات برمجة التطبيقات التجريبية المتوقّفة نهائيًا لمعلومات التلميح (I438cb)
- غيِّر عمليات تحميل
TabRow
الجديدة لكي لا تستخدم التركيبات الفرعية. يؤدّي ذلك إلى طريقة مختلفة لإنشاء مؤشراتTabRow
باستخدام المُعدِّلات المخصّصة المقدَّمة. (Ife741) - إيقاف واجهات برمجة التطبيقات
DismissDirection
وDismissValue
نهائيًا وتم دمج هذه القيم معSwipeToDismissValue
التي تشير قيمها إلى موضعSwipeToDismissBox
واتجاهه. تم وضع علامةFloatRange
علىDismissState.progress
الآن بين0.0
و1.0
. تمّت الآن إزالةDismissState
المتوقّفة نهائيًا من Saver وConstructor. تم إعادة تصنيفSwipeToDismiss
كعنصر وحالة وكائن الإعدادات التلقائية على أنّها تجريبية. (Ib54f2)
إصلاح الأخطاء
- أصبح المؤشر التلقائي لـ
PullToRefresh
الآن رأس سهم مفتوحًا بدلاً من مثلث صلب. (I67be3)
الإصدار 1.2.0-alpha12
29 تشرين الثاني (نوفمبر) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha12
. يحتوي الإصدار 1.2.0-alpha12 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- يقبل
RangeSlider
الآن نطاق Kotlin (مثل0f..1f
) بدلاً من فئة قيمةFloatRange
مخصّصة. يستخدمSnapFlingBehavior.kt
الآن أيضًا نطاق Kotlin. (I025cb) - ضَع علامة على دوالّ مصنع "المُعدِّل" على أنّها
@Stable
. (Ib109f)
الإصدار 1.2.0-alpha11
15 تشرين الثاني (نوفمبر) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha11
. يحتوي الإصدار 1.2.0-alpha11 على هذه المراجعات.
الميزات الجديدة
- تنفيذ
PullToRefreshContainer
وPullToRefreshState
، اللذان يقدّمان معًا تنفيذ ميزة "السحب لإعادة التحميل" في Material3 (I16456، b/261760718)
تغييرات واجهة برمجة التطبيقات
- ضَع علامة على
SwipeToDismissBox
DismissDirection
وDismissValue
باعتبارها تجريبية. (I517b0) - أعِد تسمية
SwipeToDismiss
إلىSwipeToDismissBox
. أعِد تسميةbackground
إلىbackgroundContent
وdismissContent
إلى دالة لامداcontent
اللاحقة. (I7f4d3) - اجعل باني
ChipElevation
وSelectableChipElevation
متاحًا للجميع. (Ie0c48، b/308432421) - جارٍ إضافة
ModalBottomSheetProperties
. نقلsecurePolicy
إلىModalBottomSheetProperties
إضافةisFocusable
وshouldDismissOnBackPress
إلىModalBottomSheetProperties
تساعد هذه القيم المنطقية الجديدة في تحديد كيفية تعامل اللوحة السفلية المشروطة مع أحداث IME. (Iea56f، b/278216859) - تم تعديل حالتَي
RangeSlider
وSlider
لإزالةinitialOnValueChange
والبادئات الأولية وkdocs المناسبة. (I57d30) - إيقاف فئة
ChipBorder
واستدعاءاتها المرتبطة بها نهائيًا، وننصحك باستخدامBorderStroke
مباشرةً بدلاً من ذلك. (I89cc2) - أصبحت واجهات برمجة التطبيقات لميزة "التلميحات الأساسية"
@ExperimentalFoundationApi
. (I30b0b) - لم يعُد
TabRow
وScrollableTabRow
قديمَين. يتم وضع علامة "تجريبية" على الصيغتَين الأساسيتَين والثانويتَين الجديدتَين. (I0def6) - تستخدم شرائح الفلترة والإدخال الآن
BorderStroke
مباشرةً. (I07a8d) - يستخدم
SegmentedButton
الآنBorderStroke
مباشرةً. (I89b9b) - تمت إعادة تسمية الدالة العامة
AlertDialog
إلىBasicAlertDialog
، وتم إيقاف الدالة السابقة نهائيًا. (Idbe52) - عليك إعادة تسمية واجهات برمجة تطبيقات
SwipeToDismiss
إلىSwipeDismiss
، ويجب ترقية واجهات برمجة تطبيقاتSwipeDismiss
الجديدة إلى الإصدار الثابت. (I14cbe) - إضافة
tonalElevation
وshadowElevation
إلى واجهات برمجة التطبيقات الخاصة بنصائح التلميح بالإضافة إلى ذلك، تم نقل واجهات برمجة التطبيقاتTooltipBox
وPlainTooltip
وRichTooltip
إلى إصدار تجريبي مرة أخرى لأنّه تم إصدارها عن طريق الخطأ كإصدارات مستقرة. (If0f66، b/293939035) - ترقية واجهات برمجة تطبيقات الشرائح التجريبية إلى إصدارات مستقرة (Iea2c3)
- تمت إزالة التعليق التوضيحي
@ExperimentalMaterial3Api
من البطاقات القابلة للنقر في Material3. (I88dbf)
إصلاح الأخطاء
- تم إصلاح مشكلة تعطُّل
SwipeToDismiss
في سيناريوهات معيّنة باستخدام التنسيقَين "العرض المُسبَق" و"العرض البطيء" المتداخلَين. (Ica8d1، b/297226562)
الإصدار 1.2.0-alpha10
18 تشرين الأول (أكتوبر) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha10
. يحتوي الإصدار 1.2.0-alpha10 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- ترقية الإصدارَين
Badge
وBadgedBox
إلى الإصدار الثابت (I67f16، b/261565132) - إضافة
securePolicy
كمَعلمة إلىModalBottomSheet
، حتى يتمكّن المستخدمون من تحديد سلوكWindowManager.LayoutParams.FLAG_SECURE
(Icdac8، b/296250262) - تمت إضافة وظيفتَي تحميل زائدتَين جديدتَين لـ
LinearProgressIndicator
وCircularProgressIndicator
تأخذانprogress
كوسيطة lambda. من المفترض أن تحقّق هذه الإصدارات أداءً أفضل من الإصدارات السابقة. (I824e6، b/295616656) - إعادة تسمية
StandardSizeClasses
إلىAllSizeClasses
(I8cb07) - دمج دوالّ الحساب لفئات حجم النوافذ (Iad935)
إصلاح الأخطاء
- إصلاح مشكلة تعطُّل
DatePicker
عند النقر بسرعة على أزرار الأسهم للتنقّل عندما يكون الشهر المعروض على حافة النطاق المسموح به من السنوات (I46f36، b/290954897، b/297002119) - [شريط/قضيب التنقّل] السماح باستخدام لون شفاف للمؤشر (Ie0a9b، b/267289987)
الإصدار 1.2.0-alpha09
4 أكتوبر 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha09
. يحتوي الإصدار 1.2.0-alpha09 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تم نقل
ModalNavigationDrawer
وDismissibleNavigationDrawer
لاستخدام واجهات برمجة تطبيقاتAnchoredDraggable
الجديدة. تم استبدالanimateTo
فيDrawerState
بطريقتَي open وclose، ويتم الآن عرض القيمة المرجعية كقيمة عائمة بدلاً من عنصر حالة. يمكنك الوصول إلى هذا المرجع مباشرةً من خلالcurrentOffset
. (I0a72c) - تمت إضافة دوال غير قابلة للتجميع لإنشاء
DatePickerState
وDateRangePickerState
مباشرةً. يمكن استخدام هذه الدوالّ كبديل لدوالّrememberDatePickerState
وrememberDateRangePickerState
القابلة للتجميع عند الحاجة. (I70326، b/291524052) - يتوفّر الآن لعنصر
TabRows
الثابت والقابل للتنقّل الصيغتان "أساسية" و"ثانوية". ويتم ربطها بشكل صحيح بالألوان وسلوك المؤشر كما هو محدّد في Material3. - يعرض
PrimaryScrollableTabRow
وSecondaryScrollableTabRow
الآن حالة الانتقال إلى أعلى أو أسفل الصفحة. (Iec8f5، b/260572337) - إضافة مَعلمة
sheetMaxWidth
جديدة يمكن للمطوّرين ضبطها لتحديد الحد الأقصى للعرض الذي ستغطيه الورقة يمكن تمرير Dp.Unspecified للمَعلمة إذا أردت استخدام ورقة بيانات تمتد على عرض الشاشة بالكامل. (Ifb7c9، b/266697696) - إعادة إضافة واجهات برمجة التطبيقات
PlainTooltipBox
وRichTooltipBox
كطرق متوقّفة نهائيًا (I246fa)
إصلاح الأخطاء
- إصلاح عطل يحدث عند بدء تشغيل
DatePicker
باستخدامDatePickerFormatter
يحتوي على هياكل أساسية معيّنة للتاريخ تظلّ كما هي عند تحويلها إلى أنماط تواريخ (مثل YY) (I01f29)
الإصدار 1.2.0-alpha08
20 أيلول (سبتمبر) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha08
. يحتوي الإصدار 1.2.0-alpha08 على هذه المراجعات.
تغيير في السلوك قد يؤدي إلى حدوث أعطال
- أصبحت
ColorScheme
غير قابلة للتغيير، ما يجعل تعديلات الألوان الفردية أقل فعالية، ولكنّها تزيد من فعالية الاستخدام الأكثر شيوعًا للألوان. يرجع سبب هذا التغيير إلى أنّ معظم التطبيقات لن تتضمن تغيير ألوان فردية كحالة استخدام رئيسية. لا يزال هذا الإجراء ممكنًا، ولكنّه سيؤدي إلى إعادة التركيب أكثر من ذي قبل، ما سيؤدي بدوره إلى تقليل عدد الاشتراكات في الحالة بشكل كبير من خلال جميع رموز Material، وسيؤثّر في تكلفة الإعداد وتكلفة وقت التشغيل لعدد أكبر من حالات الاستخدام العادية. (Ic447d، b/297212873) - لم تعُد الدرجات اللونية المتغيرة متحركة في حالات التفاعل المختلفة لمطابقة المواصفات. (Icdd12)
تغييرات واجهة برمجة التطبيقات
- تمت إضافة
BottomAppBar
جديدة تأخذBottomAppBarScrollBehavior
كمَعلمة لإخفائها تلقائيًا عند الانتقال إلى المحتوى. تمت أيضًا إضافةFabPosition.EndOverlay
للسماح للزرّ المصغّر للإجراءات السريعة بتداخل شريط التطبيقات السفلي في الإطار المعدّ للعرض بدلاً من تثبيته فوقه. (Iecb47) - تمت إضافة مكوّن تصنيف بسيط يستند إلى
BasicTooltipBox
لن يتم إغلاقه عند النقر خارج حدود التصنيف. (I821f9)
إصلاح الأخطاء
- تمت إزالة استخدام
rememberSaveable
في نصائح التلميح. (Icc131، b/299500338) - تمّ إدخال علامة مؤقتة للتحكّم في ما إذا كان يجب أن يقيس Scaffold عناصره الفرعية أثناء القياس أو أثناء تحديد موضع الإعلان. سيتمّ القياس تلقائيًا في القياس. إذا كنت تواجه مشاكل في السلوك الجديد، يُرجى الإبلاغ عن مشكلة. (I0b354)
- تمّ إصلاح مشكلة "ملء الشاشة أفقيًا من الحافة إلى الحافة" في
BottomSheet
باستخدام القياس الصحيح لعرض شاشة الجهاز. (I1df0c، b/299058752) - تم إصلاح خطأ كان يمنع
ModalBottomSheet
من الاتصال بـonDismissedRequest
عند إغلاقه من خلال التمرير سريعًا للأسفل على ورقة البيانات. (Idfdd8)
الإصدار 1.2.0-alpha07
6 أيلول (سبتمبر) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha07
. يحتوي الإصدار 1.2.0-alpha07 على هذه المراجعات.
الميزات الجديدة
- تمت إضافة ميزة "عرض الرموز بشكل معكوس تلقائيًا" في الإصدار
compose material 1.6.0-alpha05
. يُرجى الاطّلاع على ملاحظات الإصدار لمعرفة تفاصيل حول هذه الميزة.
تغييرات واجهة برمجة التطبيقات
- ينفذ
SliderState
DraggableState
(I9b116). - غيِّر الشكل ليكون مَعلمة مطلوبة. أعِد تسمية
position
إلىindex
في الدالة المساعِدة للشكل. (I34941) - تعديل
DatePicker
formatWithSkeleton
لتضمين خريطة تُستخدَم كذاكرة تخزين مؤقت لتحسينات الأداء (I3195f) - تمت إضافة
BasicTooltipBox
إلىcompose.foundation
وتعديلPlainTooltipBox
وRichTooltipBox
لاستخدامTooltipBox
مع مكوناتPlainTooltip
وRichTooltip
الجديدة. (I79e1d)
إصلاح الأخطاء
- يعرض
dynamicLightColorScheme
وdynamicDarkColorScheme
الآن ألوانًا ذات تشبع أعلى لأدوار السطح وsurfaceContainer
. (I5e901) - تم إصلاح مشكلة كانت تؤدي إلى محاولة قراءة حجم بعض المكوّنات التي تستخدم تركيبة فرعية (مثل
BottomSheetScaffold
) داخل بنية أساسية داخلLookaheadScope
في وقت مبكر جدًا. (I297b4 وI871f1 وb/295536718)
الإصدار 1.2.0-alpha06
23 آب (أغسطس) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha06
. يحتوي الإصدار 1.2.0-alpha06 على هذه المراجعات.
إصلاح الأخطاء
- تم إصلاح عملية احتساب
offset
فيDropdownMenu
بحيث تعتمد Offsets x على اتجاه التنسيق المحلي فقط، ولن يتم عكس Offsets y بعد ذلك عندما تكون القائمة بالقرب من أسفل الشاشة. (Iccc74، b/294103942) - تم إصلاح عملية احتساب
offset
فيDropdownMenu
بحيث تعتمد Offsets x على اتجاه التنسيق المحلي فقط، ولن يتم عكس Offsets y بعد ذلك عندما تكون القائمة بالقرب من أسفل الشاشة. (Ib87a2، b/294103942)
الإصدار 1.2.0-alpha05
9 آب (أغسطس) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha05
. يحتوي الإصدار 1.2.0-alpha05 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تعديلات على ألوان مربّع الاختيار و
TriStateCheckbox
لا يؤثر الرمزCheckboxDefaults.colors()
disabledUncheckedColor
الآن إلا في حدود مربّع الاختيار. إنّ الحالات الخاصة التي تتطلّب منك ضبط لون المربّع الداخلي عندما يكون غير مفعّل وغير محدَّد تتطلّب مثيلًا مُنشئًا مخصّصًا منCheckboxColors
مع قيم الألوان المطلوبة. (I77d17، b/291943198)
الإصدار 1.2.0-alpha04
26 تموز (يوليو) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha04
. يحتوي الإصدار 1.2.0-alpha04 على هذه المراجعات.
الميزات الجديدة
- واجهة برمجة التطبيقات التجريبية لزرّ التقسيم (Ifc8fb)
- تتضمّن الفواصل الآن مَعلمة للتحكّم في الاتجاه لتتوافق مع الفواصل الرأسية. (I4c899، b/288438593)
تغييرات واجهة برمجة التطبيقات
- نحن بصدد نقل الاعتماد على الكثافة إلى مستوى المكوّن. ينطبق ذلك على المكوّنات التالية:
SwipeToDismiss
والمكوّنات المستندة إلى "جداول بيانات Google". يُرجى استخدام طريقة التحميل الزائد الجديدة المقدَّمة حيث تكون الكثافة مَعلمة. (I1846e) - تعليقات توضيحية إضافية لتحديد الإدخالات المسموح بها للعناصر القابلة للتجميع (Ief234)
- أضِف مَعلمة رمز إلى الزر المُقسَّم، وقسِّم الدلالات بحيث يمكن اختيار الأزرار المُقسَّمة لتنفيذ الاختيار الفردي، ويمكنك التبديل لتنفيذ الاختيار المتعدّد باستخدام
SelectableSegmentedButtonRow
وToggelableSegmentedButtonRow
على التوالي. (I38740) - تمت إعادة تسمية "المقسِّم" إلى
HorizontalDivider
. تمت إضافة وظيفةVerticalDivider
. (I5975c) - استبدِل استخدام
ClosedFloatingPointRange
بالرمزFloatRange
الأخف وزنًا في واجهات برمجة التطبيقات التجريبية لنظام Material3 لتقليل استخدام وضع "التصغير التلقائي". (I4aab5) - تمت إضافة محاذاة جديدة لميزة "البدء" في
FabPosition
(Ib7aea، b/170592777)
إصلاح الأخطاء
ModalBottomSheet
يراعي اتجاه التنسيق المحلي. (Ib4f44، b/285628622)
الإصدار 1.2.0-alpha03
21 حزيران (يونيو) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha03
. يحتوي الإصدار 1.2.0-alpha03 على هذه المراجعات.
التغييرات في السلوك
- أصبح
includeFontPadding
الآنfalse
تلقائيًا في مخطّط الكتابة Material 3. تم أيضًا تغيير نمط ارتفاع السطر التلقائي إلىTrim.None
وAlignment.Center
، وتمّت إضافةlineHeight
صريح (بوحدة sp) إلىTextStyle
s منTypography
. يمكنك الرجوع إلى مستندات واجهة برمجة التطبيقات إذا كنت تريد تخصيص هذه القيم، والاطّلاع على مقالة المدونة للحصول على شرح مفصّل لهذه التغييرات. (I6266f وIcabc3)
الميزات الجديدة
- تمت إضافة حمولة زائدة لـ
RangeSlider
وهي نسخة ذات حالة للمكوّن. تمّ إنشاءRangeSliderState
يحتوي على جميع المعلومات المتعلّقة بالمسار النشط الحالي، وقياسات مكوّناتRangeSlider
، ومنطق السحب والإيماءات. (I8c270) - يتيح الآن شريط البحث إضافة تأثيرات الظلال من خلال المَعلمة
shadowElevation
التي تمت إضافتها مؤخرًا. (Ia5369، b/271040353) - تتيح منصة
ColorScheme
الآن استخدام أدوارSurfaceContainer
جديدة. - يمكن الآن إيقاف تراكب الارتفاع اللوني للسطح باستخدام
LocalTonalElevationEnabled
composition local. (Ic203c، b/277774590)
تغييرات واجهة برمجة التطبيقات
- افتح منشئي ألوان المكوّنات. (I8c4a6)
- إضافة مَعلمة focusable إلى كلتا واجهات برمجة التطبيقات الخاصة بملصقات التلميح، حتى يتمكّن المطوّرون من ضبط ملصق التلميح على استهلاك أحداث اللمس أو عدم استهلاكها. يُرجى توخّي الحذر لأنّ هذا قد يؤدي إلى إيقاف التنقّل التلقائي لتركيز تسهيل الاستخدام. (Ie32d8)
- تحسين إمكانية الاستخدام لتحسين الأداء وعمليات تخصيص الذاكرة (Iede48)
- عرِض
DefaultSizeClasses
وأنشئStandardSizeClasses
لـWindowSizeClasses
(I91838) - تغيير
WindowWidth/HeightSizeClass
إلى فئات القيم العائمة (Ie686e)
إصلاح الأخطاء
- تراعي الآن مَعلمة
contentWindowInsets
في Scaffold مساحة النافذة المستخدَمة. يُرجى العلم أنّ سلوك تعبئة المحتوى استنادًا إلىtopBar
وbottomBar
يبقى بدون تغيير عند تقديم هذه المَعلمات. (I08b73، b/264601542) - يجب تصحيح محاذاة شريط التطبيق في أعلى وسط الشاشة لضمان عدم ظهور عنوان طويل فوق رموز الإجراءات أو رمز التنقّل. (I4369f، b/236994621)
- تفرض مواضع علامات التبويب الآن الحد الأدنى لعرض المحتوى الذي يبلغ 24.dp. يوفر ذلك هدفًا لمسيًا يمكن الوصول إليه لمؤشرات علامات التبويب. (Id8861)
- لوحات الألوان الديناميكية من
dynamicLightColorScheme
وdynamicDarkColorScheme
تتيح الآن أدوار مساحات العرض الجديدة. (I1252e) - تعديل محاذاة إشعار الشارة لكي لا يتم اقتصاصها عند تداخلها مع الجد الأكبر (Idf75a)
الإصدار 1.2.0-alpha02
24 أيار (مايو) 2023
تم إصدار androidx.compose.material3:material3-*:1.2.0-alpha02
. يحتوي الإصدار 1.2.0-alpha02 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- أضِف مَعلمة "نافذة مُدمجة" إلى
ModalBottomSheet
.- يمكن الآن رسم شاشة تمويه
ModalBottomSheet
خلف شريط الحالة مع ضبطwindowInsets
على القيمة صفر. - تم تعديل وظيفة
ModalBottomSheet
التلقائية للبقاء خارج أشرطة النظام، بما في ذلك شريط التنقّل. - يتم توفير معالجة إدراج شريط الحالة من خلال مقبض السحب في الوضع "من الحافة إلى الحافة".
- تتضمّن
BottomSheetDefaults
نوافذ مضمّنة فيBottomSheetWindow
. (I31200، b/274872542، b/272973615، b/272334475، b/268432129، b/275849044، b/275486106، b/268433162)
- يمكن الآن رسم شاشة تمويه
- أوقِف سمة
Indicator
نهائيًا وأضِفPrimary
/SecondaryIndicator
لمطابقة مواصفات M3. يتطابقPrimaryIndicator
مع عرض محتوى علامة التبويب، في حين يمتدSecondaryIndicator
على العرض الكامل المتاح.SecondaryIndicator
هو مكافئIndicator
الذي تم إيقافه نهائيًا الآن ويمكن أن يكون بديلاً مباشرًا له. (I27604) - تمت إضافة خيار لإدخال
ScrollState
عند إنشاءDropdownMenu
أوExposedDropdownMenu
للتحكّم في حالة التمرير العمودي لعناصر القائمة المعروضة. (Ia0734، b/185304441) - تمت إضافة حمولة زائدة لـ
Slider
وهي نسخة ذات حالة للمكوّن. تمّ إنشاءSliderState
يحتوي على جميع المعلومات المتعلّقة بالمسار النشط الحالي، وقياسات مكوّناتSlider
، ومنطق السحب والإيماءات. (I124a5) - إعادة تسمية موقع الدلالات
isContainer
إلىisTraversalGroup
(I121f6) - تمت إضافة
TextStyle.merge(...)
محسّن مع قائمة المَعلمات الكاملة. (Iad234، b/246961787) - جعلت
TooltipState
وRichTooltipState
وPlainTooltipState
واجهات علنية. تمت إضافةRichTooltipStateImpl
وPlainTooltipStateImpl
للحالات التلقائية. تمت إضافة دوالremember*State
للحصول على هذه الحالات المطبَّقة. تمت إزالةTooltipSync
واستبدالها بـTooltipDefault.GlobalMutatorMutex
. (I7813d) - تم تعديل
DatePickerColors
لتضمين خيارات تخصيص إضافية لألوان أقسام أداة اختيار التاريخ وأزرار التنقّل وحقول إدخال النصوص. (I1a685، b/274626815) - أصبحت
DatePickerState
وDateRangePickerState
الآن واجهات علنية مع عمليات تنفيذ تلقائية يمكن استرجاعها من خلالrememberDatePickerState
وrememberDateRangePickerState
. (I71c52) - تمت إزالة
dateValidator
منDatePicker
وDateRangePicker
وتقديم واجهةSelectableDates
يمكن ضبطها على الحالة للتحكّم في التواريخ أو السنوات التي يمكن اختيارها في واجهة المستخدم. (Ic2fc6) - تمّت إزالة
TimePicker
من واجهة برمجة التطبيقات الثابتة، ومن المتوقّع إجراء المزيد من التغييرات في واجهة برمجة التطبيقات الخاصة بالحالة (I3f39a). - تم نقل
ModalBottomSheet
إلى أجهزة Android فقط. لا يُنصح باستخدامModalBottomSheet
على أجهزة الكمبيوتر المكتبي، ولا تتم صيانة هذه الوظيفة بشكل نشط. (Ib3778)
إصلاح الأخطاء
- تم إصلاح إجراء الإغلاق
AlertDialog
ليظهر أسفل إجراء التأكيد عندما تتكدس الإجراءات فوق بعضها البعض لتلائم عرض مربّع الحوار. يتوافق هذا الإصلاح مع مواصفات التصميم المتعدد الأبعاد (I029de، b/235454277). - تم إصلاح خطأ في
ListItem
باستخدام مسافة بادئة غير صحيحة للعناصر التي تتكوّن من ثلاثة أسطر. (I6e235) - يمكن الآن لتطبيق
ModalBottomSheet
عرض لوحة مفاتيح IME (Idc508 وb/262140644 وb/268380384 وb/272483584).
الإصدار 1.2.0-alpha01
10 أيار (مايو) 2023
تم إصدار androidx.compose.material3:material3:1.2.0-alpha01
وandroidx.compose.material3:material3-window-size-class:1.2.0-alpha01
. يحتوي الإصدار 1.2.0-alpha01 على هذه المراجعات.
الإصدار 1.1
الإصدار 1.1.2
20 أيلول (سبتمبر) 2023
تم إصدار androidx.compose.material3:material3:1.1.2
وandroidx.compose.material3:material3-window-size-class:1.1.2
. يحتوي الإصدار 1.1.2 على هذه المراجعات.
إصلاح الأخطاء
- تم تمرير المُعدِّل الثابت بشكل غير صحيح إلى مكوّنَين قابلَين للتجميع. (b/282761472)
- تم إصلاح مشكلة ظهور ساعات غير صحيحة في
TimePickerState
عند ضبطها على 23 ساعة. (b/278242122) - تم إصلاح حالة الإيقاف/التفعيل الأولية للتحقّق من صحة الظهر والدقائق. (b/269768197، b/282790635)
- تم إصلاح الخطأ الذي كان يتسبب في عرض قيمة غير صحيحة لساعة 11 مساءً في الحقل
state.hour
. (b/282761472، b/278242122)
الإصدار 1.1.1
21 حزيران (يونيو) 2023
تم إصدار androidx.compose.material3:material3:1.1.1
وandroidx.compose.material3:material3-window-size-class:1.1.1
. يحتوي الإصدار 1.1.1 على هذه المراجعات.
إصلاح الأخطاء
- تُضيف طلبًا لـ
ModalBottomSheet
بدون مَعلمةwindowInset
من أجل التوافق مع الثنائي. (Ib7959) - أضِف مَعلمة "نافذة مُدمجة" إلى
ModalBottomSheet
.- يمكن الآن رسم شاشة تمويه
ModalBottomSheet
خلف شريط الحالة مع ضبطwindowInsets
على القيمة صفر. - تم تعديل وظيفة
ModalBottomSheet
التلقائية للبقاء خارج أشرطة النظام، بما في ذلك شريط التنقّل. - يتم توفير معالجة إدراج شريط الحالة من خلال مقبض السحب في الوضع "من الحافة إلى الحافة".
- تتضمّن
BottomSheetDefaults
نوافذ مضمّنة فيBottomSheetWindow
. (I31200، b/274872542، b/272973615، b/272334475، b/268432129، b/275849044، b/275486106، b/268433162)
- يمكن الآن رسم شاشة تمويه
الإصدار 1.1.0
10 أيار (مايو) 2023
تم إصدار androidx.compose.material3:material3:1.1.0
وandroidx.compose.material3:material3-window-size-class:1.1.0
. يحتوي الإصدار 1.1.0 على عمليات الربط هذه.
الميزات الرئيسية في الإصدار 1.1.0
مكونات Material Design 3 الجديدة
- أوراق البيانات في أسفل الصفحة
- أداة اختيار التاريخ
- البحث
- SwipeToDismiss
- أداوت اختيار الوقت
- نصائح التلميح
تحسينات على مكوّنات Material Design 3 الحالية:
تم ترقية واجهات برمجة التطبيقات التجريبية إلى الإصدار الثابت
يُرجى الاطّلاع على مشاركة المدونة هذه لمعرفة المزيد من التفاصيل.
الإصدار 1.1.0-rc01
19 نيسان (أبريل) 2023
تم إصدار androidx.compose.material3:material3:1.1.0-rc01
وandroidx.compose.material3:material3-window-size-class:1.1.0-rc01
. يحتوي الإصدار 1.1.0-rc01 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تمّت إزالة
TimePicker
من واجهة برمجة التطبيقات الثابتة، ومن المتوقّع إجراء المزيد من التغييرات في واجهة برمجة التطبيقات الخاصة بالحالة (I3f39a). - تم نقل
ModalBottomSheet
إلى أجهزة Android فقط. لا يُنصح باستخدامModalBottomSheet
على أجهزة الكمبيوتر المكتبي، ولا تتم صيانة هذه الوظيفة بشكل نشط. (Ib3778)
الإصدار 1.1.0-beta02
5 نيسان (أبريل) 2023
تم إصدار androidx.compose.material3:material3:1.1.0-beta02
وandroidx.compose.material3:material3-window-size-class:1.1.0-beta02
. يحتوي الإصدار 1.1.0-beta02 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تتضمّن
SheetState
الآن المَعلمة الاختياريةskipHiddenState
. - تتضمّن
rememberStandardBottomSheetState
الآن المَعلمة الاختياريةskipHiddenState
. - أصبح لدى
BottomSheetScaffold
الآن عنصر تثبيت مخفي محدّد، على الرغم من أنّه غير مفعّل تلقائيًا. - تم تعديل مستندات
SheetState.requireOffset
- تمت إعادة تسمية
BottomSheetDefaults.MinimizedShape
إلىBottomSheetDefaults.HiddenShape
(I839f4، b/273870234)
إصلاح الأخطاء
- لا تبدِّل خلفية شاشة الساعة من الساعة إلى الدقيقة عندما تكون ميزة "الاستكشاف باللمس" مفعَّلة. (I717d0)
- تم الآن دمج دلالات عناصر سحب
ModalBottomSheet
وBottomSheetScaffold
. (I05afb) - لا تؤثر الآن مُعدِّلات
BottomSheetScaffold
وcontainerColor
وcontentColor
إلّا في المحتوى. (I992cb) BottomSheetScaffold nestedScroll
لمحتوى ورقة البيانات، يتم الآن تنفيذ عمليات التمرير السريع. (I992cb)
الإصدار 1.1.0-beta01
22 آذار (مارس) 2023
تم إصدار androidx.compose.material3:material3:1.1.0-beta01
وandroidx.compose.material3:material3-window-size-class:1.1.0-beta01
. يحتوي الإصدار 1.1.0-beta01 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- أضِف مَعلمة نوع التنسيق إلى
TimePicker
composable. يسمح هذا الإعداد باستخدام تنسيقات مختلفة، استنادًا إلى إعدادات الشاشة (Ia0e16). - تم وضع علامة "تجريبية" على
SearchBarDefaults
. (I65561) - تمت إضافة ارتفاع الظل إلى
BottomSheetScaffold
(I94e0f) - تمت إتاحة عرض أدوات اختيار التاريخ بدون جزء العنوان. تغييرات في واجهة برمجة التطبيقات للسماح بتمرير عنوان فارغ عند إنشاء أداة اختيار تاريخ يمكنك الآن تمرير عنوان وعنوان فارغَين و
showToggleMode = false
لعرض أداة اختيار بدون رأس. (Id3f3a، b/266132421، b/267194809)
إصلاح الأخطاء
- تم الآن إزالة التركيز من أشرطة البحث تلقائيًا عند إيقافها. (I22a7c، b/261444487)
- تم تعديل
DateRangePicker
للسماح باختيار نطاق يتضمّن التاريخ نفسه لتاريخَي البدء والانتهاء. (I16529، b/272882497) - تضع الحقول النصية الآن عناصر النص بشكل صحيح عندما يكون حجم الخط أصغر من المتوقع. وقد يؤدي ذلك إلى تغيير بضعة بكسل في تطبيقاتك استنادًا إلى إعدادات الخط والنص البرمجي. (I8b8d0)
- تحتوي الإجراءات الدلالية في ورقة البيانات السفلية الآن على تصنيفات. (I277b0)
الإصدار 1.1.0-alpha08
8 آذار (مارس) 2023
تم إصدار androidx.compose.material3:material3:1.1.0-alpha08
وandroidx.compose.material3:material3-window-size-class:1.1.0-alpha08
. يحتوي الإصدار 1.1.0-alpha08 على هذه المراجعات.
الميزات الجديدة
- تمت إضافة إمكانية استخدام
BottomSheetScaffold
وBottomSheetScaffoldState
. (I063d4)
تغييرات واجهة برمجة التطبيقات
- تمت إضافة وظائف إلى
DatePickerState
وDateRangePickerState
للسماح بضبط التواريخ بعد الإنشاء الأولي للحالة، بالإضافة إلى إعادة ضبط الاختيارات من خلال ضبط الطوابع الزمنية غير الصالحة. يجب ضبط التواريخ يدويًا بحذر، وستُرسِل الدالةsetSelection
الجديدة استثناءً في حال تعذّر استيفاء تاريخ مقدَّم لشرط مُسبَق (راجِع المستندات). (Ifa645 وb/268609314 وb/270427389) - أعِد تسمية "مُدمَج"
SheetValue
إلىPartiallyExpanded
لعرض السلوك في هذه الحالة بدقة ومرونة أكبر. (Ia1491) - تم تعديل أسماء مَعلمات
ListItem
إلى _content بدلاً من _text. أصبحت وظائف الحصول التلقائية هيReadOnlyComposables
حيثما ينطبق ذلك. (I69a25) - ترقية واجهات برمجة تطبيقات Surface التفاعلية من المرحلة التجريبية (I90d59، b/261561812)
إصلاح الأخطاء
- تم حلّ مشكلة احتساب حالة
HalfExpanded
فيModalBottomSheet
بشكل غير صحيح، ما يؤدي إلى ظهور ورقة البيانات وكأنها تطفو. (I45e84، b/268411386) - أضِف
confirmValueChange
علامة في مربّع الاختيار وانقر علىModalBottomSheet
. (I2311a، b/270425759) - نقل إجراءات
BottomSheet
الدلالية إلى مقبض السحب (I158ba) ModalBottomSheet
الآن يوجّه الأوامر للتركيز على الإطلاق، ويعالج زر الرجوع. (I4d2ab)- يتم الآن أيضًا التعامل مع
ModalBottomSheet onDismissRequest
أثناء عمليات التمرير السريع المتداخلة. (I655c5، b/268433166)
الإصدار 1.1.0-alpha07
22 شباط (فبراير) 2023
تم إصدار androidx.compose.material3:material3:1.1.0-alpha07
وandroidx.compose.material3:material3-window-size-class:1.1.0-alpha07
. يحتوي الإصدار 1.1.0-alpha07 على هذه المراجعات.
الميزات الجديدة
- أضِف عنصرًا قابلاً للتجميع لـ "إدخال الوقت" يعمل مع
rememberTimePickerState()
، ويتّبع مواصفات M3 لإدخال الوقت (Ia4fab). - تمت إضافة واجهة برمجة تطبيقات Material 3
DateRangePicker
لاختيار نطاق من التواريخ. (I7a6c3، b/267194809) - تمت إضافة ميزة وضع إدخال Material 3 لاختيار النطاقات الزمنية من خلال واجهة برمجة التطبيقات
DateRangePicker
. (Ifdbc4) - تتيح ألوان حقول النصوص الآن إمكانية التخصيص:
- ألوان نص حقل الإدخال والعنصر النائب استنادًا إلى حالة التركيز والخطأ تمت إعادة تسمية المَعلمة
textColor
ليصبح اسمهاunfocusedTextColor
، وتمت إعادة تسمية المَعلمةplaceholderColor
ليصبح اسمهاunfocusedPlaceholderColor
. - لون الحاوية لحقول النص المعبّأة استنادًا إلى حالة الخطأ باستخدام المَعلمة
errorContainerColor
الجديدة
- ألوان نص حقل الإدخال والعنصر النائب استنادًا إلى حالة التركيز والخطأ تمت إعادة تسمية المَعلمة
- تم تعديل ألوان حقول النصوص في القائمة المنسدلة المعروضة باستخدام مَعلمات لتتوافق مع واجهة برمجة التطبيقات الجديدة للبادئة واللاحقة. (I9c8b4، b/254284181، b/264766350)
تغييرات واجهة برمجة التطبيقات
- التراجع عن بعض إصدارات Slider API وإزالة عمليات تحميل Slider المتكرّرة التي توفّرها أداة Slider التجريبية الجديدة التي تتضمّن مؤشرًا ومسارًا مخصّصَين الترويج لإصدار
RangeSlider
باعتباره إصدارًا ثابتًا (Ie8fbd) - تمت إعادة تسمية
defaultElevation
إلىelevation
في دوال الارتفاع للشريحة. (I0f872) - لم تعُد واجهات برمجة التطبيقات التالية للحقول النصية في Material 3 تجريبية:
TextField
وOutlinedTextField
وtextFieldWithLabelPadding
وtextFieldWithoutLabelPadding
وoutlinedTextFieldPadding
. (Ieb5c0، b/261561819) - يستخدم
TimePickers
is24Hour
إعدادات النظام (I18856). - تمت إزالة التعليق التوضيحي التجريبي من واجهات برمجة التطبيقات لإطار العمل. (Ibb51e، b/261565765، b/261436953)
إصلاح الأخطاء
- أصبح الشكل التلقائي
ModalBottomSheet
هوSheetDefaults.ExpandedShape
دائمًا. (I0dfca) - تحسينات على تسهيل الاستخدام في Material 3
DatePicker
وDateRangePicker
(I5087e) - إصلاح خطأ في قيد الحد الأقصى للارتفاع الذي قد يؤدي إلى حدوث عطل (I30d8c)
- تمّت إزالة الأدوار الدلالية من مساحات العرض القابلة للنقر والاختيار، وتم تعديل المكوّنات التي استخدمتها لضبط الأدوار باستخدام modifier.semantics (I793d9).
الإصدار 1.1.0-alpha06
8 شباط (فبراير) 2023
تم إصدار androidx.compose.material3:material3:1.1.0-alpha06
وandroidx.compose.material3:material3-window-size-class:1.1.0-alpha06
. يحتوي الإصدار 1.1.0-alpha06 على هذه المراجعات.
الميزات الجديدة
- تتيح الحقول النصية الآن استخدام بادئة ولاحقة نصيتين (Ia8578، b/179884561).
- تمت إضافة دالة
TimePicker
لعرض أداة اختيار الوقت وفقًا لمواصفات Material 3، وتُستخدَم معTimePickerState
وطريقة تسهيل الاستخدامrememberTimePickerState
(I71910). - أصبح إدخال التاريخ الآن وضع عرض في
DatePicker
. تمت إضافة إمكانية التبديل بين وضعَي "أداة اختيار التاريخ" و"إدخال التاريخ". (Ieeff7) - تمت إضافة واجهة برمجة التطبيقات
RichTextTooltips
. (I58ef3) - تنفيذ البطاقة السفلية المقيِّدة في Material 3، بما في ذلك
ModalBottomSheet
وModalBottomSheetDefaults
تم أيضًا تقديمSheetState
وrememberSheetState
اللذَين يمكن استخدامهما في مكونات الأوراق المستقبلية. (I0853a، b/244189383)
تغييرات واجهة برمجة التطبيقات
- استقرار واجهة برمجة التطبيقات
showSnackbar
(I195c2، b/261424370) - تحسين واجهات برمجة التطبيقات لشريحة المساعدة وشريحة الاقتراحات (Ibb67b، b/261424370)
- ترقية واجهات برمجة التطبيقات
ListItem
وListItemDefaults
وListItemColors
إلى إصدار غير تجريبي (I7e7fa وb/261438882) - ترقية واجهات برمجة التطبيقات
SliderPositions
وSliderDefaults.Thumb
وSliderDefaults.Track
إلى الإصدار الثابت وإضافة واجهات برمجة التطبيقاتSlider
وRangeSlider
غير التجريبية التي تحتوي على واجهتَي برمجة تطبيقات مخصّصتَين لعرض الصور المصغرة وتتبُّع الأداء سنوقف أيضًا واجهات برمجة التطبيقات السابقةSlider
وRangeSlider
. (Ie5ea6، b/261566890) - تمّ إتاحة
Modifier.tooltipAnchor()
للجميع، حتى يتمكّن المطوّرون من تمريرها إلى العنصر الأساسي للإشارة إلى أنّه يجب عرض تلميح عند الضغط مع الاستمرار. تم تعديل واجهة برمجة التطبيقاتPlainTooltipBox
كي لا تعودTooltipState
قابلة للحذف، وأصبحت الآن لها قيمة تلقائية. (Ie2fb7) - تم وضع علامة
@Composable
علىProgressIndicatorDefaults.circularTrackColor
للحفاظ على الاتساق. (Id29cc) - استُعيدت دالة الحصول على السمة
LocalMinimuTouchTargetEnforcement
وتم وضع علامة عليها بأنّها متوقّفة نهائيًا وتمت إعادة التوجيه إلىLocalMinimumInteractiveComponentEnforcement
. (I60dd5)
الإصدار 1.1.0-alpha05
26 كانون الثاني (يناير) 2023
تم إصدار androidx.compose.material3:material3:1.1.0-alpha05
وandroidx.compose.material3:material3-window-size-class:1.1.0-alpha05
. يحتوي الإصدار 1.1.0-alpha05 على هذه المراجعات.
الميزات الجديدة
DatePickerDialog
وأدوات تسهيل الاستخدام- تمت إضافة صورة مصغّرة ومقطع صوتي مخصّصَين إلى
RangeSlider
.
تعديلات على التبعيات
- يعتمد كلّ من
Compose UI
وCompose Material
الآن على Lifecycle 2.6.0.
الإصدار 1.1.0-alpha04
11 كانون الثاني (يناير) 2023
تم إصدار androidx.compose.material3:material3:1.1.0-alpha04
وandroidx.compose.material3:material3-window-size-class:1.1.0-alpha04
. يحتوي الإصدار 1.1.0-alpha04 على هذه المراجعات.
الميزات الجديدة
- واجهة برمجة التطبيقات
DatePicker
الأولية لاختيار تاريخ واحد من خلال واجهة مستخدم التقويم لا تزال واجهة برمجة التطبيقات هذه تخضع للتغييرات. (I722b9) - تمت إضافة ميزة التلميح النصي العادي من خلال
PlainTooltipBox
. (I0cdfb) - شريط البحث (Iad128)
SwipeToDismiss
(I458a8، b/242889540)
تغييرات واجهة برمجة التطبيقات
- تمت إضافتها في سمة
IsContainer
semantics على Surfaces. سيتم استخدام هذه السمة في تغيير لاحق يحدّد ترتيب التنقّل استنادًا إلى المعنى الدلالي للعناصر، مثل الأسطح. (I63379) - وضع علامة على واجهات برمجة التطبيقات ذات الصلة بلائحة التنقل بأنّها مستقرة (Iab01e، b/261439597)
- تمت إضافة مَعلمة لون المسار لمؤشرات التقدم الدائرية، ومَعلمة حدّ الحدّ الأقصى للخط لكلّ من مؤشرات التقدم الدائرية والخطية. (Ie668c، b/216325962، b/222964817)
- المزيد من حالات عدم توفّر قيمة لنوع الإرجاع في الدوال المخفية المتوقّفة نهائيًا (Ibf7b0)
- أضِف
Modifier.minimumInteractiveComponentSize
. ويمكن استخدامه لحجز مساحة لا تقل عن 48 بكسل مستقل الكثافة (dp) لإزالة الغموض عن التفاعلات باللمس إذا كان حجم العنصر أصغر. (I33f58، b/258495559) - تمت إضافة واجهة برمجة تطبيقات تجريبية لعنصر
AlertDialog
القابل للتجميع الذي يتضمّن خانة محتوى. (Iec4a2)
إصلاح الأخطاء
- أصبح مستوى التقدّم لمؤشرات التقدّم مرتبطًا بشكل صحيح بنطاقه المتوقّع. (I8a7eb، b/262262727)
مشكلة معروفة
- عند التحديث من الإصدار
androidx.compose.foundation:1.4.0-alpha03
إلى الإصدارandroidx.compose.foundation:1.4.0-alpha04
، قد تواجه خطأjava.lang.NoSuchFieldError
. هنا تم الإبلاغ عن المشكلة في الأصل. تم إرسال حلّ لهذه المشكلة، وسيكون متاحًا في تحديث "الإنشاء" التالي. كحل بديل، يمكنك تحديث مكتبتَيandroidx.compose.material
وandroidx.compose.material3
إلى أحدث إصدار(1.1.0-alpha04) أو الرجوع إلى إصدارandroidx.compose.foundation
1.4.0-alpha03.
الإصدار 1.1.0-alpha03
7 كانون الأول (ديسمبر) 2022
تم إصدار androidx.compose.material3:material3:1.1.0-alpha03
وandroidx.compose.material3:material3-window-size-class:1.1.0-alpha03
. يحتوي الإصدار 1.1.0-alpha03 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية
consumedWindowInsets()
إلىconsumeWindowInsets()
وwithConsumedWindowInsets()
إلىonConsumedWindowInsetsChanged()
وأصبحت "المُعدِّلات" علنية. (Ie44e1) - أضِف مساحة تلقائية جديدة للمحتوى في زر النص مع الرمز المراد استخدامه. (I8f662)
- تمت إضافة ألوان غير مفعّلة لشريط التنقّل والحاجز. (Ia7892، b/258867034)
- تمت إضافة واجهة برمجة تطبيقات Modifier API لطلب معلومات الانتقال للأعلى أو للأسفل في العناصر السابقة. (I2ba9d، b/203141462)
- تُستخدَم في
Clickable
لتأخير التفاعلات الناتجة عن الضغط بشكل صحيح، عندما يمكن أن تصبح الإيماءات أحداث انتقال. - تم إصلاح مشكلة عدم تأخير
Clickables
للتأثيرات المتموّجة بشكلٍ صحيح عند استخدامها داخلScrollable ViewGroup
. - تم تعديل الأدراج واللوحات لتأخير الضغطات بشكل صحيح في حال إمكانية أن تصبح الإيماءات أحداثًا للانتقال للأعلى أو للأسفل.
تعديلات على التبعيات
- يعتمد الآن كلّ من
Compose UI
وCompose Material
على Lifecycle 2.5.1. (I05ab0، b/258038814)
الإصدار 1.1.0-alpha02
9 تشرين الثاني (نوفمبر) 2022
تم إصدار androidx.compose.material3:material3:1.1.0-alpha02
وandroidx.compose.material3:material3-window-size-class:1.1.0-alpha02
. يحتوي الإصدار 1.1.0-alpha02 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- يقبل كلّ من
awaitFirstDown
وwaitForUpOrCancellation
الآنPointerEventPass
لتوفير مرونة أكبر (يؤدي ذلك أيضًا إلى إصلاح مشكلة ظهور قائمة فيExposedDropdownMenuBox
أثناء الانتقال للأعلى أو للأسفل).(I7579a، b/212091796) - تمت إضافة المَعلمة
minLines
إلى Text وTextField
وOutlinedTextField
في material وmaterial3، ما يسمح بضبط الحد الأدنى لارتفاع المكوّن من حيث عدد الأسطر (I4af1d). - إيقاف الدالة
TopAppBarDefaults smallTopAppBarColors
نهائيًا واستبدالها بالدالةtopAppBarColors
الجديدة التي يجب استخدامها عند إنشاءTopAppBar
(Ie6cb9) - تمت إضافة المَعلمة
minLines
إلىBasicText
وBasicTextField
. يسمح هذا الحقل بضبط الحد الأدنى لارتفاع هذه العناصر القابلة للتجميع من حيث عدد السطور (I24294، b/122476634).
إصلاح الأخطاء
- اقتطع محتوى
IconButton
وIconToggleBotton
في Material3 لكي يتلاءم مع شكل طبقة الحالة للمكوّن (مثل الشكل الدائري). (I9da8f) - تعديلات على أشرطة التطبيقات العلوية بتصميم Material3 بحجمَي متوسط وكبير لتطبيق لون الخلفية نفسه على سطحها بالكامل، والسماح بإعداد إلغاء الألوان التلقائية باستخدام قيم ألوان شفافة (I67659، b/249688556، b/250838918)
الإصدار 1.1.0-alpha01
24 تشرين الأول (أكتوبر) 2022
تم إصدار androidx.compose.material3:material3:1.1.0-alpha01
وandroidx.compose.material3:material3-window-size-class:1.1.0-alpha01
. يحتوي الإصدار 1.1.0-alpha01 على هذه المراجعات.
إصلاح الأخطاء
- إصلاحات في شريط التطبيق العلوي عند تطبيق العنوان باستخدام TextStyle وBrush (If667e)
الإصدار 1.0
الإصدار 1.0.1
9 تشرين الثاني (نوفمبر) 2022
تم إصدار androidx.compose.material3:material3:1.0.1
وandroidx.compose.material3:material3-window-size-class:1.0.1
. يحتوي الإصدار 1.0.1 على هذه المراجعات.
إصلاح الأخطاء
- تعديلات على أشرطة التطبيقات العلوية بتصميم Material3 بحجمَي متوسط وكبير لتطبيق لون الخلفية نفسه على سطحها بالكامل، والسماح بإعداد إلغاء الألوان التلقائية باستخدام قيم ألوان شفافة (I67659، b/249688556، b/250838918)
الإصدار 1.0.0
24 تشرين الأول (أكتوبر) 2022
تم إصدار androidx.compose.material3:material3:1.0.0
وandroidx.compose.material3:material3-window-size-class:1.0.0
. يحتوي الإصدار 1.0.0 على عمليات الربط هذه.
الميزات الرئيسية في الإصدار 1.0.0
هذا هو أول إصدار ثابت من Compose Material 3.
مظهر Material Design 3 واللون الديناميكي في Material You
مكونات Material Design 3
- الشارة
- شريط التطبيق السفلي
- الأزرار
- زر الإجراء الرئيسي (FAB) وزر الإجراء الرئيسي الموسّع (FAB)
- البطاقات
- مربّع الاختيار
- شرائح
- المحادثات
- المقسّم
- القائمة المنسدلة
- القائمة
- شريط التنقّل
- لائحة التنقّل
- شريط التنقّل
- مؤشر مستوى التقدّم
- زر الاختيار
- شريط التمرير
- التبديل
- علامات التبويب
- الحقول النصية
- شريط التطبيق العلوي
- الرمز
- نص
- السطح
- التنسيق
- لون المحتوى
فئة حجم النافذة
material3-window-size-class
هي مكتبة جديدة توفّر دعمًا لفئات أحجام النوافذ: وهي مجموعة من نقاط التوقف لإطار العرض التي تستند إلى آراء خبراء لمساعدتك في تصميم تنسيقات التطبيقات القابلة للتغيير وتطويرها واختبارها. يمكنك استخدامcalculateWindowSizeClass
لاسترداد مثيل فئة حجم النافذة، والذي يمكنك استخدامه لتحديد كيفية ظهور واجهة المستخدم، مثل عرض شريط تنقل بدلاً من شريط التنقّل في أسفل الشاشة لحجم النافذة الأكبر. لمزيد من المعلومات وعينات الاستخدام، يُرجى الاطّلاع على مستندات مرجع واجهة برمجة التطبيقاتWindowSizeClass
.يُرجى الاطّلاع على مشاركة المدونة هذه لمعرفة المزيد من التفاصيل.
الإصدار 1.0.0-rc01
5 تشرين الأول (أكتوبر) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-rc01
وandroidx.compose.material3:material3-window-size-class:1.0.0-rc01
. يحتوي الإصدار 1.0.0-rc01 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة مَعلمة المساحة لتفعيل واجهة برمجة التطبيقات text to text field API (Iaac0d، b/227146125)
الإصدار 1.0.0-beta03
21 أيلول (سبتمبر) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-beta03
وandroidx.compose.material3:material3-window-size-class:1.0.0-beta03
. يحتوي الإصدار 1.0.0-beta03 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- يعرض
ExposedDropdownMenuDefaults
الآن قيمة مسافة بادئة لعناصر القائمة. (I34ee1) - يحتوي
ExposedDropdownMenuBoxScope
الآن على مُعدِّلModifier.menuAnchor()
يجب تمريره إلى الحقل النصي لضمان السلوك المناسب لمعايير a11y. (I27fa3) - إضافة طريقتَين مُحمَّلَتَين لواجهة برمجة التطبيقات Slider API الحالية للسماح للمستخدمين بتمرير صورة مصغّرة أو مقطع صوتي لتعبئة شريط التمرير (I21c00)
إصلاح الأخطاء
- تم تعديل تعيين ألوان المظهر الداكن لحاوية الخطأ إلى درجة اللون 90 (Ic5612).
- إصلاح للسماح بضبط خلفية شفافة لأشرطة التطبيقات العلوية الصغيرة في Material 3 (I645e2، b/245575782)
الإصدار 1.0.0-beta02
7 أيلول (سبتمبر) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-beta02
وandroidx.compose.material3:material3-window-size-class:1.0.0-beta02
. يحتوي الإصدار 1.0.0-beta02 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- لم تعُد المكوّنات التلقائية المضمّنة في مكوّنات m3 في الإصدار beta01 تراعي المكوّنات المضمّنة لنظام IME.
- يحتوي مكوّن Material3 Scaffold الآن على مَعلمة
contentWindowInsets
، ما يتيح تحديد عدد المكوّنات المضمّنة التي يجب التعامل معها في خانة المحتوى. (Icf11a، b/243713323) - إيقاف الدالة التجريبية
SmallTopAppBar
في Material 3 نهائيًا وتقديم دالةTopAppBar
مكافئة يُرجى نقل استخدامك إلى الحساب الجديد. (I74404، b/226918634) - إضافة إمكانية التحكّم في سلوكَي التمرير السريع واللصق في شريط التطبيق العلوي (I15c81)
- تزيل startIndent من Divider، وتنقل اللون إلى المَعلمة الأخيرة. (If7be2)
إصلاح الأخطاء
- يمكنك أن تطلب من مربّعات الحوار التعريف عن نفسها لمستخدمي TalkBack من خلال قول كلمة "مربّع حوار" عند عرضها. (I857ef)
الإصدار 1.0.0-beta01
24 آب (أغسطس) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-beta01
وandroidx.compose.material3:material3-window-size-class:1.0.0-beta01
. يحتوي الإصدار 1.0.0-beta01 على هذه المراجعات.
مرجع واجهة برمجة التطبيقات
للاطّلاع على أحدث العناصر والمكونات والعناصر القابلة للتجميع الأخرى المتاحة، يمكنك الاطّلاع على نظرة عامة على مرجع Compose Material 3 API.
تغييرات واجهة برمجة التطبيقات
- تم تعديل شريط التطبيقات العلوي في Material 3 ليصبح قابلاً للتوسيع أو التصغير بالكامل. تم أيضًا تعديل دالة سلوك
TopAppBarDefaults
لتكون Composables وتوفير قيم تلقائية لحالة شريط التطبيقات العلوي ومواصفات الرسوم المتحركة. (I642b3) - تم تعديل توقيعات مكوّنات التطبيقات المصغّرة القابلة للتطبيق لتتطابق مع واجهة برمجة التطبيقات للسطح (I3afaa)
- تمّت إضافة عناصر مضمّنة تتيح استخدام أشرطة التطبيقات العلوية والأدراج وشريط التنقّل وشريط التمرير. عند استخدام هذه المكوّنات بشكل منفصل أو مع Scaffold، ستتولى هذه المكوّنات تلقائيًا التعامل مع المكوّنات المضمّنة للمطوّرين. ملاحظة: لا يؤدي هذا التغيير إلى إضافة معالجة تلقائية لرموز شريط الحالة وشفافية شريطَي الحالة والتنقّل. يُرجى مواصلة إجراء ذلك يدويًا لضمان أفضل تجربة من الحافة إلى الحافة. (I7e4e6، b/183161866)
- تم تعديل الإعدادات التلقائية للمكوّنات لتقليل مساحة عرض واجهة برمجة التطبيقات من أجل توفير المرونة وتحسين الأداء في المستقبل. (I31820)
- إعادة ترتيب مَعلمات ورقة الشريحة ودرج التنقّل للحفاظ على الاتساق داخل واجهة برمجة التطبيقات (I45d0b)
- تمت إزالة
startIndent
من "المقسّم" وتم نقل اللون ليكون المَعلمة الأخيرة.(If7be2)
الإصدار 1.0.0-alpha16
10 آب (أغسطس) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha16
وandroidx.compose.material3:material3-window-size-class:1.0.0-alpha16
. يحتوي الإصدار 1.0.0-alpha16 على هذه المراجعات.
الميزات الجديدة
- أن تتيح تحديد عرض مخصّص في قائمة التنقل (Ia7f10)
تغييرات واجهة برمجة التطبيقات
- إعادة ترتيب مَعلمات علامة التبويب "علامة التبويب الرئيسية" و"علامة التبويب" للحفاظ على الاتساق في واجهة برمجة التطبيقات (Ie2637)
- تم وضع علامة على
BadgeDefaults
تشير إلى أنّه ميزة تجريبية. (I98ef3) - أزِل وظيفة درج التنقّل التي تم إيقافها نهائيًا. (I4f2db)
- إعادة ترتيب مَعلمات شريط التمرير في Material 3 للحفاظ على الاتساق داخل واجهة برمجة التطبيقات (I0aee7)
- إعادة ترتيب المَعلمتَين
NavigationBar
وNavigationRail
للحفاظ على الاتّساق في واجهة برمجة التطبيقات (I51cda) - إعادة ترتيب المَعلمات في Material 3 للحفاظ على الاتساق في جميع واجهات برمجة التطبيقات (If4ae1)
- إعادة ترتيب مَعلمات شريط التمرير في Material 3 للحفاظ على الاتساق داخل واجهة برمجة التطبيقات (I62673)
- تمت إعادة تسمية مَعلمة الرموز إلى "الإجراءات" لتتلاءم مع شريط التطبيق العلوي (Id75be).
- ضَع علامة "تجريبية" على
Badge
وBadgedBox
لأنّ محاذاة العنصر الأساسي لا تزال في مرحلة تجريبية. (I1712e، b/236524516) - تغيير التعليقات التوضيحية
@ExperimentalMaterial3Api
في صيغ زر الرمز إلى@OptIn
(I070b5) - تم فصل محتوى درج التنقّل إلى عنصر قابل للتجميع خاص به ليتيح تحديد عرض مخصّص له. (Ia7f10)
- إزالة
Divider
منMenuDefaults
وTabDefaults
(I4e33c)
الإصدار 1.0.0-alpha15
27 تموز (يوليو) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha15
وandroidx.compose.material3:material3-window-size-class:1.0.0-alpha15
. يحتوي الإصدار 1.0.0-alpha15 على هذه المراجعات.
الميزات الجديدة
- السماح بسحب شريط التطبيق العلوي من الشريط نفسه (I65c00، b/205873416)
تغييرات واجهة برمجة التطبيقات
- تعديلات على واجهات برمجة التطبيقات
FilterChip
وElevatedFilterChip
لإزالة خانةselectedIcon
وتعزيز إعادة استخدامleadingIcon
لعرض حالة محدّدة (Ie5dc2) - أضِف أدوار الألوان المتغيرة للشاشة البينية والحدود. (Id6d54)
- إصلاح اصطلاحات التسمية للإعدادات التلقائية القابلة للتجميع (I62b27)
- ضَع علامة "تجريبي" على
ListItemDefaults
وListItemColors
. (I1f3ec) - تغييرات على واجهة برمجة تطبيقات شريط التطبيقات العلوي لتعكس بشكل أفضل معنى سمات حالته ضَع أيضًا علامة على واجهة برمجة التطبيقات في شريط التطبيقات العلوي باعتبارها تجريبية. (Ic0ad8)
- تمت إضافة ألوان اختيار النص إلى
TextFieldColors
لتعزيز قابلية العثور على المحتوى. (Iba1b8) - إضافة
ButtonDefault.ButtonWithIconContentPadding
لاستخدامها مع الأزرار التي تحتوي على رمز (I2bf9c) - تم وضع علامة على حقول النص باعتبارها تجريبية للسماح بمزيد من المرونة في التغييرات المستقبلية لواجهة برمجة التطبيقات. (I127b5)
- تمت إزالة التعليق التوضيحي
@ExperimentalMaterial3Api
من الدالةCheckbox
. (I5eefc) - تمت إزالة التعليق التوضيحي
@ExperimentalMaterial3Api
من الدالةRadioButton
. (I17e2a) - تمت إزالة التعليق التوضيحي
@ExperimentalMaterial3Api
من البطاقات غير التفاعلية. (I9bd49) - تعديل عناصر الإعدادات التلقائية المختلفة للمكوّنات لتشمل الألوان والأشكال وما إلى ذلك (I96e11)
إصلاح الأخطاء
- تمت إزالة الرموز اللاحقة غير الصالحة من نماذج شرائح الإدخال لتجنُّب إرباك المستخدم في تطبيق الكتالوج. (I9846a)
الإصدار 1.0.0-alpha14
29 حزيران (يونيو) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha14
وandroidx.compose.material3:material3-window-size-class:1.0.0-alpha14
. يحتوي الإصدار 1.0.0-alpha14 على هذه المراجعات.
الميزات الجديدة
- تمت إضافة تنفيذ قائمة M3، يُرجى الاطّلاع على المستندات للحصول على أمثلة على الاستخدام (Id7a20).
تغييرات واجهة برمجة التطبيقات
- تغيير اسم المَعلمة من values إلى value في
RangeSlider
(I3b79a) - تغييرات في واجهة برمجة التطبيقات على رمز
InputChip
لتنفيذ حالة قابلة للاختيار وفقًا لمواصفات Material Design دعم إضافي في ألوانFilterChip
للحالة المُعطَّلة المحدّدة (I55244، b/235792432) - إضافة
BottomAppBar
رمز مربّع أزرار الإجراء التلقائي (Ida4c8) - تمت إضافة
ColorScheme.surfaceColorAtElevation
(Id41af) - يتم الآن إنشاء الواجهات في مكتبات Compose باستخدام jdk8 إجراءات الواجهات التلقائية (I5bcf1).
- ينفذ كلّ من
WindowWidthSizeClass
وWindowHeightSizeClass
الآن Comparable، لذا يمكن مقارنتهما باستخدام عوامل التشغيل (< و<= و>= و>) وواجهات برمجة التطبيقات الأخرى. (I747d0)
إصلاح الأخطاء
- تعديل نموذج الشارة لتقديم وصف أكثر وضوحًا للمحتوى (I10b9d)
- إضافة خيار استخدام حجم خط النظام إلى أداة اختيار المظهر في كتالوج Material 3 (I10605)
- إضافة رمز نموذجي للشارة ومؤشرات مستوى التقدّم غير المحدّدة (I8fbe0)
الإصدار 1.0.0-alpha13
1 حزيران (يونيو) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha13
وandroidx.compose.material3:material3-window-size-class:1.0.0-alpha13
. يحتوي الإصدار 1.0.0-alpha13 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- يتيح الحفاظ على موضع شريط التطبيقات في أعلى الشاشة عند تغيير الإعدادات. (I10459، b/216160958)
الإصدار 1.0.0-alpha12
18 أيار (مايو) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha12
وandroidx.compose.material3:material3-window-size-class:1.0.0-alpha12
. يحتوي الإصدار 1.0.0-alpha12 على هذه المراجعات.
إصلاح الأخطاء
- يمكن أن يكون عرض العنصر الرئيسي للشريحة التمرير الآن 0. (b/231707291)
الإصدار 1.0.0-alpha11
11 أيار (مايو) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha11
وandroidx.compose.material3:material3-window-size-class:1.0.0-alpha11
. يحتوي الإصدار 1.0.0-alpha11 على هذه المراجعات.
الميزات الجديدة
- تمت إضافة
RangeSlider
إلى المادة 3 (I18e38). - إتاحة استخدام
AssistChip
وInputChip
في Material3 (I0d25a) - إتاحة Material3
FilterChip
وSuggestionChip
(I9fdf3)
تغييرات واجهة برمجة التطبيقات
- تمت إعادة تسمية العنصر القابل للتجميع
TextFieldDefaults.BorderStroke
الذي يرسم خط حدود فيOutlinedTextField
إلىTextFieldDefaults.BorderBox
. (I5f295) - تبديل التغييرات المرئية في m3 (Iab30e)
- السماح بنقل الألوان إلى أزرار الرموز العادية (Ia2445)
إصلاح الأخطاء
- إضافة فحص أخطاء إلى material3/Scaffold لضمان استخدام الحشو الداخلي (I72293، b/226951418)
الإصدار 1.0.0-alpha10
20 نيسان (أبريل) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha10
وandroidx.compose.material3:material3-window-size-class:1.0.0-alpha10
. يحتوي الإصدار 1.0.0-alpha10 على هذه المراجعات.
الميزات الجديدة
material3-window-size-class
هي مكتبة جديدة توفّر دعمًا لفئات أحجام النوافذ: وهي مجموعة من نقاط التوقف لإطار العرض التي تستند إلى آراء معيّنة، ويمكنك استخدامها لتصميم تنسيقات التطبيقات التي يمكن تغيير حجمها وتطويرها واختبارها. يمكنك استخدامcalculateWindowSizeClass
لاسترداد مثيل فئة حجم النافذة، والذي يمكنك استخدامه لتحديد كيفية ظهور واجهة المستخدم، مثل عرض شريط تنقل بدلاً من شريط التنقّل في أسفل الشاشة لحجم النافذة الأكبر. لمزيد من المعلومات وعينات الاستخدام، يُرجى الاطّلاع على المستندات المرجعية لواجهة برمجة التطبيقاتWindowSizeClass
. لمزيد من المعلومات عن تعريفات فئة حجم النافذة، اطّلِع على الإرشادات العامة حول إتاحة أحجام شاشات مختلفة.
تغييرات واجهة برمجة التطبيقات
- تضيف هذه السمة ارتفاعًا تلقائيًا لزر الإجراء الرئيسي (FAB) في
BottomAppBar
، وتزيل اللامدا اللاحقة منBottomAppBar
باستخدام زر الإجراء الرئيسي (FAB). (I92c47) - تضيف المادة 3
FilledIconButton
وFilledTonalIconButton
وOutlinedIconButton
. (Ib2bda) - تعديلات على واجهة برمجة التطبيقات Material 3 Snackbar API لقبول قيم الألوان للإجراء الاختياري وإجراء الإغلاق (Ibe4b4)
- تم إيقاف الاستهلاك الجزئي (الانخفاض أو الموضع) نهائيًا في
PointerInputChange
. يمكنك استخدامconsume()
لاستخدام التغيير بالكامل. يمكنك استخدامisConsumed
لتحديد ما إذا كان شخص آخر قد استخدَم التغيير في السابق أم لا. PointerInputChange::copy()
يُنشئ الآن دائمًا نسخة سطحية. ويعني ذلك أنّه سيتم استخدام نُسخ منPointerInputChange
بعد استخدام إحدى النُسخ. إذا أردت إنشاءPointerInputChange
غير مرتبط، استخدِم طريقة الإنشاء بدلاً من ذلك. (Ie6be4، b/225669674)- تغييرات على واجهة برمجة التطبيقات Cards API لتلقّي ألوان الحاوية والمحتوى من خلال واجهة
CardColors
، وتوفير حالة إيقاف ل البطاقات القابلة للنقر (I927df) - تمت إعادة تسمية المَعلمة
backgroundColor
إلىcontainerColor
في حقول نص Material 3 لتحسين الاتساق مع المكوّنات الأخرى. (I6fbd9)
إصلاح الأخطاء
- تعديلات على المعيار
IconButton
لمواءمته مع مواصفات Material3 (I09eab) - حرِّك ارتفاع الشريط العلوي من Material3 Scaffold إلى الحشو الذي تم تمريره إلى المحتوى، ما يسمح بعرض المحتوى أسفل شريط التطبيق العلوي. في حال تجاهل الرمز
PaddingValues
، قد يتم حجب المحتوى بواسطة الشريط العلوي. (I83cbc، b/217776202)
الإصدار 1.0.0-alpha09
6 نيسان (أبريل) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha09
. يحتوي الإصدار 1.0.0-alpha09 على هذه المراجعات.
الميزات الجديدة
- تمت إضافة واجهة برمجة التطبيقات Material 3 Switch API (I2c3ad)
تغييرات واجهة برمجة التطبيقات
- تمت إضافة إمكانية استخدام القوائم المنسدلة مع حقول النصوص (المعروفة أيضًا باسم "القوائم المنسدلة الظاهرة" أو "مربعات التحرير والسرد"). (I1b832)
- تمت إضافة مَعلمة الشكل إلى نظام MaterialTheme الفرعي ونظام Shape الفرعي. (I37426)
- تمت إضافة مَعلمة موسّعة إلى
ExtendedFloatingActionButton
للتحكّم في ما إذا كان التطبيق المصغّر في الشريط الجانبي موسّعًا أو مصغّرًا، مع إضافة صور متحركة بين كل حالة. تمت إضافة حمولة زائدة لزرّ الإجراء الرئيسي الموسّع مع نص لاحق لزرّ الإجراء الرئيسي الموسّع بدون رمز. (Iba7f1)
الإصدار 1.0.0-alpha08
23 آذار (مارس) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha08
. يحتوي الإصدار 1.0.0-alpha08 على هذه المراجعات.
الميزات الجديدة
- تمت إضافة دعم لحقول النص في Material 3. (I795cc، b/199377790)
تغييرات واجهة برمجة التطبيقات
إصلاح الأخطاء
- يجب إصلاح زر Material3 لقراءة قيمة نمط النص التلقائي من MaterialTheme. (Ie62fc)
الإصدار 1.0.0-alpha07
9 آذار (مارس) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha07
. يحتوي الإصدار 1.0.0-alpha07 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تعديلات على واجهة برمجة التطبيقات Material 3 Surface API تعيد وظائف التحميل الزائد لمساحات العرض القابلة للنقر، بالإضافة إلى إضافة وظيفه لتوفير مساحات عرض قابلة للاختيار والتبديل (I4bf18)
- أصبحت الإصدارات
LazyVerticalGrid
وLazyHorizontalGrid
مستقرة الآن. (I307c0) - تم نقل
LazyVerticalGrid/LazyHorizontalGrid
وجميع واجهات برمجة التطبيقات ذات الصلة إلى الحزمة الفرعية .grid. يُرجى تعديل عمليات الاستيراد من androidx.compose.foundation.lazy إلى androidx.compose.foundation.lazy.grid. (I2d446) - تمّ التراجع عن التغيير السابق الذي كان يعتمد فقط على عرض لملف
WindowInsetsControllerCompat
، وأصبح يتطلّب مرة أخرى نافذة، وهي مطلوبة لإدارة بعض علامات النوافذ. تم إيقافViewCompat.getWindowInsetsController
نهائيًا واستخدامWindowCompat.getInsetsController
لضمان استخدام النافذة الصحيحة (مثلاً إذا كان العرض في مربّع حوار). (I660ae، b/219572936) - تمت إضافة واجهة برمجة تطبيقات
LazyVerticalGrid
جديدة لتحديد أحجام المحاور الأفقية والرأسية (I17723).
إصلاح الأخطاء
- تعديلات على واجهة برمجة التطبيقات Card API لمتابعة التغييرات في واجهة برمجة التطبيقات Surface (I3c8b9)
الإصدار 1.0.0-alpha06
23 شباط (فبراير) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha06
. يحتوي الإصدار 1.0.0-alpha06 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تتم إضافة
NavigationDrawerItem
التي تمثّل وجهة واحدة ضمن الأدراج (Ic396f، b/218286829) - تمت إضافة
PermanentNavigationDrawer
وDismissibleNavigationDrawer
كواجهتَي برمجة تطبيقات تجريبيتَين. هذه هي الأدراج المناسبة للأجهزة ذات الشاشات الكبيرة. (I5f8ab، b/218286829) - إتاحة شريط التطبيق السفلي بتصميم Material 3 (Ic432a)
- تمت إعادة تسمية "
NavigationDrawer
" إلى "ModalNavigationDrawer
" (I1807d، b/218286829) - تمت إضافة فئة شريط التمرير وعناصر الرمز المميّز في Material 3 (I1ccee)
- تمت إضافة علامة التبويب، يُرجى الاطّلاع على المستندات للحصول على نموذج الاستخدام (Ie0146).
إصلاح الأخطاء
- تم إصلاح مشكلة اختيار قارئ الشاشة
TalkBack
لعنوان فارغ في شريط التطبيقات العلوي عند استخدام ميزة التنقّل الخطي. (Id4690) - تمت إضافة
IconSize
إلىFloatingActionButtonDefaults
. (Ia71cf) - إصلاح خطأ في أزرار
AlertDialog
المخفية عند إضافة نص طويل باستخدامLazyColumn
(Ib2cc9، b/216663029)
الإصدار 1.0.0-alpha05
9 شباط (فبراير) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha05
. يحتوي الإصدار 1.0.0-alpha05 على هذه المراجعات.
الميزات الجديدة
تمت إضافة 3 مكونات من لغة التصميم Material Design
- القائمة المنسدلة
- البطاقات
تغييرات واجهة برمجة التطبيقات
- دالة
Surface
متوقّفة نهائيًا تأخذ دالة callback عند النقر يجب إنشاء مساحات عرض قابلة للنقر باستخدامInteractionSource
وModifier.clickable()
. (I211c6) - تمت إضافة دعم لإبراز الزر المصغّر للإجراءات السريعة عند الضغط عليه أو التركيز عليه. (Ibb584)
- تم تغيير واجهة برمجة التطبيقات
Surface
لتلقّي InteractionSource التي تتيح التحكّم في مظهره في حالات مختلفة. (Iafbc8)
إصلاح الأخطاء
- تمت إضافة الألوان الثانوية غير المتوفّرة في أنظمة الألوان الديناميكية (I456c4 وb/214588434).
الإصدار 1.0.0-alpha04
26 كانون الثاني (يناير) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha04
. يحتوي الإصدار 1.0.0-alpha04 على هذه المراجعات.
تغييرات واجهة برمجة التطبيقات
- تمت إضافة
NonRestartableComposable
إلى الطرق التي تُعدّ مثيلًا مفعّلاً للطرق الحالية بدون منطق معقّد. يقلل ذلك من عمليات التحقّق من ميزة "تذكُّر القيم" (العمليات التي تساوي) التي ينشئها المُجمِّع لجميع المَعلمات التي تتم تكرارها في الدالة الداخلية التي يتمّ استدعاؤها. (I90490) - تمت إضافة فاصل Material 3. (Ica5fc)
- ضَع علامة على مربّع الاختيار وزر الاختيار باستخدام تعليق توضيحي لواجهة برمجة التطبيقات التجريبية. (Ie44bb)
- تمت إضافة دعم لمؤشرات التقدم في Material 3. (Iff232، b/205023841)
إصلاح الأخطاء
- تعديل لون حاوية
TextButton's
غير مفعّلة ليصبح شفافًا (I6b248، b/213339737)
الإصدار 1.0.0-alpha03
12 كانون الثاني (يناير) 2022
تم إصدار androidx.compose.material3:material3:1.0.0-alpha03
. يحتوي الإصدار 1.0.0-alpha03 على هذه المراجعات.
إصلاح الأخطاء
- أضِف
LocalIndication
إلىMaterialTheme
في المادة 3. (I7ce4e) - يجب تصحيح نصف قطر الزاوية المطبَّق على مربّعات الاختيار (I38b03 وb/175198975 وb/202309440).
تعديلات على التبعيات
- يعتمد الآن على Kotlin
1.6.10
.
الإصدار 1.0.0-alpha02
1 كانون الأول (ديسمبر) 2021
تم إصدار androidx.compose.material3:material3:1.0.0-alpha02
. يحتوي الإصدار 1.0.0-alpha02 على هذه المراجعات.
الميزات الجديدة
- إضافة ميزة مربّع الاختيار وزر الاختيار
- تم تعديلها لتصبح متوافقة مع Kotlin
1.6.0
تغييرات واجهة برمجة التطبيقات
- أزِل الدرج من إطار العمل في Material 3. (I04f51)
- إتاحة استخدام
Checkbox
في Material 3 (Id5542) - إتاحة استخدام Material 3
RadioButton
(I20334)
إصلاح الأخطاء
- يمكنك تقليل نصف قطر تموج
IconButton
من 40dp إلى 20dp. (I68bbe، b/206674345) - مسار سلسلة المنفذ السريع لـ
Text
يتغيّر منcompose.material
(I30b03) - تم إصلاحه، ولكن هذا الزرّ المُبرمَج بشكلٍ ثابت مفعَّل دائمًا. (Iea832، b/205335456)
الإصدار 1.0.0-alpha01
27 تشرين الأول (أكتوبر) 2021
تم إصدار androidx.compose.material3:material3:1.0.0-alpha01
. يحتوي الإصدار 1.0.0-alpha01 على هذه المراجعات.
الميزات الجديدة
مظهر Material Design 3 واللون الديناميكي في Material You
مكونات Material Design 3
- الأزرار
- زر الإجراء الرئيسي (FAB) وزر الإجراء الرئيسي الموسّع (FAB)
- المحادثات
- شريط التنقّل
- لائحة التنقّل
- شريط التنقّل
- شريط التطبيق العلوي
- الشارة
- الرمز
- نص
- السطح
- التنسيق
- لون المحتوى
لمزيد من المعلومات، يُرجى الاطّلاع على قسم تصميم المواد 3 وتصميم المواد في دليل "مظاهر تصميم المواد" في تطبيق "المراسلة".