إنشاء المادة 3

يمكنك إنشاء واجهات المستخدم في Jetpack Compose باستخدام مكونات Material Design 3، وهي المراحل المتطوّرة التالية في Material Design. تتضمّن المادة 3 تصاميم ومكوّنات محدّثة وميزات تخصيص Material You مثل الألوان الديناميكية، وهي مصممة لتكون متوافقة مع النمط المرئي الجديد في Android 12 وواجهة مستخدم النظام.
التعديل الأخير الإصدار المستقر سحب المرشح الإصدار التجريبي إصدار أولي
26 يونيو 2024 1.2.1 - 1.3.0-beta04 -

البنية

الإنشاء هو تركيبة من سبعة معرّفات مجموعات Maven ضمن androidx. تحتوي كل مجموعة على مجموعة فرعية مستهدفة من الوظائف، ولكل منها مجموعة خاصة من ملاحظات الإصدار.

يوضح هذا الجدول المجموعات والروابط لكل مجموعة من ملاحظات الإصدار.

مجموعةالوصف
compos.animationيمكنك إنشاء صور متحركة في تطبيقات Jetpack Compose لإثراء تجربة المستخدم.
compose.compilerيمكنك تحويل دوال @Composable وتفعيل التحسينات باستخدام المكون الإضافي لبرنامج التحويل البرمجي لـ Kotlin.
composation.foundationيمكنك كتابة تطبيقات Jetpack Compose باستخدام الوحدات الأساسية الجاهزة للاستخدام وتوسيع الأساس لإنشاء أجزاء نظام التصميم الخاصة بك.
compose.materialيمكنك إنشاء واجهات المستخدم في Jetpack Compose باستخدام عناصر التصميم المتعدد الأبعاد. وهي نقطة الدخول ذات المستوى الأعلى في Compose، والتي تم تصميمها لتوفير مكونات تطابق العناصر المذكورة في www.material.io.
compose.material3يمكنك إنشاء واجهات المستخدم في Jetpack Compose باستخدام مكونات Material Design 3، وهي المراحل المتطوّرة التالية في Material Design. تتضمّن المادة 3 تصاميم ومكوّنات محدّثة وميزات تخصيص Material You مثل الألوان الديناميكية، وهي مصممة لتكون متوافقة مع النمط المرئي الجديد في Android 12 وواجهة مستخدم النظام.
compose.runtimeهي الوحدات الأساسية التي يستند إليها نموذج البرمجة وإدارة الحالة في Compose، بالإضافة إلى وقت التشغيل الأساسي الذي يستهدفه المكوِّن الإضافي Compose Compiler Plugin.
compos.uiيجب استخدام المكونات الأساسية لواجهة مستخدم الإنشاء للتفاعل مع الجهاز، بما في ذلك التنسيق والرسم والإدخال.

إعلان التبعيات

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

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

رائع

