ios – 滚动时隐藏状态栏

iOS 8增加了一个超酷的新功能:在用户滚动时隐藏导航栏。

这与viewDidload中的单行:

navigationController?.hidesBarsOnSwipe = true

很酷,不是吗?

但现在我有一个问题:当导航栏被隐藏时,状态栏仍然在这里并且重叠内容,这是丑陋的。

当导航栏被隐藏时,该怎么做才能隐藏?

在UIViewController上覆盖以下方法:

extension MyViewController {
  override func prefersStatusBarHidden() -> Bool {
    return barsHidden // this is a custom property
  }

  // Override only if you want a different animation than the default
  override func preferredStatusBarUpdateAnimation() -> UIStatusBarAnimation {
    return .Slide
  }
}

更新吧隐藏在代码中的某个地方,并调用
setNeedsStatusBarAppearanceUpdate()

翻译自:https://stackoverflow.com/questions/26197260/hide-status-bar-while-scrolling

转载注明原文:ios – 滚动时隐藏状态栏