1)設置設備方向:僅限肖像模式。
2)之後,去你的ViewController.m類(要顯示MPMoviePlayerViewController),並添加此通知:
- (void)viewWillAppear:(BOOL)animated{
UIDevice *device = [UIDevice currentDevice]; //Get the device object
[device beginGeneratingDeviceOrientationNotifications]; //Tell it to start monitoring the accelerometer for orientation
NSNotificationCenter *nc = [NSNotificationCenter defaultCenter]; //Get the notification centre for the app
[nc addObserver:self selector:@selector(orientationChanged:) name:UIDeviceOrientationDidChangeNotification object:device];
}
- (void)orientationChanged:(NSNotification *)note{
UIDeviceOrientation devOrientation = [UIDevice currentDevice].orientation;
if (devOrientation==4||devOrientation==3){
//Now rotate the frame of your MPMoviePlayerViewController for Landscape mode
[movieController.view setFrame:CGRectMake(0, 0, self.view.frame.size.height, self.view.frame.size.width)];
[movieController.view setTransform:CGAffineTransformMakeRotation(-M_PI_2)];
CGRect slFr6=movieController.view.frame;
slFr6.origin.x=0;
slFr6.origin.y=0;
movieController.view.frame=slFr6;
}
else if (devOrientation==1||devOrientation==2){
////Now rotate the frame of your MPMoviePlayerViewController for Portrait mode
[movieController.view setTransform:CGAffineTransformMakeRotation(0)];
[movieController.view setFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
CGRect slFr6=movieController.view.frame;
slFr6.origin.x=0;
slFr6.origin.y=0;
movieController.view.frame=slFr6;
}
}
//For Adding MPMoviePlayerController use it
-(void)createPlayer{
MPMoviePlayerController *movieController = [[MPMoviePlayerController alloc] init];
movieController.controlStyle = MPMovieControlStyleDefault;//MPMovieControlStyleNone;
[movieController setContentURL:_url];
[movieController.view setFrame:CGRectMake (0,0,self.view.frame.size.width, self.view.frame.size.height)];
[self.view addSubview:movieController.view];
[movieController prepareToPlay];
[movieController play];
}
謝謝您詳細解答。如果這樣打開,我可以知道該怎麼辦? MPMoviePlayerViewController * mp = [[MPMoviePlayerViewController alloc] initWithContentURL:url]; [self.navigationController presentMoviePlayerViewControllerAnimated:mp]; – 2014-10-17 08:50:41
您可以爲它使用MPMoviePlayerController。 – Monikanta 2014-10-17 09:04:31
請檢查我編輯的答案。 – Monikanta 2014-10-17 09:11:46