在 iPad 中旋转全屏视频时导航栏和状态栏之间出现奇怪的重叠错误

问题描述 投票:0回答:3

我正在我的应用程序中实现一个视频播放器,当视频播放器全屏工作时旋转 iPad 时会发生奇怪的事情。

我的测试用例很简单:

1.- 我将方向设置为垂直

2.- 我开始播放视频(非全屏)

3.-我设置全屏

4.- 我在全屏模式下旋转 iPad 并将其设置为水平

5.- 我回到“非全屏”

6.- 导航和状态栏以一种非常愚蠢的方式重叠。看:

enter image description here

7.- 然后我再次将 iPad 旋转至垂直

状态栏和导航栏不再重叠。再看一遍:

enter image description here

8.- 然后我来回旋转水平和垂直,一切都正常。

提示?

我读过其他一些问题,但没有得出明确的结论。 苹果(?)有一些“官方”修复,承认存在某种错误,并尝试修复类似的情况,如下所示:使用 MPMoviePlayerViewController 时的 iPad 旋转错误

但即使实现了这个简单的解决方案,该错误仍然出现在我身上。 (我不知道这是一个错误,还是一个功能(?))

我会尝试更多的混乱,但非常欢迎帮助。

问候

ipad rotation uinavigationbar fullscreen statusbar
3个回答
2
投票

在替换

rootViewController
之前取消隐藏状态栏可以解决此错误:

[UIApplication sharedApplication].statusBarHidden=NO;
self.window.rootViewController = whatever

0
投票

效果完美

[[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;
}

0
投票

你可以试试这个代码

- (void)viewWillAppear:(BOOL)animated
{
    [UIApplication sharedApplication].statusBarHidden=YES;

}
© www.soinside.com 2019 - 2024. All rights reserved.