我正在创建自定义MPMoviePlayer。
对于全屏管理,MPMoviePlayerController
的行为方式如下:
- (void)setFullscreen:(BOOL)fullscreen animated:(BOOL)animated;
我想做同样的事情,但在所有UIViewController
上添加了UIView
。
但是,当使用UIViewController
时,不会管理方向
我目前的代码:
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[[appDelegate window] addSubview:myViewController.view];
我想使用UIViewController
管理方向。
感谢您的帮助
答案 0 :(得分:1)
在setFullscreen:YES...
实例上使用MPMoviePlayerController
时,它将停止使用您提供的视图堆栈,而是使用它自己的(直接在窗口上)。
换句话说;
MPMoviePlayerController
的{{1}} 实例在切换到全屏模式后不会一直坚持提供的父视图。只有在使用非全屏模式时才会这样做。
要解决该功能,您需要实现自己在全屏模式和嵌入模式之间切换的方法。听起来很重要,但实际上相当微不足道。
只需在viewController中创建一个类似于此的方法。
以下假设:
view
)CGRect
实例是
叫MPMoviePlayerController
我跳过任何可能的动画让你自己实现。您也可以在此方法中切换控件样式以模仿原始行为。
player
答案 1 :(得分:0)
是的,我可以!
我的ViewController“myViewController”被添加到具有方向管理的所有视图中:
AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
UIViewController *rootViewController = appDelegate.window.rootViewController;
[rootViewController presentViewController:myViewController animated:NO completion:nil];