ios – 滚动时隐藏状态栏 - 代码日志

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()

http://stackoverflow.com/questions/26197260/hide-status-bar-while-scrolling

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:ios – 滚动时隐藏状态栏