Sal*_*mua 4 objective-c statusbar ios
我希望状态栏显示在 viewWillAppear() 中并消失在我的 ViewController 的 viewWillDisappear() 中
我正在使用
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO];
Run Code Online (Sandbox Code Playgroud)
但它在 iOS 9.0 中已被弃用
我在用
UIApplication.shared.isStatusBarHidden = false
Run Code Online (Sandbox Code Playgroud)
在 swift 中,但在目标 C 中,这是只读值......
prefersStatusBarHidden 也对我不起作用,因为我需要在 viewWillDisappear() 函数中隐藏状态栏
-(BOOL)prefersStatusBarHidden{
return YES;
}
Run Code Online (Sandbox Code Playgroud)
有谁能够帮助我?
对于每个要更改状态栏可见性的视图控制器,您需要覆盖prefersStatusBarHidden
. 但是,要使其真正起作用,您必须在项目的 中添加以下键/值Info.plist
:
钥匙:
View controller-based status bar appearance
价值: YES
要控制在状态栏上的知名度viewWillAppear
和viewWillDisappear
你可以这样做:
var statusBarHidden = false
override func viewWillAppear() {
super.viewWillAppear()
statusBarHidden = false
self.setNeedsStatusBarAppearanceUpdate()
}
override func viewWillDisappear() {
super.viewWillDisappear()
statusBarHidden = true
self.setNeedsStatusBarAppearanceUpdate()
}
override var prefersStatusBarHidden: Bool {
return statusBarHidden
}
Run Code Online (Sandbox Code Playgroud)