إخفاء مؤشر النشاط في متحكم الفيلم
-
13-09-2020 - |
سؤال
كما تعلمون ، عندما ألعب الفيلم مع مبموفيبلايركونترولر ، يجب أن تظهر موفيبلاير أكتيفيتيندكاتورفيو في وسط موفيبلاير ' فيو.الآن ، لقد وضعت أكتيفيتيندكاتورفيو مخصصة في برنامجي ، أريد فقط لإخفاء أو إزالة أكتيفيتيندكاتورفيو من مبموفيبلايكونترولر ، هل يمكنني أن أفعل ذلك ?
المحلول
نعم نستطيع!
أعتقد أن ما تريد القيام به هو إظهار معرف النشاط أثناء تحميل الفيلم الخاص بك, ليس أثناء تشغيله?أنا فقط أفترض ذلك واستمر...
في سك 3.2 وما فوق ، و مبموفيبلايركونترولر كله (و مبموفيبلايرفيوكونترولر) هي أفضل بكثير من الإصدارات السابقة.إذا كنت لا تزال تستخدم مبموفيبلايركونترولر قد تفكر في التحول إلى مبموفيبلايرفيوكونترولر (الذي هو في الأساس فئة فرعية إيفيو التي تغلف كائن مبموفيبلايركونترولر).
على أي حال ، لإظهار وإخفاء عرض أوياكتيفيتينديكاتور الخاص بك ، أود أن أوصي لك لعقف على الإخطارات التي يتم إرسالها من مبموفيبلايركونترولر الخاص بك عند تحميل - أو بلايستاتوس التغيير.
وهناك عدد قليل من هذه هي:
MPMoviePlayerPlaybackStateDidChangeNotification
MPMoviePlayerLoadStateDidChangeNotification
لذلك أنت يلتقي لتلك الأحداث تفعل هذا:
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(loadStateChanged:)
name: MPMoviePlayerLoadStateDidChangeNotification
object: moviePlayerViewController.moviePlayer];
وهذا
[[NSNotificationCenter defaultCenter] addObserver: self
selector: @selector(playBackStateChanged:)
name: MPMoviePlayerPlaybackStateDidChangeNotification
object: moviePlayerViewController.moviePlayer];
وضمن معالجات الخاص بك (playBackStateChanged
و loadStateChanged
)
يمكنك أن تفعل شيئا من هذا القبيل:
-(void)playBackStateChanged:(id)sender
{
MPMoviePlaybackState playbackState = [moviePlayerViewController.moviePlayer playbackState];
switch (playbackState) {
case MPMoviePlaybackStateStopped :
break;
case MPMoviePlaybackStatePlaying :
[yourActivityIndicatorView stopAnimating];
break;
case MPMoviePlaybackStateInterrupted :
[yourActivityIndicatorView startAnimating];
break;
}
}
تأكد من تعيين خاصية" هيديسوينستوبد " (أو ما شابه) من إنديكاتورفيو الخاص بك إلى نعم (إذا كنت تفعل ذلك ، لم يكن لديك لرعاية إخفاء وإلغاء إخفاء السيطرة.
والباقي هو بسيط ، فقط إضافة أكتيفيتيندكاتورفيو أونتوب من عرض مبموفيفيوكونترولر الخاص بك.
آمل أن أتمكن من المساعدة
في صحتك
سام