Ios MPMoviePlayerViewController的方向与设备不同
我在pageView中创建了一个vimeo播放器。m:Ios MPMoviePlayerViewController的方向与设备不同,ios,objective-c,orientation,Ios,Objective C,Orientation,我在pageView中创建了一个vimeo播放器。m: @interface pageView () @property (strong, nonatomic) MPMoviePlayerViewController *playerViewController; @end 这是: [YTVimeoExtractor fetchVideoURLFromURL:vimeos quality:YTVimeoVideoQuality
@interface pageView ()
@property (strong, nonatomic) MPMoviePlayerViewController *playerViewController;
@end
这是:
[YTVimeoExtractor fetchVideoURLFromURL:vimeos
quality:YTVimeoVideoQualityHigh
completionHandler:^(NSURL *videoURL, NSError *error, YTVimeoVideoQuality quality) {
if (error) {
// handle error
NSLog(@"Video URL: %@", [videoURL absoluteString]);
} else {
// run player
self.playerViewController = [[MPMoviePlayerViewController alloc] initWithContentURL:videoURL];
[self.playerViewController.moviePlayer prepareToPlay];
[self presentViewController:self.playerViewController animated:YES completion:nil];
}
}];
一切都很好。除了方向是垂直的这一事实之外。我已将设备方向设置为纵向,因为我肯定不想更改它。但是我希望能够将playervewcontroller
设置为水平。这可能吗
我试过这个
[[self.playerViewController view] setTransform:CGAffineTransformMakeRotation(M_PI_2)];
但不起作用如果将其设置为纵向,则可以覆盖窗口的
支持的界面方向
以仅允许playerViewController的横向:
- (NSUInteger) application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window
{
if ([[self.window.rootViewController presentedViewController] isKindOfClass:[playerViewController class]])
{
return UIInterfaceOrientationMaskAllButUpsideDown;
}
else
{
return UIInterfaceOrientationMaskPortrait;
}
}
该代码位于appdelegate
中,但playervewcontroller不是一个类?