MPMoviePlayer全屏模式覆盖(iPad)
我想在我的视频播放器全屏播放时添加一个按钮。我在我的视频播放器上创建了一个覆盖层,它在iPhone上运行得非常好。我试着在iPad上做同样的事情,但按钮从未出现过 这是我的密码:MPMoviePlayer全屏模式覆盖(iPad),ipad,mpmovieplayercontroller,iphone,Ipad,Mpmovieplayercontroller,Iphone,我想在我的视频播放器全屏播放时添加一个按钮。我在我的视频播放器上创建了一个覆盖层,它在iPhone上运行得非常好。我试着在iPad上做同样的事情,但按钮从未出现过 这是我的密码: NSArray *windows = [[UIApplication sharedApplication] windows]; if ([windows count] > 1){ UIWindow * moviePlayerWindow = [windows objectAtIndex:1];
NSArray *windows = [[UIApplication sharedApplication] windows];
if ([windows count] > 1){
UIWindow * moviePlayerWindow = [windows objectAtIndex:1];
NSArray * subviews = [moviePlayerWindow subviews];
UIView * videoView = [subviews objectAtIndex:0];
[videoView addSubview:myButton];
}
它与ipad一样,不会为全屏模式创建UIWindow
有人知道我该怎么做吗
谢谢 几周前,我找到了这个问题的解决方案: 似乎这种方法在iPad上不起作用(我还没有检查过iPhoneSDK 4>),所以为了避免这种情况,您可以执行以下操作 添加视频并设置为全屏后,您可以将控件直接添加到UIWindow(例如:[[[[UIApplication sharedApplication]windows]objectAtIndex:0]addSubView:myView]),然后它们将显示在视频的顶部
我发现的唯一问题是它们不遵守视图的方向规则,我不得不在视图的willRotateToInterfaceOrientation方法中手动编程旋转代码。来自@tigermain的解决方案有效
[[[UIApplication sharedApplication]windows]对象索引:0]添加子视图:myView]
但是添加到窗口的视图不遵循方向
定向的解决方案是使用NSNotificationCenter,UIApplicationIDChangeStatusBarorientationNotification
// assign a notification
id center = [NSNotificationCenter defaultCenter];
[center addObserver:self
selector:@selector(didRotate:)
name:UIApplicationDidChangeStatusBarOrientationNotification
object:nil];
// this method will get called when the orientation changes
-(void) didRotate:(NSNotification*)notification {
UIInterfaceOrientation orientation = [UIApplication sharedApplication].statusBarOrientation;
NSLog(@"%d", orientation);
// ... transform view accordingly to the enum 'UIInterfaceOrientationXXX'
}
你能解释一下你是如何处理定向的吗?很高兴看到一些代码。ThanksI以同样的方式添加了覆盖。你们解决旋转问题了吗?