如何在不更改NavigationItem标题的情况下推送新控制器?

时间:2018-05-29 18:40:39

标签: ios swift

简单的问题,但我找不到任何解决方案。我想用NavigationController推送新的ViewController 在vc1中,我有标题“xxx”,我正在推动vc2

let vc2 = MyViewController()
navigationController?.pushViewController(vc, animated: true)

我希望vc2与vc1具有相同的标题,但在推送vc2时没有更改标题动画

2 个答案:

答案 0 :(得分:1)

首先:你必须创建一个超级视图控制器并像这样设置标题

   class MainViewController: UIViewController {

            override func viewDidLoad() {
                super.viewDidLoad()
                self.title = "Commmon name"

            }
    }

第二步:在每个视图控制器中继承超级视图控制器,在每个视图控制器中,您希望在每个视图控制器中使用相同的标题或每个视图控制器。

class FirstViewController: MainViewController {

        override func viewDidLoad() {
            super.viewDidLoad()

        }
}

class SecondViewController: MainViewController {

        override func viewDidLoad() {
            super.viewDidLoad()

        }
}

现在你可以推动你将在每个视图控制器中得到相同的标题,其中一个是继承超级视图控制器,如上例

答案 1 :(得分:0)

您可以在两个控制器中设置相同的标题,例如:

class VcOne : UIViewController{
    override func viewDidLoad() {
            super.viewDidLoad()
            self.title = "Title"
        }
}

class VcTwo : UIViewController{
    override func viewDidLoad() {
            super.viewDidLoad()
            self.title = "Title"
        }
}

希望它可以帮到你