Material3 Compose

media3-ui-compose-material3 लाइब्रेरी, स्टेट मैनेजमेंट और Material3 स्टाइलिंग, दोनों को अंदरूनी तौर पर हैंडल करती है. कौनसी लाइब्रेरी का इस्तेमाल करना है, इस बारे में ज़्यादा जानकारी के लिए, Media3 Compose की खास जानकारी देखें.

// The library provides styled UI components
Row {
  SeekBackButton(player)
  PlayPauseButton(player)
  SeekForwardButton(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 लाइब्रेरी, प्लेयर कंट्रोल के लिए पहले से बनाए गए कंपोज़ेबल का सेट उपलब्ध कराती है. यहां कुछ ऐसे कॉम्पोनेंट दिए गए हैं जिनका इस्तेमाल सीधे तौर पर अपने ऐप्लिकेशन में किया जा सकता है:

कॉम्पोनेंट ब्यौरा
PlayPauseButton यह बटन, वीडियो चलाने और रोकने के बीच टॉगल करता है.
SeekBackButton यह बटन, तय की गई अवधि के हिसाब से वीडियो को पीछे ले जाने के लिए होता है.
SeekForwardButton यह बटन, तय की गई अवधि के हिसाब से वीडियो को आगे बढ़ाने के लिए होता है.
NextButton अगले मीडिया आइटम पर जाने के लिए बटन.
PreviousButton पिछले मीडिया आइटम पर जाने के लिए बटन.
RepeatButton दोहराने के मोड के बीच स्विच करने के लिए बटन.
ShuffleButton शफ़ल मोड को टॉगल करने के लिए बटन.
MuteButton प्लेयर को म्यूट और अनम्यूट करने का बटन.
PositionAndDurationText यह एक टेक्स्ट कंपोज़ेबल है, जो मौजूदा जगह और कुल अवधि दिखाता है.
PositionText यह एक टेक्स्ट कंपोज़ेबल है, जो मौजूदा जगह की जानकारी दिखाता है.
DurationText यह एक टेक्स्ट कंपोज़ेबल है, जो कुल अवधि दिखाता है.
RemainingDurationText यह एक टेक्स्ट कंपोज़ेबल है, जो बाकी बची अवधि दिखाता है.

यह पूरी सूची नहीं है. उपलब्ध सभी कॉम्पोनेंट के लिए, लाइब्रेरी का एपीआई रेफ़रंस देखें.

आपको पहले से बने दो अन्य कंपोज़ेबल की ज़रूरत पड़ सकती है. ये कंपोज़ेबल, सर्फ़ेस मैनेजमेंट से जुड़े हैं. ये media3-ui-compose मॉड्यूल में मौजूद होते हैं, क्योंकि इनमें Material थीमिंग नहीं होती है.

कॉम्पोनेंट ब्यौरा
ContentFrame मीडिया कॉन्टेंट दिखाने वाला एक प्लैटफ़ॉर्म, जो आसपेक्ट रेशियो (लंबाई-चौड़ाई का अनुपात) को मैनेज करता है, इमेज का साइज़ बदलता है, और शटर को कंट्रोल करता है
PlayerSurface रॉ सर्फ़ेस, जो AndroidView में SurfaceView और TextureView को रैप करता है