我想更改导航栏的标题,但似乎有点混乱..
我做了self.navigationItem.title = "ipsum"
或self.navigationController?.navigationBar.topItem?.title = "ipsum"
等等......但它失败了..
尝试self.title = "ipsum"
时只会更改标题,但这不是我想要的,因为它会导致tabBarItem的标题也发生变化。
我试过调试,发现了奇怪的结果。
如上图所示..似乎有两个以上的navigationBar,所以当self.navigationItem.title = "ipsum"
它实际上改变了一些其他或不可见的navigationItem的标题时,我可以从日志中看到。
但用户界面保持" lorem"。告诉我你是否想出了什么!我错过了什么?
编辑1:
我将NavigationController放在TabBarController中,并将NavigationController重构为另一个故事板引用。
在viewDidLoad()函数中调用 self.navigationItem.title = "ipsum"
。
答案 0 :(得分:1)
现在View控制器是:
附加到item1的ViewController1:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title="View1"
}
附加到item2的ViewController2:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title="View2"
}
结果:
答案 1 :(得分:0)
我使用了self.navigationItem.title="????"
。它对我有用:)
答案 2 :(得分:0)
你应该总是使用
navigationItem.title = ""
因为每个控制器都有自己的navigationItem,如果你想设置这样的标题 - self.navigationController?.navigationItem.title你可能把它设置到错误的位置。