隐藏导航栏时显示状态栏
Show status bar when hide navigation bar
我在用户向上滚动 table 时隐藏导航栏。
func scrollViewWillBeginDragging(scrollView: UIScrollView) {
if self.navigationController?.navigationBarHidden == false {
self.navigationController?.setNavigationBarHidden(true, animated: true)
}
}
但是这个方法也隐藏了状态栏。
无法保留我的状态栏。这些方法不起作用:
UIApplication.sharedApplication().setStatusBarHidden(false, withAnimation: .None)
prefersStatusBarHidden()
求求你帮忙!
尝试创建一个变量shouldHideStatusBar
并覆盖此函数:
override func prefersStatusBarHidden() -> Bool {
return shouldHideStatusBar
}
滚动时:
shouldHideStatusBar = true/false
self.setNeedsStatusBarAppearanceUpdate()
希望对您有所帮助。
是我的错误。状态栏没有隐藏,它只是像 table 视图背景一样的白色。隐藏导航栏时只需设置此项:
UIApplication.shared.statusBarStyle = .default
如果您只想在 scrollView 上隐藏和显示导航栏。
你可以override viewDidAppear
。 & 使用 hidesBarsOnSwipe
属性 的导航控制器。
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
navigationController?.hidesBarsOnSwipe = true
}
希望本回答对您有所帮助。
我在用户向上滚动 table 时隐藏导航栏。
func scrollViewWillBeginDragging(scrollView: UIScrollView) {
if self.navigationController?.navigationBarHidden == false {
self.navigationController?.setNavigationBarHidden(true, animated: true)
}
}
但是这个方法也隐藏了状态栏。
无法保留我的状态栏。这些方法不起作用:
UIApplication.sharedApplication().setStatusBarHidden(false, withAnimation: .None)
prefersStatusBarHidden()
求求你帮忙!
尝试创建一个变量shouldHideStatusBar
并覆盖此函数:
override func prefersStatusBarHidden() -> Bool {
return shouldHideStatusBar
}
滚动时:
shouldHideStatusBar = true/false
self.setNeedsStatusBarAppearanceUpdate()
希望对您有所帮助。
是我的错误。状态栏没有隐藏,它只是像 table 视图背景一样的白色。隐藏导航栏时只需设置此项:
UIApplication.shared.statusBarStyle = .default
如果您只想在 scrollView 上隐藏和显示导航栏。
你可以override viewDidAppear
。 & 使用 hidesBarsOnSwipe
属性 的导航控制器。
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated) navigationController?.hidesBarsOnSwipe = true }
希望本回答对您有所帮助。