ספריית 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 מספקת קבוצה של רכיבי Composable מוכנים מראש עבור כפתורי הנגן הנפוצים. אלה כמה מהרכיבים שבהם אפשר להשתמש ישירות באפליקציה:
| רכיב | תיאור |
|---|---|
Player |
נגן עם אמצעי בקרה, סרגל התקדמות ומסגרת תוכן. |
PlayPauseButton |
כפתור שמאפשר לעבור בין הפעלה להשהיה. |
SeekBackButton |
כפתור להרצה אחורה במרווח מוגדר. |
SeekForwardButton |
כפתור להרצה קדימה בפרק זמן מוגדר. |
NextButton |
כפתור לדילוג לפריט המדיה הבא. |
PreviousButton |
כפתור לדילוג לפריט המדיה הקודם. |
RepeatButton |
כפתור למעבר בין מצבי חזרה. |
ShuffleButton |
כפתור להחלפת מצב הפעלה אקראית. |
MuteButton |
כפתור להשתקה ולביטול ההשתקה של הנגן. |
PositionAndDurationText |
רכיב טקסט שאפשר להרכיב ממנו, שמציג את המיקום הנוכחי ואת משך הזמן הכולל. |
PositionText |
רכיב Text composable שמציג את המיקום הנוכחי. |
DurationText |
רכיב קומפוזבילי של טקסט שמציג את משך הזמן הכולל. |
RemainingDurationText |
רכיב קומפוזבילי של טקסט שמציג את משך הזמן שנותר. |
ProgressSlider |
פס הזזה שבו מוצגת התקדמות ההפעלה ומאפשר למשתמש להעביר קדימה או אחורה. |
זוהי רשימה חלקית בלבד. כל הרכיבים הזמינים מפורטים בהפניית ה-API של הספרייה.
שני רכיבי Composables נוספים שסביר להניח שתצטרכו קשורים לניהול המשטח והם נמצאים במודול media3-ui-compose כי הם לא כוללים עיצוב Material.
| רכיב | תיאור |
|---|---|
ContentFrame |
פלטפורמה להצגת תוכן מדיה שמטפלת בניהול יחס הגובה-רוחב, בשינוי גודל ובתריס |
PlayerSurface |
ממשק גולמי שעוטף את SurfaceView ואת TextureView ב-AndroidView |