今天忽闻噩耗,伟大的科学家霍金逝世
晚上学习感觉一种莫名的力量在指引自己。
竟然第一次通过自己看官方文档找到了解决方案。
目标:类似微信 下面的 联系人 发现 我的 这几个页面切换时,上面的标题栏文字也会随着改变。如图
实现方法:
一,要知道下面的tabbar点击的动作,所以需要有回调
步骤:1.在UITabbarController实现协议:UITabBarControllerDelegate
2.重写方法 func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController)
3.在viewdidload函数里,给UITabbarController的delegate属性赋值 self.delegate = self
完成以上步骤,点击通讯录或者其他的tabbar,系统会调用刚刚重写的tabBarController。
二,设置导航栏标题
self.navigationItem.title = "xxxx"
三,知道当前点了哪个tabbar
selectedIndex 值是 0 1 2 3 分别代表4个页面
代码如下:
class MainViewController: UITabBarController,UITabBarControllerDelegate {
let _navigationTitle:[String] = ["聊天","通讯录","发现","我的",""]
override func viewDidLoad() {
super.viewDidLoad()
self.delegate = self
self.navigationItem.title = _navigationTitle[0]
}
func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController) {
self.navigationItem.title = _navigationTitle[selectedIndex]
}
}