Looking through all the solutions given to similar questions, I have been trying to get the statusBar
to show/hide with a tap gesture.
I have set View controller-based status bar appearance = NO
in the plist.
I have tried the following code in my DataViewController
(page view controller) AND in the RootViewController
:
let app = UIApplication.sharedApplication()
app.setStatusBarHidden(true, withAnimation: UIStatusBarAnimation.Fade)
and it doesn't work.
This is embedded in a UITabBarController
, would that make a difference?
Also, I was able to get the following to hide the statusBar from the RootViewController
:
override func prefersStatusBarHidden() -> Bool {
return true
}
But the DataViewController
does not even call this function, and was only able to hide it permanently this way, rather than toggle it on/off.
Any ideas?
I have tried it in code, everything works fine for me. Make sure that the
View controller-based status bar appearance
is Set to NO. And there is no needs to overrideprefersStatusBarHidden()
.if you using
UIPageViewController
then you should use this code in theRootViewController
if you have a
navigationController
it will hide it tooon
ViewDidLoad()
self.navigationController?.hidesBarsOnTap = true
and use this method to hide or show the status Bar based on if the
navigationBar
is hidden or not