Emm*_*Emm 20 uitabbarcontroller uinavigationcontroller swift
我正试图Navigation Bar
在Swift中设置标题,我设置Tab Bar
并且Navigation Bar
没有任何显示,没有按钮,没有标题,没有.我使用了一些代码,但是当我使用Tab Bar
时它没有工作,当我删除时Tab Bar
,代码正常工作,一切正常Navigation Bar
,标题显示,按钮显示.
我用于标题的代码是:
override func viewDidLoad() {
super.viewDidLoad()
self.navigationItem.title = "My Title"
}
Run Code Online (Sandbox Code Playgroud)
在Main.storyboard
我连接Navigation Controller
中Tab Bar Controller
,如图片中所示.
那么,如何解决这个问题呢?问题是Navigation Bar
在使用时无法正常工作Tab Bar
.
kab*_*rai 30
因为Tab Bar
它实际上是Root View Controller
,所以Navigation Bar
你需要在函数中设置UITabBarController
's title
,viewWillAppear
以便每次切换标签时都会发生:
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
self.tabBarController?.navigationItem.title = "My Title"
self.tabBarController?.navigationItem.leftBarButtonItem = settingsButton //This is the IBOutlet variable that you previously added
}
Run Code Online (Sandbox Code Playgroud)
但更好的方法就是让它反过来,就像这样
你应该UINavigationController
为每个孩子挂钩UITabBarController
,因为它在语义上更正确,并且更易于维护.
您的问题不清楚,如果您提供的代码UIViewController
保存在内部UINavigationController
并navigationBar
显示,您只需使用:
override func viewDidLoad() {
super.viewDidLoad()
self.title = "My Title"
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
24479 次 |
最近记录: |