swift如何从代码中调整导航栏的大小

时间:2016-10-04 11:23:04

标签: swift navigationbar

我无法从故事板添加导航栏,但我需要它。 我试过了:

let navBar: UINavigationBar = UINavigationBar(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: 44))
    self.view.addSubview(navBar);
    let navItem = UINavigationItem(title: "SomeTitle");
    let doneItem = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.Done, target: nil, action: "selector");
    navItem.leftBarButtonItem = doneItem;
    navBar.setItems([navItem], animated: false);

但是我得到这样的东西: enter image description here
确定如何将导航栏设置为居中并修复视图中正常导航栏的大小? 我甚至试过了:

let xConstraint = NSLayoutConstraint(item: navBar, attribute: .CenterX, relatedBy: .Equal, toItem: self.view, attribute: .CenterX, multiplier: 1, constant: 0)
    NSLayoutConstraint.activateConstraints([xConstraint])
    self.view.addConstraint(xConstraint)

它不起作用

1 个答案:

答案 0 :(得分:0)

您可以创建一个新的NavigationController并显示所需的控制器。我假设你在vertical-align: middle并且想要出示viewController1。所以你可以做类似下面的事情

viewController2