dependencies {
    implementation "androidx.compose.material3:material3:1.2.1"
    implementation "androidx.compose.material3:material3-window-size-class:1.2.1"
    implementation "androidx.compose.material3:material3-adaptive-navigation-suite:1.3.0-beta03"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.material3:material3:1.2.1")
    implementation("androidx.compose.material3:material3-window-size-class:1.2.1")
    implementation("androidx.compose.material3:material3-adaptive-navigation-suite:1.3.0-beta03")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

لمزيد من المعلومات حول العناصر الاعتمادية، يُرجى الاطّلاع على إضافة تبعيات الإصدار.

ملاحظات

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

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

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

إنشاء الإصدار 1.0 من Material3 المشترك

الإصدار 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:

الإصدار 1.0 من "مجموعة التنقّل التكيُّفية" في Material3

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

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

  • جعل واجهات برمجة التطبيقات لمجموعة التنقّل غير تجريبية (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 على هذه عمليات التنفيذ.

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

  • تعديل اسم الحزمة إلى مجموعة التنقّل من مجموعة التنقّل (I7eff7)
  • تم تعديل مكوّنات Material3 التي تعرض MutableInteractionSource في واجهة برمجة التطبيقات الخاصة بها ليتم الآن عرض عنصر MutableInteractionSource قابل للإلغاء ويتم ضبطه تلقائيًا على قيمة فارغة. ما مِن تغييرات دلالية هنا: يعني تمرير "خالٍ" أنّك لا تريد رفع "MutableInteractionSource"، وسيتم إنشاؤه داخل المكوِّن إذا لزم الأمر. يؤدي التغيير إلى القيمة "فارغ" إلى السماح لبعض المكوّنات بعدم تخصيص MutableInteractionSource مطلقًا، كما يسمح للمكوّنات الأخرى بإنشاء مثيل بطريقة كسولة عند الحاجة، ما يحسّن الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدم MutableInteractionSource التي تمرِّرها إلى هذه المكوّنات، ننصحك باستخدام قيمة null بدلاً من ذلك. يوصى أيضًا بإجراء تغييرات مماثلة في المكونات الخاصة بك. (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 على عمليات التنفيذ هذه.

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

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

  • حلّ مشكلة ملء الشاشة بالكامل عندما يحتوي سطح الجذر على 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 على عمليات التنفيذ هذه.

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

إنشاء الإصدار 1.0 التكيُّفي من Material3

الإصدار 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 التكيّفية:

إنشاء Material3 الإصدار 1.3

الإصدار 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 إعداد المسقط الرأسي، ويمكنك تحديث واجهات برمجة التطبيقات Pull To Refresh API لتفعيل قيمة منطقية بدلاً من lambda. دعم محاذاة المحتوى في PullToRefreshBox (I75679)
  • جعل "TooltipScope" واجهة مغلقة وإنشاء عملية تنفيذ داخلية لاستخدامها في TooltipBox وشركة التصنيف (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)
  • تم تحديث واجهة برمجة التطبيقات للحصول على روابط ذات طابع متعدد الأبعاد في نص. وعلى وجه التحديد، تمت إزالة الطرق من TextDefaults لإنشاء LinkAnnotations ذي موضوع معيّن وتحليل رموز HTML باستخدام روابط ذات مواضيع محدّدة. بدلاً من ذلك، تمت إضافة فئة TextLinkStyles تسمح بتصميم الروابط كمَعلمة في النص القابل للإنشاء. (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 API. إلى أن يصبح BasicTooltip في المؤسسة مستقرًا، يتم دمج وظائفه مع "TooltipState". (Icda29)
  • تمت إضافة عنصر TextDefaults يحتوي على طرق لإنشاء LinkAnnotation وتحليل السلسلة الموضوع عليها علامة HTML والتي تطبّق MaterialTheme على الروابط (I98532، b/139312671).
  • لم يعد ExposedDropdownMenuBoxScope يسمح بالفئات الفرعية. تحتوي الآن القوائم المنسدلة المعروضة على MenuAnchorType والذي يجب تمريره إلى menuAnchor للتوافق بشكل أفضل مع a11y. ويجب استخدام هذه السمة بدلاً من تمرير focusable إلى ExposedDropdownMenu التي تم إيقافها نهائيًا الآن. يتضمّن menuAnchor مَعلمة جديدة للتحكّم في حالة enabled. (I55ee6، b/257209915، b/308840226)
  • تم إصلاح لون الحد OutlinedButton عند إيقافه. تمت إضافة حِمل زائد ButtonDefaults.outlinedButtonBorder("enabled") يأخذ حالة التفعيل. (Ie650b، وb/318461363)
  • تمت إضافة فئة CarouselItemInfo جديدة لمساعدة العملاء في الحصول على معلومات حول مقاسات السلع. (I9070c)
  • تم إيقاف دالة الإنشاء ColorScheme التي لا تحتوي على حاويات سطحية نهائيًا. يُرجى النقل إلى الدالة الإنشائية التي تتضمّن حاويات سطحية. (I35c11)
  • [مخطط]تمت إعادة تسمية TextFieldDefaults ContainerBox إلى Container. (Ie8d3b)

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

  • في حال ضبط السياسة sheetSwipeEnabled على "خطأ"، لن يتم الانتقال إلى الأسفل من خلال التمرير المدمَج مع BottomSheetScaffold. (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).
  • تم تعديل درج التنقّل في Compose M3 (ModalDrawerSheet وDismissibleDrawerSheet) لإتاحة ظهور ميزة توقُّع للخلف على U+ عند تفعيل الميزة (Ie5b0b).
  • تمت إضافة واجهة برمجة تطبيقات جديدة في Icon للسماح بتمرير درجات اللون مثل lambda لتجنب إعادة الإنشاء. (I5b5a2)
  • تتيح واجهات برمجة التطبيقات لشريط التطبيقات العلوي الآن استخدام ارتفاعات مخصَّصة لكل من الأقسام الثابتة والقابلة للتصغير. (Ib8b0c، b/323403446)

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

  • تتيح واجهات برمجة التطبيقات لشريط التطبيقات العلوي الآن استخدام ارتفاعات مخصَّصة لكل من الأقسام الثابتة والقابلة للتصغير. تم إصلاح مشكلة تسبّبت في إعادة إنشاء أشرطة التطبيق المكوّنة من سطر واحد عددًا كبيرًا جدًا من المرات عند تمرير المحتوى. تم حل مشكلة اقتطاع عناوين URL من قِبل "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. ما مِن تغييرات دلالية هنا: يعني تمرير "خالٍ" أنّك لا تريد رفع "MutableInteractionSource"، وسيتم إنشاؤه داخل المكوِّن إذا لزم الأمر. يؤدي التغيير إلى القيمة "فارغ" إلى السماح لبعض المكوّنات بعدم تخصيص MutableInteractionSource مطلقًا، كما يسمح للمكوّنات الأخرى بإنشاء مثيل بطريقة كسولة عند الحاجة، ما يحسّن الأداء على مستوى هذه المكوّنات. إذا كنت لا تستخدم MutableInteractionSource التي تمرِّرها إلى هذه المكوّنات، ننصحك باستخدام قيمة null بدلاً من ذلك. يوصى أيضًا بإجراء تغييرات مماثلة في المكونات الخاصة بك. (I41abb، b/298048146)
  • تتم إضافة RippleConfiguration وLocalRippleConfiguration للسماح بتخصيص التموّجات لكل مكوّن أو شجرة فرعية باستخدام قيم ثابتة. على سبيل المثال، لتغيير لون عنصر لا يمكنك التحكّم فيه، أو لإيقاف التموّج لأحد المكونات. في معظم الحالات، يجب استخدام القيم التلقائية: تكون واجهات برمجة التطبيقات هذه بمثابة مخرج لتخصيص مكوّنات فردية / أشجار فرعية محدودة. لإجراء تغييرات أوسع وأنظمة تصميم مخصّصة، عليك إنشاء موجة خاصة بك باستخدام createRippleModifierNode. (I7b5d6، b/298048146)
  • تضيف واجهة برمجة تطبيقات Ripple جديدة في المادة3، ما تحلّ محلّ واجهة rememberRipple المتوقّفة. ستتم أيضًا إضافة عنصر LocalUseFallbackRippleImplementation مؤقت CompositionLocal لإعادة مكوناتmaterial3 إلى استخدام واجهات برمجة التطبيقات rememberRipple / RippleTheme المتوقّفة. ستتم إزالة هذا الاسم في الإصدار الثابت التالي، وهو مخصّص فقط ليكون وسيلة مساعدة مؤقتة لنقل البيانات في الحالات التي تقدّم فيها RippleTheme مخصّصًا. (I34cbc، b/298048146)

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

  • تمت إزالة التركيب الفرعي داخل ModalBottomSheet لتحسين الأداء. تم إصلاح مشكلة تعطُّل ModalBottomSheet في سيناريوهات معيّنة بالإضافة إلى LookaheadScope. (I2a198)
  • تمت إزالة التركيب الفرعي داخل BottomSheetScaffold لتحسين الأداء. تم إصلاح مشكلة تعطُّل BottomSheetScaffold في سيناريوهات معيّنة بالإضافة إلى LookaheadScope. (Ie6401)
  • ويتم ضبط محاذاة الشارة لتقترب من وسط محتوى الارتساء بالنسبة إلى أعلى يسار الشاشة. (I18a28)
  • يجب حلّ مشكلة "a11y" في "DateRangePicker" حيث تم عرض نص "الشهر-السنة" على أنّه قابل للتنفيذ لقارئ الشاشة و"الوصول عبر مفتاح تحكّم" و"الوصول عبر Voice". (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

المكوّنات الجديدة للتصميم المتعدد الأبعاد 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 بشكل صريح. سيتم إصلاح ذلك في الإصدار التالي.

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

  • إضافة إمكانية تفعيل علامات إقحام التلميحات لواجهات برمجة تطبيقات Tooltip البسيطة (Ibf767)
  • تمت إعادة تسمية كل من SwipeToDismissState وrememberSwipeToDismiss وSwipeToDismissValue لتصبح _SwipeToDismissBox_. (I68d6d)

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

  • تم إصلاح قيمة المساحة المتروكة النهائية ListItem للتوافق مع المواصفات. (Ibd68b، b/305342674)
  • تم الآن ربط لون المخطط للبطاقة المحدَّدة بشكل صحيح باللون OutlineVariant. (I75480، b/310979715)
  • يسحب اللون الديناميكي الآن من أدوار الألوان المحددة بواسطة النظام. يؤدي ذلك إلى تحسين التباين للمحتوى الذي يمكن الوصول إليه، وملاءمة اللون الديناميكي بشكل أكبر مع مواصفات المواد. (I1de96)
  • تم إصلاح معالجة الجزء الخلفي للجهاز ModalBottomSheet في الإصدار T/13 من نظام التشغيل Android والإصدارات الأحدث عند 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. تم الآن تصنيف DismissState.progress على أنّه FloatRange بين 0.0 و1.0. تمت الآن إزالة ميزة "توفير السلامة" و"المنشئة" التي تم إيقافها نهائيًا من قِبل "DismissState". تم وضع علامة على العنصر 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 lambda (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 في سيناريوهات معيّنة مع تنسيقَي Lookahead و"الكسول" المدمجَين. (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 بالطريقتَين الفتح والإغلاق، وأصبحت الإزاحة ظاهرة الآن كعدد عشري بدلاً من كائن حالة. يمكنك الوصول إلى الاعتماد الكربوني مباشرةً من خلال 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 للسماح لزر التطبيق الرئيسي (FAB) بتركيب شريط التطبيق السفلي في السقالة بدلاً من تثبيته فوقه. (Iecb47)
  • تمت إضافة مكوّن تصنيف بسيط يستند إلى BasicTooltipBox ولن يتم إغلاقه عند النقر خارج حدود التصنيف. (I821f9)

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

  • تمت إزالة استخدام rememberSaveable للتلميحات. (Icc131، b/299500338)
  • تم تقديم علامة مؤقتة لتحديد ما إذا كان يجب على سكافولد قياس الأطفال أثناء القياس أو أثناء الوضع. سيتم قياس هذا تلقائيًا في القياس. إذا كنت تواجه مشاكل في السلوك الجديد، يُرجى الإبلاغ عن المشكلة. (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 بحيث تعتمد إزاحة x على اتجاه التنسيق المحلي فقط، ولن يتم عكس إزاحة y بعد الآن عندما تكون القائمة بالقرب من أسفل الشاشة. (Iccc74، b/294103942)
  • تم إصلاح طريقة احتساب offset في DropdownMenu بحيث تعتمد إزاحة x على اتجاه التنسيق المحلي فقط، ولن يتم عكس إزاحة 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 على هذه عمليات التنفيذ.

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

  • تجريبي Segmented Button API (Ifc8fb)
  • تشتمل الفواصل الآن على معلمة للتحكم في الاتجاه لدعم الفواصل الرأسية. (I4c899، b/288438593)

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

  • وسوف ننقل تبعية الكثافة إلى مستوى المكون. ينطبق ذلك على المكوّنات التالية: SwipeToDismiss والمكوّنات المستندة إلى ورقة البيانات. يُرجى استخدام التحميل الزائد الجديد الذي يتم توفيره عندما تكون الكثافة مَعلمة. (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 (in sp) الصري إلى TextStyles من Typography. يمكنك الرجوع إلى مستندات واجهة برمجة التطبيقات إذا أردت تخصيص هذه القيم، والاطّلاع على مشاركة المدونة للحصول على شرح مفصَّل لهذه التغييرات. (I6266f، Icabc3)

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

  • تمت إضافة حمل زائد لـ RangeSlider، وهو إصدار حالة من المكوِّن. تم إنشاء RangeSliderState يحتوي على جميع المعلومات للمقطع الصوتي النشط الحالي وقياسات مكوّنات RangeSlider ومنطق السحب والإيماءات. (I8c270)
  • أصبح شريط البحث يتيح الآن استخدام التظليل من خلال مَعلمة shadowElevation التي تمّت إضافتها مؤخرًا. (Ia5369، b/271040353)
  • يمكن الآن استخدام أدوار SurfaceContainer جديدة في "ColorScheme".
  • يمكن الآن إيقاف تراكب ارتفاع درجات لون السطح مع استخدام تركيبة LocalTonalElevationEnabled المحلية. (Ic203c، b/277774590)

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

  • افتح المواد الإنشائية لألوان المكونات. (I8c4a6)
  • إضافة مَعلمة يمكن التركيز عليها إلى كلٍّ من واجهات برمجة تطبيقات التلميحات، ليتمكّن المطوّرون من جعل التلميح يشغّل أحداث اللمس أو لا ويجب الانتباه إلى أنّ هذا الإجراء قد يعطّل الاجتياز التلقائي لتركيز إمكانية الوصول. (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/276483䢡
  • تم إيقاف 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)
  • تم إصلاح state.hour التي تعرض قيمة غير صحيحة الساعة 11 مساءً. (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/276483䢡

الإصدار 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

تحسينات على مكوّنات 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)
  • تؤثر المَعلمتان containerColor وcontentColor في ميزة BottomSheetScaffold في المحتوى فقط. (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 القابل للإنشاء. يتيح استخدام تنسيقات مختلفة، بناءً على ضبط الشاشة (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 API التفاعلية من مرحلة تجريبية. (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 API لاختيار نطاق من التواريخ. (I7a6c3، b/267194809)
  • تمت إتاحة وضع الإدخال Material 3 لاختيار النطاقات الزمنية عبر واجهة برمجة تطبيقات DateRangePicker. (Ifdbc4)
  • تتيح ألوان حقول النص الآن تخصيص ما يلي:
    • يستند لون حقل الإدخال وألوان نص العنصر النائب إلى التركيز وحالة الخطأ. تمت إعادة تسمية المعلَمة textColor إلى unfocusedTextColor، كما تمت إعادة تسمية placeholderColor إلى unfocusedPlaceholderColor.
    • لون الحاوية للحقول النصية التي تم ملؤها استنادًا إلى حالة الخطأ مع معلَمة errorContainerColor الجديدة
  • تم تعديل ألوان حقول نص القائمة المنسدلة المعروضة من خلال المَعلمات لإتاحة واجهة برمجة التطبيقات الجديدة للبادئة واللاحقة. (I9c8b4، وb/254284181، وb/264766350)

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

  • إلغاء بعض إصدارات Slider API وإزالة الأحمال الزائدة لشريط التمرير والتي يغطيها شريط التمرير التجريبي الجديد مع إبهام ومسار مخصّصَين. جارٍ ترقية 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)
  • تحسينات على إمكانية الوصول للمادتين 3 DatePicker وDateRangePicker (I5087e)
  • إصلاح الخطأ الذي يتم فيه نشر قيد الارتفاع الأقصى وقد يحدث عطل. (I30d8c)
  • تمت إزالة الأدوار الدلالية من مساحات العرض القابلة للنقر والاختيار، والمكوّنات المعدَّلة التي استخدمتها لتحديد الأدوار باستخدام edit.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)
  • تنفيذ بطاقة سفلية مشروطة للمادة 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)
  • تمت استعادة السمة getter 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.

التحديثات المتعلقة بالاعتمادية

الإصدار 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) على مساحات العرض. سيتم استخدام هذه السمة في تغيير لاحق يحدد ترتيب الاجتياز بناءً على المعنى الدلالي لعناصر مثل الأسطح. (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. إليك المكان الذي تم الإبلاغ فيه عن المشكلة في الأصل. تم إرسال إصلاح وسيكون متاحًا في تحديث Compose التالي. لحلّ هذه المشكلة، عليك تحديث مكتبتَي 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.
  • تم تعديل "الأدراج" و"جداول بيانات Google" لتأخير الضغطات بشكل صحيح في حال تحولت الإيماءات إلى أحداث تمرير.

التحديثات المتعلقة بالاعتمادية

  • تعتمد Compose UI وCompose Material الآن على دورة الحياة 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 إلى نص المادة وTextField وOutlinedTextField، ما يسمح بضبط الحد الأدنى لارتفاع المكوِّن من حيث عدد الأسطر (I4af1d)
  • يمكنك إيقاف الدالة TopAppBarDefaults smallTopAppBarColors نهائيًا لصالح الدالة topAppBarColors الجديدة التي يجب استخدامها عند إنشاء TopAppBar. (Ie6cb9)
  • تمت إضافة المَعلمة minLines إلى BasicText وBasicTextField. تسمح هذه السياسة بضبط الحد الأدنى لارتفاع العناصر القابلة للإنشاء من حيث عدد الأسطر (I24294 وb/122476634)

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

  • قص محتوى Material3 IconButton وIconToggleBotton على شكل طبقة حالة المكوِّن (مثل شكل دائري). (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 على عمليات التنفيذ هذه.

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

  • إصلاح في شريط التطبيق العلوي عند تطبيق العنوان باستخدام نمط النص وفرشاة. (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

فئة حجم النافذة

  • 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 على هذه عمليات التنفيذ.

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

  • تمت إضافة مَعلمة خانة لدعم واجهة برمجة التطبيقات لحقل النص إلى حقل النص (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)
  • تؤدي هذه السياسة إلى إيقاف دالة Material 3 التجريبية SmallTopAppBar وتقديم دالة TopAppBar مكافئة. يُرجى نقل بيانات استخدامك إلى الميزة الجديدة. (I74404، b/226918634)
  • يضيف هذا الإعداد إمكانية التحكّم في سلوكَي شريط التطبيق العلوي والمحاذاة. (I15c81)
  • لإزالة المسافة البادئة للبدء من الفاصل، ونقل اللون إلى المعلمة الأخيرة. (If7be2)

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

  • يمكنك السماح لمربّعات الحوار بتعريف نفسها للمستخدمين للتحدث عن طريق الإعلان عن كلمة Dialog عند عرضها. (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 لتصبح "قابلة للإنشاء" وتوفير القيم التلقائية لحالة شريط التطبيق العلوي ومواصفات الصور المتحركة. (I642b3)
  • تم تعديل توقيعات مكوّنات FAB لمطابقة واجهة برمجة التطبيقات لسطح العرض (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)
  • إعادة ترتيب معلَمات شريط التمرير في المادة 3 للحفاظ على الاتساق داخل واجهة برمجة التطبيقات (I0aee7)
  • أعِد ترتيب المَعلمتَين NavigationBar وNavigationRail للحفاظ على الاتساق داخل واجهة برمجة التطبيقات (I51cda)
  • أعِد ترتيب المَعلمات في المادة 3 للحفاظ على الاتساق في واجهة برمجة التطبيقات. (If4ae1)
  • إعادة ترتيب معلَمات شريط التمرير في المادة 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).

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

  • تغيير اسم المَعلمة من قيم إلى قيمة في RangeSlider (I3b79a)
  • تغييرات في واجهة برمجة التطبيقات لتنفيذ InputChip لإتاحة حالة قابلة للاختيار وفقًا لمواصفات التصميم المتعدد الأبعاد. دعم إضافي بألوان FilterChip لحالة الإيقاف المحدّدة (I55244، b/235792432)
  • إضافة زر الإجراء الرئيسي (FAB) التلقائي BottomAppBar (Ida4c8)
  • تمت إضافة ColorScheme.surfaceColorAtElevation (Id41af)
  • يتم الآن إنشاء الواجهات في مكتبات الإنشاء باستخدام jdk8 طرق الواجهة الافتراضية (I5bcf1)
  • يتم الآن تنفيذ الدالة WindowWidthSizeClass وWindowHeightSizeClass للمقارنة، لذا يمكن مقارنتها باستخدام عوامل التشغيل (<, <=, >=, >) وغيرها من واجهات برمجة التطبيقات. (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 إلى Material 3 (I18e38).
  • إضافة متوافقة مع Material3 AssistChip وInputChip (I0d25a)
  • إضافة توافق Material3 FilterChip وSuggestionChip (I9fdf3)

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

  • تمت إعادة تسمية "TextFieldDefaults.BorderStroke" القابل للإنشاء الذي يرسم حدًا في OutlinedTextField إلى "TextFieldDefaults.BorderBox". (I5f295)
  • تبديل التغييرات المرئية في m3 (Iab30e)
  • السماح بتمرير الألوان إلى أزرار الرموز القياسية. (Ia2445)

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

  • إضافة فحص الوبر إلى المواد 3/السقالة للتأكد من استخدام المساحة المتروكة الداخلية (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، وإزالة lambda اللاحقة من BottomAppBar باستخدام FAB. (I92c47)
  • تتم إضافة Material3 FilledIconButton وFilledTonalIconButton وOutlinedIconButton. (Ib2bda)
  • تعمل هذه السياسة على تعديل واجهة برمجة تطبيقات Material 3 Snackbar لقبول قيم الألوان للإجراء الاختياري ورفض الإجراء. (Ibe4b4)
  • تم إيقاف الاستهلاك الجزئي (الموضع أو الموضع) نهائيًا في PointerInputChange. ويمكنك استخدام consume() لاستهلاك التغيير بالكامل. يمكنك استخدام السمة isConsumed لتحديد ما إذا كان شخص آخر قد استخدم التغيير من قبل أم لا.
  • يصنع PointerInputChange::copy() الآن نسخة سطحية. ويعني ذلك أنّه سيتم استهلاك نُسخ من PointerInputChange بعد استهلاك إحدى النُسخ. إذا أردت إنشاء PointerInputChange غير مرتبطة، استخدِم الدالة الإنشائية بدلاً منها. (Ie6be4، b/225669674)
  • تغييرات في Cards API للحصول على ألوان الحاوية والمحتوى من خلال واجهة CardColors، وإتاحة حالة إيقاف للبطاقات القابلة للنقر (I927df)
  • تمت إعادة تسمية المعلَمة backgroundColor إلى containerColor في حقول نص المادة 3 لتحسين الاتساق مع المكونات الأخرى. (I6fbd9)

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

  • تم إدخال تعديلات على معيار IconButton العادي لتتوافق مع مواصفات Material3. (I09eab)
  • حرِّك ارتفاع الشريط العلوي للمادة 3 سقالة في المساحة المتروكة التي يتم تمريرها إلى المحتوى، ما يسمح بعرض المحتوى أسفل شريط التطبيق العلوي. وفي حال تجاهل 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 للتحكّم في ما إذا كان سيتم توسيع زر الإجراء الرئيسي (FAB) أو تصغيره، مع وضع صور متحركة بين كل حالة. تمت إضافة حمل زائد لـ FAB الموسّع مع النص اللاحقة لـ ExtendedFAB بدون رمز. (Iba7f1)

الإصدار 1.0.0-alpha08

23 آذار (مارس) 2022

تم طرح androidx.compose.material3:material3:1.0.0-alpha08. يحتوي الإصدار 1.0.0-alpha08 على هذه عمليات التنفيذ.

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

  • تمت إضافة دعم لحقول النص في المادة 3. (I795cc، b/199377790)

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

  • إضافة مُقسّم تلقائي للقائمة (I01374)
  • تمت إضافة مَعلمة اللون surfaceTint إلى فئة واحدة (ColorScheme). (I2f558)

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

  • أصلح في زر 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 API (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". (رقم تعريف 4690)
  • تمت إضافة 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 على هذه عمليات التنفيذ.

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

تمت إضافة مكونات Material Design 3

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

  • تم إيقاف إحدى وظائف Surface التي تتطلب معاودة الاتصال من خلال ميزة onClick. ويجب إنشاء مساحات العرض القابلة للنقر باستخدام InteractionSource وModifier.clickable(). (I211c6)
  • تمت إضافة دعم المسقط الرأسي المضغوط والمركزي لزر الإجراءات الرئيسي (FAB). (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)
  • تمت إضافة مُقسّم المادة 3. (Ica5fc)
  • ضع علامة على مربع الاختيار وزر الاختيار باستخدام تعليق توضيحي تجريبي لواجهة برمجة التطبيقات. (Ie44bb)
  • تمت إضافة دعم لمؤشرات التقدم في المادة 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)

التحديثات المتعلقة بالاعتمادية

  • تعتمد الآن على لغة 1.6.10 بلغة Kotlin.

الإصدار 1.0.0-alpha02

1 كانون الأول (ديسمبر) 2021

تم طرح androidx.compose.material3:material3:1.0.0-alpha02. يحتوي الإصدار 1.0.0-alpha02 على عمليات التنفيذ هذه.

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

  • إضافة دعم لمربّع الاختيار وزر الاختيار.
  • تم التعديل للتوافق مع لغة "1.6.0" بلغة Kotlin.

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

  • إزالة الدرج من سقالة المادة 3. (I04f51)
  • يمكن إضافة دعم Checkbox للمواد 3. (Id5542)
  • يمكن إضافة دعم RadioButton للمواد 3. (I20334)

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

  • يجب تقليل نصف قطر التموج IconButton من 40 بكسل مستقل الكثافة إلى 20 بكسل مستقل الكثافة. (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

للمزيد من المعلومات، يمكنك الاطّلاع على قسم التصميم المتعدد الأبعاد 3 وMaterial You في دليل استخدام "تخصيص التصميم المتعدد الأبعاد" في دليل Compose.