Material3 Compose

توفّر مكتبة media3-ui-compose-material3 دالة مركّبة Player تعرض عناصر التحكّم في المشغّل وشريط التقدّم ومحتوى الوسائط الحالي. وتتولّى إدارة الحالة وتنسيق Material3 داخليًا. لمزيد من المعلومات حول المكتبة التي يجب استخدامها، يُرجى الاطّلاع على نظرة عامة على Media3 Compose.

// The library provides styled UI components
Row {
  SeekBackButton(player)
  PlayPauseButton(player)
  SeekForwardButton(player)
}

// You can rearrange the composables into a layout that suits your needs
@Composable
fun PlayerProgressControlsLeftAligned(player: Player) {
  Row {
    PositionAndDurationText(player)
    ProgressSlider(player)
  }
}

@Composable
fun PlayerProgressControlsCenterAligned(player: Player) {
  Row {
    PositionText(player)
    ProgressSlider(player)
    DurationText(player)
  }
}

تخصيص مكوّنات Material3

على الرغم من أنّ media3-ui-compose-material3 يوفّر مكوّنات تتوافق مع تصميم Material3، لا يزال بإمكانك التحكّم بشكل كامل في المظاهر. يمكنك تخصيص الألوان المخصّصة والخطوط والأشكال من خلال تضمين واجهة مستخدم المشغّل في MaterialTheme.

على سبيل المثال، لتغيير لون PlayPauseButton، يمكنك تقديم colorScheme مخصّص:

MaterialTheme(
  colorScheme =
    lightColorScheme(
      primary = Color.Red, // Change the primary color for the button
      onPrimary = Color.White,
    )
) {
  // The PlayPauseButton will now use the custom colors
  PlayPauseButton(player)
}

مكوّنات Material3 المتوفّرة

توفّر مكتبة media3-ui-compose-material3 مجموعة من الدوال المركّبة المُعدّة مسبقًا لعناصر التحكّم الشائعة في المشغّل. في ما يلي بعض المكوّنات التي يمكنك استخدامها مباشرةً في تطبيقك:

المكوّن الوصف
Player مشغّل يتضمّن عناصر تحكّم وشريط تقدّم وترجمة وشرحًا وإطار محتوى للفيديو أو العمل الفني
PlayPauseButton زرّ يتيح التبديل بين التشغيل والإيقاف المؤقت، ويعرض حالات التخزين المؤقت وإعادة التشغيل وإعادة المحاولة
SeekBackButton زر للتقديم السريع إلى الخلف بمقدار محدّد
SeekForwardButton زر للتقديم بمقدار محدّد
NextButton زر للانتقال إلى ملف الوسائط التالي
PreviousButton زر للانتقال إلى ملف الوسائط السابق
RepeatButton زر للتنقّل بين أوضاع التكرار
ShuffleButton زر لتفعيل وضع الترتيب العشوائي أو إيقافه
MuteButton زر لكتم صوت المشغّل وإعادته
LiveButton زر يشير إلى ما إذا كان تشغيل البث المباشر في الوقت الفعلي، وينتقل إلى الوقت الفعلي عند النقر عليه.
PositionAndDurationText دالة نصية مركّبة تعرض الموضع الحالي والمدة الإجمالية
PositionText دالة مركّبة نصية تعرض الموضع الحالي
DurationText دالة نصية مركّبة تعرض المدة الإجمالية
RemainingDurationText دالة مركّبة نصية تعرض المدة المتبقية
ProgressSlider شريط تمرير يعرض مستوى تقدّم التشغيل ويتيح للمستخدم البحث عن محتوى معيّن
BufferingIndicator مؤشر تقدّم يظهر أثناء تخزين المشغّل مؤقتًا

هذه القائمة ليست شاملة. يمكنك الرجوع إلى مرجع واجهة برمجة التطبيقات الخاص بالمكتبة للاطّلاع على جميع المكوّنات المتاحة.

هناك دالتان مركّبتان أخريان مُعدَّتان مسبقًا من المحتمل أن تحتاج إليهما، وهما مرتبطتان بإدارة الأسطح، وتوجدان في وحدة media3-ui-compose لأنّهما لا تتضمّنان ميزة "تخصيص التصميم المتعدد الأبعاد".

المكوّن الوصف
ContentFrame مساحة لمحتوى الوسائط تعالج إدارة نسبة العرض إلى الارتفاع وتغيير الحجم والغالق والأعمال الفنية وموضع الترجمة.
PlayerSurface سطح أولي يلتف حول SurfaceView وTextureView في AndroidView