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

أنشئ واجهات مستخدم في Jetpack Compose باستخدام مكونات Material Design 3، وهي التطوّر التالي للتصميم المتعدد الأبعاد. يتضمّن Material 3 تصميمات ومكوّنات محدّثة وميزات تخصيص Material You، مثل الألوان الديناميكية، وهي مصممة لتكون متناسقة مع النمط المرئي الجديد في Android 12 وواجهة مستخدم النظام.
آخر تعديل الإصدار المستقر إصدار مرشح الإصدار التجريبي الإصدار الأولي
29 تشرين الثاني (نوفمبر) 2023 1.1.2 - - 1.2.0-alpha12

التركيبة

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

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

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

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

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

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

رائع

dependencies {
    implementation "androidx.compose.material3:material3:1.1.2"
    implementation "androidx.compose.material3:material3-window-size-class:1.1.2"
}

android {
    buildFeatures {
        compose true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

Kotlin

dependencies {
    implementation("androidx.compose.material3:material3:1.1.2")
    implementation("androidx.compose.material3:material3-window-size-class:1.1.2")
}

android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.1.1"
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

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

ملاحظات

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

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

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

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

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

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

الإصدار 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 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)
  • أصبحت واجهات برمجة تطبيقات Foundation Tooltip الآن @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 للسماح لزر الإجراء الرئيسي بتراكب شريط التطبيق السفلي في القاعدة بدلاً من تثبيته فوقه. (Iecb47)
  • تمت إضافة عنصر تصنيف بسيط يتم إنشاؤه فوق BasicTooltipBox ولا يتم إغلاقه عند النقر خارج حدود التصنيف. (I821f9)

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

  • تمت إزالة استخدام rememberSaveable للتلميحات. (Icc131، b/299500338)
  • تم تقديم علامة مؤقتة للتحكم في ما إذا كان يجب على Scaffold قياس عناصرها الثانوية أثناء القياس أو أثناء الوضع. سيتم إجراء القياس تلقائيًا في عملية القياس. وإذا كنت تواجه مشاكل في السلوك الجديد، يُرجى الإبلاغ عن المشكلة. (I0b354)
  • تم إصلاح الحافة الأفقية إلى الحافة في BottomSheet باستخدام القياس الصحيح لعرض شاشة الجهاز. (I1df0c، b/299058752)
  • تم إصلاح الخطأ المتمثل في عدم اتصال ModalBottomSheet بـ onDismissedRequest عند إغلاقه من خلال التمرير سريعًا للأسفل على الورقة. (Idfdd8)

الإصدار 1.2.0-alpha07

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

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

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

  • تمت إضافة رموز النسخ المطابق التلقائي في compose material 1.6.0-alpha05. يُرجى الاطّلاع على ملاحظات الإصدار للحصول على تفاصيل حول رموز النسخ المطابق التلقائي.

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

  • SliderState ينفِّذ DraggableState (I9b116)
  • غيِّر الشكل ليكون معلمة مطلوبة. إعادة تسمية position إلى index في دالة مساعد الشكل. (I34941)
  • يتم تعديل 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. يُرجى الرجوع إلى مستندات واجهة برمجة التطبيقات إذا كنت تريد تخصيص هذه القيم، ويمكنك الاطّلاع على مشاركة المدونة للحصول على شرح تفصيلي لهذه التغييرات. (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 على هذه الالتزامات.

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

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

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

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

تشرين الثاني (نوفمبر) 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 للنص و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

تشرين الثاني (نوفمبر) 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() يجب تمريره إلى حقل النص للحصول على سلوك يتوافق مع المتطلبات اللازمة. (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 API.

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

  • تم تحديث شريط التطبيق العلوي Material 3 ليتم وضعه في حالة مصغَّرة بالكامل إلى حالة موسّعة بالكامل. تم أيضًا تعديل وظيفة السلوك في TopAppBarDefaults لتصبح Composables، وتوفّر القيم التلقائية لحالة شريط التطبيق العلوي ومواصفات الصورة المتحركة. (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)
  • أضِف خيارات ألوان مختلفة من خلال خوارزمية scrim والمخطط التفصيلية. (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)
  • تم إنشاء الواجهات في مكتبات الإنشاء الآن باستخدام طرق الواجهة التلقائية (I5bcf1)
  • تنفِّذ WindowWidthSizeClass وWindowHeightSizeClass الآن Comparable، بحيث يمكن مقارنتها باستخدام عوامل التشغيل (< و<= و>= و>) وواجهات برمجة التطبيقات الأخرى. (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" (المادة 3/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. لمزيد من المعلومات حول تعريفات فئات حجم النوافذ، يُرجى الاطّلاع على الإرشادات العامة حول إتاحة أحجام الشاشات المختلفة.

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

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