Ios 使用TabBarController的自定义导航栏高度

Ios 使用TabBarController的自定义导航栏高度,ios,swift,Ios,Swift,我为导航栏使用自定义高度: extension UINavigationBar { override func sizeThatFits(_ size: CGSize) -> CGSize { return CGSize(width: UIScreen.main.bounds.size.width, height: 7) } } 我也使用选项卡栏,但当我按下“更多”按钮编辑栏时,高度应为正常,因为此时无法按下“编辑”按钮: 如何仅为某些视图控制器指定导航栏的自定义高度?

我为导航栏使用自定义高度:

extension UINavigationBar {
  override func sizeThatFits(_ size: CGSize) -> CGSize {
    return CGSize(width: UIScreen.main.bounds.size.width, height: 7)
  }
}
我也使用选项卡栏,但当我按下“更多”按钮编辑栏时,高度应为正常,因为此时无法按下“编辑”按钮:


如何仅为某些视图控制器指定导航栏的自定义高度?

为此,需要在自定义导航栏高度的视图控制器中添加:

var navBar: UINavigationBar = UINavigationBar()

func setNavBarToTheView() {
    self.navBar.frame = CGRectMake(0, 0, 320, 50)  // Here you can set you Width and Height for your navBar
    self.navBar.backgroundColor = (UIColor.blackColor())
    self.view.addSubview(navBar)
}

参考我的答案:

为此,您需要在自定义导航栏高度的视图控制器中添加:

var navBar: UINavigationBar = UINavigationBar()

func setNavBarToTheView() {
    self.navBar.frame = CGRectMake(0, 0, 320, 50)  // Here you can set you Width and Height for your navBar
    self.navBar.backgroundColor = (UIColor.blackColor())
    self.view.addSubview(navBar)
}

参考我的答案:

谢谢你的回答,但在我的应用程序中,它添加了第二个导航栏。有没有办法编辑原始导航栏而不添加新的导航栏?谢谢你的回答,但在我的应用程序中,它添加了第二个导航栏。有没有办法编辑原始导航栏而不添加新导航栏?