UINavigationBar moving under status bar when anoth

2019-09-10 02:46发布

The problem is simple, the Profile viewController has a NavigationBar just under the status bar.
I push another viewController on top of the current one. This new viewController hides the status bar.

When I go back to the Profile viewController, the navigationBar has moved up by the size of the status bar height.

I tried to force a layout refresh in my viewWillAppear but it doesn't work.

Any ideas?

enter image description here

3条回答
够拽才男人
2楼-- · 2019-09-10 03:33

add code in plist file hide status bar in your app:

<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
查看更多
【Aperson】
3楼-- · 2019-09-10 03:37

Implement viewDidDisappear in that presented viewcontroller and show status bar again before come to profileview controller.

  override func viewWillDisappear(animated: Bool) {


    UIApplication.sharedApplication().setStatusBarHidden(false, withAnimation: UIStatusBarAnimation.Fade)
}
查看更多
Melony?
4楼-- · 2019-09-10 03:37

Use this below code,

override func viewWillDisappear(animated: Bool) {
    navigationController?.setNavigationBarHidden(navigationController?.navigationBarHidden == false, animated: false)
}

hope its helpful

查看更多
登录 后发表回答