August Bjornberg August Bjornberg - 1 year ago 104
iOS Question

iOS - UINavigationController, Hide navigationBar

I have a minor trouble hiding the navigationBar for my UINavigationController

I have added:

self.navigation!.navigationBar.hidden = true

This, unfortunately leaves some kind of background (white) left behind the white status bar that pushes the content (green) downwards, and an unwanted scroll behaviour where I can drag the content up and down to show/hide the white background. What I need is for the statusbar to take up no vertical space what so ever and lay on top of the content (green)

How do I achieve this?
Answers in swift as well obj-c are very welcome

enter image description here
I have tried various versions of the following, the problem remains -.-

override func loadView() {
self.view = UIView(frame:UIScreen.mainScreen().bounds)
self.view.backgroundColor = UIColor.whiteColor()

self.navigation = UINavigationController(rootViewController: self.guideViewController!)

self.navigation!.navigationBarHidden = true
self.navigation!.setNavigationBarHidden(true, animated: true)


override func viewDidLoad() {
self.automaticallyAdjustsScrollViewInsets = false
self.navigation!.automaticallyAdjustsScrollViewInsets = false




after viewDidLoad returns 20

Answer Source

Updated :

Just add this in you ViewDidLoad method

self.automaticallyAdjustsScrollViewInsets = NO;
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download