[英]How can I show/hide the status bar on a pageViewController using tap gesture (iOS8 / Swift)
通过查看类似问题的所有解决方案,我一直在尝试通过轻击手势显示/隐藏statusBar
。
我在plist中设置了View controller-based status bar appearance = NO
。
我在我的DataViewController
(页面视图控制器)和RootViewController
尝试了以下代码:
let app = UIApplication.sharedApplication()
app.setStatusBarHidden(true, withAnimation: UIStatusBarAnimation.Fade)
它不起作用。
这是嵌入在UITabBarController
,会有所作为吗?
此外,我能够从RootViewController
获取以下内容来隐藏statusBar:
override func prefersStatusBarHidden() -> Bool {
return true
}
但是DataViewController
甚至没有调用这个函数,只能以这种方式永久隐藏它,而不是打开/关闭它。
有任何想法吗?
我在代码中尝试过,一切都适合我。 确保View controller-based status bar appearance
设置为NO 。 并且不需要覆盖prefersStatusBarHidden()
。
如果您使用UIPageViewController
那么您应该在RootViewController
使用此代码
如果你有一个navigationController
它也会隐藏它
在ViewDidLoad()
self.navigationController?.hidesBarsOnTap = true
并使用此方法根据是否隐藏navigationBar
来隐藏或显示状态栏
override func prefersStatusBarHidden() -> Bool {
if self.navigationController?.navigationBarHidden == true {
return true
}
else
{
return false
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.