MPMoviePlayerViewController兑现横屏播放
MPMoviePlayerViewController实现横屏播放
实现播放视频的时候自动横屏必须重写MPMoviePlayerViewController,具体代码如下:
1.重写MPMoviePlayerViewController
// // DirectionMPMoviePlayerViewController.h // Direction // // Created by apple on 12-4-10. // Copyright (c) 2012年 __MyCompanyName__. All rights reserved. // #import <MediaPlayer/MediaPlayer.h> @interface DirectionMPMoviePlayerViewController : MPMoviePlayerViewController @end
// // DirectionMPMoviePlayerViewController.m // Direction // // Created by apple on 12-4-10. // Copyright (c) 2012年 __MyCompanyName__. All rights reserved. // #import "DirectionMPMoviePlayerViewController.h" @implementation DirectionMPMoviePlayerViewController - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation { return UIDeviceOrientationIsLandscape(interfaceOrientation); } @end
2.初始化播放器,播放
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. [self customTitleView]; NSString *mystr = @"http://114.112.50.220:8080/res/20120331/2FFCE63A-C997-4D8C-4C4F-4127D78A958E.m3u8"; NSURL *myURL = [[NSURL alloc] initWithString:mystr]; [self playMovieAtURL:myURL]; } -(void)playMovieAtURL:(NSURL*)theURL { playerView = [[DirectionMPMoviePlayerViewController alloc] initWithContentURL:theURL]; playerView.view.frame = self.view.frame;//全屏播放(全屏播放不可缺) playerView.moviePlayer.scalingMode = MPMovieScalingModeAspectFill;//全屏播放(全屏播放不可缺) [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(myMovieFinishedCallback:) name:MPMoviePlayerPlaybackDidFinishNotification object:playerView]; [playerView.moviePlayer play]; [self presentMoviePlayerViewControllerAnimated:playerView]; } // When the movie is done, release the controller. -(void)myMovieFinishedCallback:(NSNotification*)aNotification { DirectionMPMoviePlayerViewController* theMovie = [aNotification object]; [[NSNotificationCenter defaultCenter] removeObserver:self name:MPMoviePlayerPlaybackDidFinishNotification object:theMovie]; [theMovie release]; }