
إحدى الفئات التي تتيحها SDK من الروبوت من أجل تشغيل ملفات الفيديو في التطبيقات أن نطور هي فئة فيديوفيو. هذه الفئة يسمح لنا, النموذج بسيطة, تشغيل الفيديو قبل التخصيص لها الطريق والدعوة إلى بدء تشغيل الأسلوب قائمة التشغيل. أي, مع عمليا كواترو لينياس مدونة, فإننا يمكن أن تصور في كائن قال الفيديو المطلوب.
مثل مثال, لنفترض أن لدينا الكائن في واجهة فئة لدينا فيديوفيو, باسم فيديوبلاييرفيو, وفي الداخل لدينا ما يلي مدونة:
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 السجاد من الموارد ‘الموارد‘.
مع هذا, الفيديو المحدد وسوف تلعب في كائن مرة واحدة فقط. حسنا الآن, وإذا كنت تريد أن تجعل الفيديو تلعب حلقة إلى أجل غير مسمى?
كيفية اللعب, في وضع حلقة, شريط فيديو في إكسامارين فيديوفيو الروبوت
لعدم وجود أي طريقة ضمنية أن تعيين التشغيل في وضع التكرار الحلقي, سيكون لدينا لجعل استخدام الكائن الوسائط الإعلامية وقد تم هذا العرض معاون. لا كلاس، جديد فيديوفيو مثل فئة برنامج تضمين أو برنامج التضمين الفئة الوسائط الإعلامية, لا كوال هاس أسهل تنفيذ لدينا أشرطة فيديو للتطبيق.
ولذلك, نحن ذاهبون للوصول إليه من خلال هذا الحدث أونبريباريد أن يخبرنا بأن المتوسط استعداد لتشغيل و, للقيام بذلك, وسوف نفعل ذلك من خلال من وحدة إصغاء, التي ستحدد في وقت لاحق إلى موقعنا فيديوفيو.
للمستمع, فإننا سنضع أ الفئة ما تنفيذ الواجهة إيونبريباريدليستينير وسوف نكتب الأسلوب أونبريباريد, كما هو موضح في التعليمات البرمجية التالية:
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; } } |
مع هذا, ونحن تعيين القيمة صحيح للسمة حلقات الكائن الوسائط الإعلامية معاون.
مرة واحدة لدينا فئة قائمة, فقط لنا عدم تعيين كائن من هذه الفئة لكائن لدينا من فئة فيديوفيو. للقيام بذلك, ببساطة استخدام الأسلوب سيتونبريباريدليستينير من نفس, تمرير, مثل المعلمة, كائن من فئة جديدة فيديولوب التي خلقت.
وبهذه الطريقة, وستكون الأولى رمز النموذج التالي:
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(); |
إذا كان علينا أن نبدأ التحويل البرمجي و تشغيل لدينا التطبيق, سوف نرى الآن فيديو هو يلعب بشكل مستمر من أجل حلقة.

3 أفكار بشأن "كيفية تشغيل ملف فيديو, في فيديوفيو, باستمرار أو تكرار حلقي”
كيفية الحصول على هذا التطبيق لاتخاذ جميع أشرطة الفيديو من مجلد ولعب جميع ?
مرحبا cyberlacs, حاول استخدام EventHandler videoplayer.Completion += (المرسل, ه) => { }, مقاطعة الفيديو وتعيينه مسارًا جديدًا وإعادة تشغيل الفيديو مرة أخرى.
صديقي عملت هنا شكرا جزيلا حتى أنا فقط تستخدم ذلك:
videoplayer.Complete += (المرسل, ه) => { … } e funcionou 🙂
أنا تطوير التطبيق في شكل Xamarin
شكرا جزيلا.