大佬教程收集整理的这篇文章主要介绍了iOS 7 MPMoviePlayerController寻找前进按钮将视频带到结束并显示黑屏,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我注册了“MPMoviePlayerPlayBACkStateDidChangeNotification”的通知.
**[[NsnotificationCenter defaultCenter] addObserver:self SELEctor:@SELEctor(moviePlayerPlayBACkStateDidChange:) name:MPMoviePlayerPlayBACkStateDidChangeNotification object:self.player];**
只需点击一下寻找前进按钮就不会被解雇.
还注册了“MPMoviePlayerPlayBACkDidFinishNotification”
**[[NsnotificationCenter defaultCenter] addObserver:self SELEctor:@SELEctor(moviePlayerPlayBACkDidFinish:) name:MPMoviePlayerPlayBACkDidFinishNotification object:nil];**
我获得“MPMovieFinishReasonPlayBACkEnded”事件触发了单击寻找前进按钮.
任何人都知道为什么?这是苹果的错误吗?
我需要停止这种单击时显示黑色屏幕的行为,或者只是禁用单击“寻找前进”按钮,这样就不会发生任何事情.
任何人都知道如何实现这一点?
- (void)addPlayerForUrl:(NSURL *)url { self.player = [[MPMoviePlayerController alloc] initWithContentURL:url]; self.player.view.frame = self.videoView.bounds; self.player.view.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; self.player.controlStyle = MPMovieControlStyleDefault; [self.videoView insertSubview:self.player.view aTindex:0]; [[NsnotificationCenter defaultCenter] addObserver:self SELEctor:@SELEctor(moviePlayerLoadStateDidChangedNotification:) name:MPMoviePlayerReadyForDisplayDidChangeNotification object:self.player]; [[NsnotificationCenter defaultCenter] addObserver:self SELEctor:@SELEctor(moviePlayerPlayBACkStateDidChangeNotification:) name:MPMoviePlayerPlayBACkStateDidChangeNotification object:self.player]; } #pragma mark - Notifications - (void)moviePlayerLoadStateDidChangedNotification:(Nsnotification *)notification { self.isVideoPreloaded = YES; self.videoPlayButton.hidden = YES; self.photoImageView.hidden = YES; self.videoLoadingImageView.hidden = YES; } - (void)moviePlayerPlayBACkStateDidChangeNotification:(Nsnotification *)notification { NSURL *url = self.player.contentURL; switch (self.player.playBACkStatE) { case MPMoviePlayBACkStateSeekingBACkWARD: case MPMoviePlayBACkStateSeekingForWARD: break; case MPMoviePlayBACkStatePlaying: self.videoPlayButton.hidden = YES; if (!self.isVideoPreloaded) { self.videoLoadingImageView.hidden = NO; [self.videoLoadingImageView startAnimaTing]; } else { self.videoLoadingImageView.hidden = YES; } break; case MPMoviePlayBACkStatePaused: case MPMoviePlayBACkStateStopped: self.videoPlayButton.hidden = NO; self.videoLoadingImageView.hidden = YES; [self.player endSeeking]; [self.player.view removeFromSuperview]; [self.player setFullscreen:NO]; self.player = nil; [self addPlayerForUrl:url]; break; default: break; } }
注意我如何保持NSURL,就在moviePlayerPlayBACkStateDidChangeNotification中的switch语句之前.这样,我可以重新初始化并重新@L_168_10@mPMoviePlayer对象.
Btw,我的mpmovieplayer是在tableviewCell,如果你想知道.希望这有帮助,让我知道如果你有问题.祝你好运!
以上是大佬教程为你收集整理的iOS 7 MPMoviePlayerController寻找前进按钮将视频带到结束并显示黑屏全部内容,希望文章能够帮你解决iOS 7 MPMoviePlayerController寻找前进按钮将视频带到结束并显示黑屏所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。