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

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

التركيبة

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

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

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

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

لإضافة تبعية إلى Compose، عليك إضافة مستودع 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.0.0-alpha05"
}

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.0.0-alpha05")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

لمزيد من المعلومات حول التبعيات، انظر إضافة تبعيات الإصدار.

ملاحظات

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

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

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

إنشاء الإصدار 1.0 من حزمة "التنقل التكيُّفي" باستخدام Material3

الإصدار 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 قابلة للتعديل والتي يتم ضبطها تلقائيًا على القيمة "فارغ". ما مِن تغييرات دلالية هنا: يعني ضبط القيمة "فارغ" أنك لا تريد رفع 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 على هذه الالتزامات.

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

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

  • إصلاح مكوِّن التنقل الذي يملأ الشاشة بأكملها عندما يحتوي سطح الجذر على 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 من Compose 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).

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

  • تربط المفصّلة المنقولة الخصائص في Posture بقائمة معلومات المفصّلة (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 التكيفية:

الإصدار 1.3 من Compose Material3

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

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

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

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

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

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

  • تم إصلاح قيمة المساحة المتروكة النهائية ListItem لتتوافق مع المواصفات (Ibd68b، b/305342674).
  • تم الآن ربط لون المخطط للبطاقة المحددة بشكل صحيح مع OutlineVariant. (I75480، b/310979715)
  • يسحب اللون الديناميكي الآن من أدوار الألوان التي يحددها النظام. يساعد ذلك في تحسين درجة التباين في المحتوى الذي يمكن الوصول إليه، كما يساعد في محاذاة اللون الديناميكي بشكل أكبر مع مواصفات المادة (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) نهائيًا. تمت الإشارة إلى أنّ مكوّن 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)

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

  • يمكنك وضع علامة على DismissDirection وDismissValue SwipeToDismissBox على أنّها تجريبية. (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)
  • أصبحت واجهات Foundation Tooltip API الآن @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 وLazy المتداخلة. (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 باعتبارها لامدا. من المفترض أن تكون هذه الطُرق أكثر أداءً من النُسخ السابقة. (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)
  • عدِّل formatWithSkeleton DatePicker لتضمين خريطة تُستخدم كذاكرة تخزين مؤقت لتحسين الأداء. (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 لا تؤثر الآن disabledUncheckedColor CheckboxDefaults.colors() إلا على حدود مربّع الاختيار. إنّ الحالات الخاصة التي تتطلب منك ضبط لون المربّع الداخلي عند إيقاف هذه الميزة وإزالة العلامة منها تتطلب مثيلاً معدَّدًا من 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 تلقائيًا في أسلوب الخط في المادة 3. وتم أيضًا تغيير نمط ارتفاع السطر التلقائي إلى Trim.None وAlignment.Center، كما تمّت إضافة نمط ارتفاع السطر lineHeight الفاضح (بوحدة قياس sp) إلى TextStyle في Typography. راجِع مستندات واجهة برمجة التطبيقات إذا كنت تريد تخصيص هذه القيم، ويمكنك الاطّلاع على مشاركة المدونة للحصول على شرح مفصَّل لهذه التغييرات. (I6266f وIcabc3)

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

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

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

  • افتح الدوال الإنشائية لألوان المكون. (I8c4a6)
  • إضافة مَعلمة قابلة للتركيز إلى كلّ من واجهتَي برمجة التطبيقات للتلميحات، حتى يتمكّن المطوِّرون من السماح للتلميح استهلاك أحداث اللمس أو عدم استخدامها يُرجى توخّي الحذر لأنّ هذا قد يؤدي إلى إيقاف الاجتياز التلقائي لتركيز تسهيل الاستخدام. (Ie32d8)
  • تم تحسين إمكانية الوصول لتحسين الأداء وعمليات تخصيص الذاكرة. (Iede48)
  • عرض DefaultSizeClasses وإنشاء StandardSizeClasses لـ WindowSizeClasses (I91838)
  • تغيير WindowWidth/HeightSizeClass إلى فئات القيم العائمة (Ie686e)

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

  • تتعامل معلمة contentWindowInsets في سقالة الآن مع مساحات النوافذ الداخلية التي تستهلكها. تجدر الإشارة إلى أنّ سلوك المساحة المتروكة في المحتوى استنادًا إلى 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 على هذه الالتزامات.

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

  • إضافة مَعلمة النوافذ (insets) إلى "ModalBottomSheet"
    • يمكن الآن رسم التمرير لـ ModalBottomSheet خلف شريط الحالة مع ضبط windowInsets على صفر.
    • تم تعديل وظيفة "ModalBottomSheet" التلقائية للبقاء خارج أشرطة النظام، بما في ذلك التنقّل.
    • يتم توفير معالجة إدخال شريط الحالة من خلال مقبض السحب في وضع الحافة إلى الحافة.
    • يتضمّن BottomSheetDefaults مساحات داخلية لـ BottomSheetWindow. (I31200 وb/274872542 وb/272973615 وb/272334475 وb/268432129 وb/275849044 وb/165143‟
  • يجب إيقاف 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 من واجهة برمجة التطبيقات الثابتة، ومن المتوقّع إجراء المزيد من التغييرات في State API (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)
  • إضافة مَعلمة النوافذ (insets) إلى "ModalBottomSheet"
    • يمكن الآن رسم التمرير لـ ModalBottomSheet خلف شريط الحالة مع ضبط windowInsets على صفر.
    • تم تعديل وظيفة "ModalBottomSheet" التلقائية للبقاء خارج أشرطة النظام، بما في ذلك التنقّل.
    • يتم توفير معالجة إدخال شريط الحالة من خلال مقبض السحب في وضع الحافة إلى الحافة.
    • يتضمّن BottomSheetDefaults مساحات داخلية لـ BottomSheetWindow. (I31200 وb/274872542 وb/272973615 وb/272334475 وb/268432129 وb/275849044 وb/165143‟

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

التعديلات على المهام التابعة للتبعية

  • يعتمد كل من 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 إلى Material3 وmaterial3 وText و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).
  • عليك حل هذه المشكلة للسماح بضبط خلفية شفافة لأشرطة التطبيقات الصغيرة في الجزء العلوي من المادة 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 في الإصدار التجريبي 01 تأخذ في الاعتبار لوحات IME.
  • يحتوي مكوِّن Material3 Scaffold الآن على معلَمة contentWindowInsets، ما يسمح بتحديد عدد العناصر الداخلية التي يجب معالجتها لفتحة المحتوى. (Icf11a، b/243713323)
  • سيتم إيقاف دالة SmallTopAppBar التجريبية في المادة 3 وتقديم دالة TopAppBar مكافئة. يُرجى نقل استخدامك إلى استخدام جديد. (I74404، b/226918634)
  • لإضافة إمكانية التحكم في سلوكيات الانتقال السريع والانطباق في شريط التطبيق العلوي (I15c81)
  • إزالة البادئة start من الفاصل، ونقل اللون إلى المعلمة الأخيرة. (If7be2)

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

  • اجعل مربّعات الحوار تعرِّف المستخدمين على أنّهم يستخدمون TalkBack من خلال الإعلان عن كلمة 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.

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

  • تم تحديث شريط التطبيق العلوي 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)

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

  • إعادة ترتيب مَعلمتَي علامة التبويب (Tab) و"رمز البداية" للحفاظ على الاتساق داخل واجهة برمجة التطبيقات (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)
  • إضافة زر الإجراء الرئيسي التلقائي BottomAppBar (Ida4c8)
  • تمت إضافة ColorScheme.surfaceColorAtElevation (Id41af)
  • يتم الآن إنشاء الواجهات في مكتبات الإنشاء باستخدام طرق الواجهة التلقائية jdk8 (I5bcf1)
  • يتم الآن تنفيذ دالة WindowWidthSizeClass وWindowHeightSizeClass مع واجهة برمجة التطبيقات المشابهة، حيث يمكن مقارنتها باستخدام عوامل التشغيل (< و<= و>= و>) وواجهات برمجة تطبيقات أخرى. (I747d0)

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

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

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

  • يمكن الآن استخدام عرض صفر في شريط التمرير الرئيسي. (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).
  • إضافة دعم Material3 AssistChip وInputChip (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)
  • إضافة Material3 FilledIconButton وFilledTonalIconButton وOutlinedIconButton (Ib2bda)
  • يحدّث واجهة برمجة التطبيقات Material 3 Snackbar API لقبول قيم الألوان للإجراء الاختياري ورفض الإجراء. (Ibe4b4)
  • تم إيقاف الاستهلاك الجزئي (بالترتيب الأدنى أو الموضع) نهائيًا في PointerInputChange. يمكنك استخدام consume() لاستهلاك التغيير بالكامل. يمكنك استخدام isConsumed لمعرفة ما إذا كان شخص آخر قد استخدم التغيير في السابق أم لا.
  • تنشئ أداة PointerInputChange::copy() الآن دائمًا نسخة سطحية. هذا يعني أنّه سيتم استهلاك نُسخ من "PointerInputChange" بعد استهلاك إحدى النُسخ. إذا أردت إنشاء PointerInputChange غير مرتبط، استخدِم الدالة الإنشائية بدلاً من ذلك. (Ie6be4، b/225669674)
  • تغييرات على Card 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 والنظام الفرعي للشكل. (I37426)
  • تمت إضافة مَعلمة موسّعة إلى ExtendedFloatingActionButton للتحكّم في ما إذا كان سيتم توسيع زر الإجراء الرئيسي (FAB) أو تصغيره، مع عرض الرسوم المتحركة بين كل حالة. تمت إضافة حِمل 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)
  • تمت إضافة فئة شريط التمرير المادة 3 والرموز المميّزة (I1ccee)
  • إضافة تطبيق Tab، يُرجى الاطّلاع على المستندات الخاصة بنموذج الاستخدام (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 على هذه الالتزامات.

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

تمت إضافة مكونات 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)
  • إضافة دعم المادة 3 Checkbox. (Id5542)
  • إضافة دعم المادة 3 RadioButton. (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

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