首页 > 解决方案 > 如何从子视图中隐藏 NavigationBar?

问题描述

我遇到了 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)
}

标签: swiftuiviewcontrollerstoryboarduinavigationbaraddsubview

解决方案


我在我自己的 navigationController 类中设置了它,但它也应该在你的 viewDidLoad() 方法中工作。

navigationController?.navigationBar.isHidden = true

推荐阅读