
एक वर्ग के द्वारा की पेशकश की SDK के Android के के लिए वीडियो चलाएँ में अनुप्रयोग वर्ग है कि हम विकसित कर रहे हैं VideoView. इस वर्ग के लिए हमें की अनुमति देता है, प्रपत्र सरल, वीडियो प्लेबैक द्वारा आवंटन की अपनी मार्ग और कॉल करने के लिए विधि प्रारंभ करें चलाएँ-सूची. यानी, के साथ व्यावहारिक रूप से cuatro líneas का कोड, हम कल्पना कर सकते हैं ने कहा कि ऑब्जेक्ट में इच्छित वीडियो.
के रूप में उदाहरण, मान लीजिए हम है एक ऑब्जेक्ट हमारे वर्ग इंटरफ़ेस में VideoView, नाम के साथ videoPlayerView, और आंतरिक भाग में निम्न है कोड:
1 2 3 4 5 | VideoView videoPlayer = FindViewById<VideoView>(Resource.Id.videoPlayerView); string videoPath = $"android.resource://" + PackageName + "/" + Resource.Raw.nombreVideo; videoPlayer.SetVideoPath(videoPath); videoPlayer.Start(); |
हम भी मानते है कि हम एक वीडियो एक सबफ़ोल्डर के नाम में ‘कच्चे‘, en la carpeta de recursos ‘संसाधन‘.
इस के साथ, चयनित वीडियो है खेलेंगे में ऑब्जेक्ट एक अनूठा समय. ठीक है अब, पाश अनिश्चित काल तक खेलते हैं और अगर मैं वीडियो बनाने के लिए चाहते हैं?
कैसे खेलने के लिए, पाश मोड में, एक वीडियो में एक VideoView Xamarin Android
किसी भी अंतर्निहित तरीकों कि सुरक्षित मोड प्लेबैक लूप नहीं होने, हम बनाने के लिए होगा की वस्तु का उपयोग MediaPlayer यह दृश्य हो गया है संबद्ध. La clase VideoView एक रैपर वर्ग की तरह है या आवरण आवरण MediaPlayer, la cual hace आसान हमारे अनुप्रयोग में वीडियो के कार्यान्वयन.
इसलिए, हम का उपयोग करने के लिए जा रहे हैं यह घटना के माध्यम से करने के लिए OnPrepared हमें इंगित करता है कि मध्यम है कि तैयार उनके प्रजनन के लिए और, ऐसा करने के लिए, हम इसके माध्यम से करना होगा एक श्रोता, जो बाद में करने के लिए असाइन करेगा हमारे VideoView.
श्रोता के लिए, हम पैदा करेगा एक वर्ग क्या को लागू इंटरफ़ेस IOnPreparedListener और हम विधि लिखना होगा OnPrepared, निम्न कोड में दिखाया गया के रूप में:
1 2 3 4 5 6 7 | public class VideoLoop : Java.Lang.Object, Android.Media.MediaPlayer.IOnPreparedListener { public void OnPrepared(MediaPlayer mp) { mp.Looping = true; } } |
इस के साथ, हम मान असाइन करें सच करने के लिए विशेषता पाशन का उद्देश्य MediaPlayer संबद्ध.
एक बार जब हम कक्षा सूची, हम सिर्फ हमारे वर्ग ऑब्जेक्ट के लिए इस वर्ग का कोई ऑब्जेक्ट असाइन करने की आवश्यकता VideoView. ऐसा करने के लिए, केवल विधि का उपयोग करें SetOnPreparedListener उसी के, गुजर, के रूप में पैरामीटर, नए वर्ग का कोई ऑब्जेक्ट VideoLoop बन जाता है.
इस रास्ते में, प्रारंभिक कोड निम्नानुसार होगा:
1 2 3 4 5 6 | VideoView videoPlayer = FindViewById<VideoView>(Resource.Id.videoPlayerView); string videoPath = $"android.resource://" + PackageName + "/" + Resource.Raw.nombreVideo; videoPlayer.SetVideoPath(videoPath); videoPlayer.SetOnPreparedListener(new VideoLoop()); videoPlayer.Start(); |
अगर हम आगे बढ़ना संकलित करें और चलाएँ हमारे अनुप्रयोग, हम अब कैसे देखेंगे वीडियो है नाटकों de forma continuada a modo de लूप.
3 पर विचार'कैसे एक वीडियो खेलने के लिए, एक VideoView में, लगातार या लूप”
Como fazer para que esta aplicação pegue todos os videos de uma pasta e reproduza todos ?
Olá cyberlacs, tente usar a EventHandler videoplayer.Completion += (sender, ई) => { }, interrompendo o vídeo e atribuindo-lhe uma nova rota e reiniciando o vídeo novamente.
Meu amigo funcionou aqui muito obrigado mesmo só que usei assim:
videoplayer.Completion += (sender, ई) => { … } e funcionou 🙂
Estou desenvolvendo a aplicação em Xamarin Form
Muito obrigado.