如何从子视图中隐藏 NavigationBar?
Posted
技术标签:
【中文标题】如何从子视图中隐藏 NavigationBar?【英文标题】:How to hide NavigationBar from sub view? 【发布时间】:2021-09-30 14:00:35 【问题描述】:我遇到了 NavigationBar 的问题,我不想在子视图(子视图)中使用它,我也使用 setNavigationBarHidden()
方法隐藏但它不起作用。
class VehicleSavingPopupViewController: UIViewController
@IBOutlet weak var bottomView: UIView!
@IBOutlet weak var backGroundView: UIView!
override func viewDidLoad()
super.viewDidLoad()
animateView()
backGroundView.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(backGroundViewTapped(_:))))
// Do any additional setup after loading the view.
override func viewWillAppear(_ animated: Bool)
super.viewWillAppear(animated)
navigationController?.setNavigationBarHidden(true, animated: false)
private func animateView()
UIView.animate(withDuration: 0.5, delay: 0, options: [.transitionCurlDown],
animations: [weak self] in
guard let self = `self` else return
self.bottomView.center.y -= self.bottomView.bounds.height
, completion: nil)
【问题讨论】:
【参考方案1】:我在自己的 navigationController 类中设置了它,但它也应该在您的 viewDidLoad() 方法中工作。
navigationController?.navigationBar.isHidden = true
【讨论】:
以上是关于如何从子视图中隐藏 NavigationBar?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 SwiftUI 中隐藏额外的 NavigationBar
NavigationBar 在运行时隐藏视图,但不在 Interface Builder 中
当我使用嵌入在 UINavigationController 中的 SWRevealViewController 时如何隐藏 NavigationBar?
关于使用navigationController,前后2个视图控制器navigationBar隐藏属性不同,导致右滑手势失效问题的解决办法