Ios 推送后导航栏重叠状态栏
结构:NavigationController->VC1->VC2 VC1需要以编程方式显示或隐藏状态栏,它由Ios 推送后导航栏重叠状态栏,ios,uinavigationbar,statusbar,overlap,Ios,Uinavigationbar,Statusbar,Overlap,结构:NavigationController->VC1->VC2 VC1需要以编程方式显示或隐藏状态栏,它由statusBarHidden var statusBarHidden = false { didSet { setNeedsStatusBarAppearanceUpdate() } } override var prefersStatusBarHidden : Bool { return
statusBarHidden
var statusBarHidden = false {
didSet {
setNeedsStatusBarAppearanceUpdate()
}
}
override var prefersStatusBarHidden : Bool {
return false
}
VC2还添加了以下代码:
override var prefersStatusBarHidden : Bool {
return false
}
如果statusBarHidden
在self.navigationController?.pushViewController(VC2,动画:true)
之前未更改,则状态栏将不会与VC2中的导航栏重叠
但是一旦statusBarHidden
设置为true
,即使设置为false
,状态栏也会与VC2中的导航栏重叠,顺便说一句,这与序列图像板序列相同。但它在带有notch的iPhone上运行良好,比如iphonex、iphone11
我试图设置一个固定的高度,但实际高度似乎没有受到影响,导航栏总是保持一定的高度超过64
navBar.frame = CGRect(x:0, y:20, width:self.view.frame.size.width, height:64)