状态栏隐藏导航栏
Status Bar Hides The Navigation Bar
我正在开发一个 iOS 应用程序,我可以在其中流式传输来自 YouTube 的实时视频。退出全屏模式后状态栏覆盖所有视图中的导航栏(as seen in this picture)
我搜索了这个问题,找到了一个解决方案,在退出全屏模式后执行的函数中添加以下代码:
@objc func videoExitFullScreen (_ sender: Any?){
navBar.frame.origin = CGPoint(x: 0, y: 20)
}
这段代码成功解决了问题。但是,我需要将此代码放在应用程序的每个控制器中。当我尝试将它放在应用程序委托中时,它没有解决问题:
@objc func videoExitFullScreen (_ sender: Any?){
UINavigationBar.appearance().frame.origin = CGPoint(x: 0, y: 20)
}
你有什么建议我可以把代码放在一个地方来解决问题吗?
像这样尝试
// 创建一个新的 class 类型的 UIViewController
class BaseViewController : UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.videoExitFullScreen()
}
func videoExitFullScreen (){
navBar.frame.origin = CGPoint(x: 0, y: 20)
}
}
// 将 UIViewController 替换为 BaseViewController
class ViewController: BaseViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
}
}
使用自动布局并将您的视图固定到顶部布局指南,或使用新的安全区域布局指南。要启用它,请在故事板的文件检查器中勾选以下选项。
我正在开发一个 iOS 应用程序,我可以在其中流式传输来自 YouTube 的实时视频。退出全屏模式后状态栏覆盖所有视图中的导航栏(as seen in this picture)
我搜索了这个问题,找到了一个解决方案,在退出全屏模式后执行的函数中添加以下代码:
@objc func videoExitFullScreen (_ sender: Any?){
navBar.frame.origin = CGPoint(x: 0, y: 20)
}
这段代码成功解决了问题。但是,我需要将此代码放在应用程序的每个控制器中。当我尝试将它放在应用程序委托中时,它没有解决问题:
@objc func videoExitFullScreen (_ sender: Any?){
UINavigationBar.appearance().frame.origin = CGPoint(x: 0, y: 20)
}
你有什么建议我可以把代码放在一个地方来解决问题吗?
像这样尝试
// 创建一个新的 class 类型的 UIViewController
class BaseViewController : UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.videoExitFullScreen()
}
func videoExitFullScreen (){
navBar.frame.origin = CGPoint(x: 0, y: 20)
}
}
// 将 UIViewController 替换为 BaseViewController
class ViewController: BaseViewController {
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
}
}
使用自动布局并将您的视图固定到顶部布局指南,或使用新的安全区域布局指南。要启用它,请在故事板的文件检查器中勾选以下选项。