当我关闭模态视图以返回导航控制器视图时,我的状态栏出现了这种奇怪的行为
我[[UIApplication sharedApplication] setStatusBarHidden:YES];
在ViewDidLoad
模态视图中使用[[UIApplication sharedApplication] setStatusBarHidden:NO];
,在导航控制器视图中使用。
关于如何防止这种情况的任何想法?提前致谢!
当我关闭模态视图以返回导航控制器视图时,我的状态栏出现了这种奇怪的行为
我[[UIApplication sharedApplication] setStatusBarHidden:YES];
在ViewDidLoad
模态视图中使用[[UIApplication sharedApplication] setStatusBarHidden:NO];
,在导航控制器视图中使用。
关于如何防止这种情况的任何想法?提前致谢!
尝试将代码移动到您呈现的模态视图控制器的 viewDidDisappear 方法:
- (void)viewDidDisappear:(BOOL)animated {
[[UIApplication sharedApplication] setStatusBarHidden:NO];
}
进一步说明:旧视图在窗口中显示得太晚了,在旧视图重新显示时状态栏仍然隐藏,因此旧控制器的 uiview 将获得寡妇的全尺寸(没有状态栏) 导致出现在视图上部的 20 px 偏移
你试过动画吗?
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:YES];
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:YES];