我正在我的应用程序中实现一个视频播放器,当视频播放器全屏工作时旋转 iPad 时会发生奇怪的事情。
我的测试用例很简单:
1.- 我将方向设置为垂直
2.- 我开始播放视频(非全屏)
3.-我设置全屏
4.- 我在全屏模式下旋转 iPad 并将其设置为水平
5.- 我回到“非全屏”
6.- 导航和状态栏以一种非常愚蠢的方式重叠。看:
7.- 然后我再次将 iPad 旋转至垂直
状态栏和导航栏不再重叠。再看一遍:
8.- 然后我来回旋转水平和垂直,一切都正常。
提示?
我读过其他一些问题,但没有得出明确的结论。 苹果(?)有一些“官方”修复,承认存在某种错误,并尝试修复类似的情况,如下所示:使用 MPMoviePlayerViewController 时的 iPad 旋转错误
但即使实现了这个简单的解决方案,该错误仍然出现在我身上。 (我不知道这是一个错误,还是一个功能(?))
我会尝试更多的混乱,但非常欢迎帮助。
问候
在替换
rootViewController
之前取消隐藏状态栏可以解决此错误:
[UIApplication sharedApplication].statusBarHidden=NO;
self.window.rootViewController = whatever
效果完美
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(MovieSmallScreen) name:MPMoviePlayerDidExitFullscreenNotification object:MPplayer];
-(void)MovieSmallScreen
{
UIView *view123 = [[UIView alloc]
initWithFrame:[[UIScreen mainScreen] applicationFrame]];
self.view.frame=view123.frame;
}
你可以试试这个代码
- (void)viewWillAppear:(BOOL)animated
{
[UIApplication sharedApplication].statusBarHidden=YES;
}