内部标签栏视图控制器导航栏更改不适用于情节提要
Inside tabbar viewcontrollers navigationbar changes not working from storyboard
我创建了
NavigationController(Main) - > LoginViewController -> Tabbarviewcontroller -> HomeViewController
如果我通过故事板在 HomeViewController 中添加条形按钮项目,它不会显示在模拟器中。
但我可以看到故事板的变化。
标题 Home1 和栏按钮项目未在模拟器中显示
首先你在 Navigation Controller 中隐藏了 Navigation Bar,然后在你添加你想要的 bar 之后创建自定义 bar。
您可以通过编程方式尝试
HomeViewController ---
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(true)
let barButtomitem = UIBarButtonItem(barButtonSystemItem: .Done, target: self, action: #selector(handler))
self.tabBarController?.navigationItem.rightBarButtonItem = barButtomitem
}
SecondItemViewController--
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(true)
self.tabBarController?.navigationItem.rightBarButtonItem = nil
}
并且不要在情节提要中添加条形按钮...
试试这个代码: 在 Swift 3 中测试:
注意:删除所有 barButtonItems 并尝试以下代码。
将此代码添加到您的 Home1 VC:
override func viewWillAppear(_ animated: Bool) {
let RightButtomitem = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(handler))
self.tabBarController?.navigationItem.rightBarButtonItem = RightButtomitem
}
func handler(sender:UIButton) {
print("Add Button pressed")
}
将此代码添加到您的 Home2 VC:
override func viewWillAppear(_ animated: Bool) {
let RightButtomitem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(handler))
self.tabBarController?.navigationItem.rightBarButtonItem = RightButtomitem
}
func handler(sender:UIButton) {
print("Done Button Pressed")
}
输出:
我创建了
NavigationController(Main) - > LoginViewController -> Tabbarviewcontroller -> HomeViewController
如果我通过故事板在 HomeViewController 中添加条形按钮项目,它不会显示在模拟器中。
但我可以看到故事板的变化。
标题 Home1 和栏按钮项目未在模拟器中显示
首先你在 Navigation Controller 中隐藏了 Navigation Bar,然后在你添加你想要的 bar 之后创建自定义 bar。
您可以通过编程方式尝试
HomeViewController ---
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(true)
let barButtomitem = UIBarButtonItem(barButtonSystemItem: .Done, target: self, action: #selector(handler))
self.tabBarController?.navigationItem.rightBarButtonItem = barButtomitem
}
SecondItemViewController--
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(true)
self.tabBarController?.navigationItem.rightBarButtonItem = nil
}
并且不要在情节提要中添加条形按钮...
试试这个代码: 在 Swift 3 中测试:
注意:删除所有 barButtonItems 并尝试以下代码。
将此代码添加到您的 Home1 VC:
override func viewWillAppear(_ animated: Bool) {
let RightButtomitem = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(handler))
self.tabBarController?.navigationItem.rightBarButtonItem = RightButtomitem
}
func handler(sender:UIButton) {
print("Add Button pressed")
}
将此代码添加到您的 Home2 VC:
override func viewWillAppear(_ animated: Bool) {
let RightButtomitem = UIBarButtonItem(barButtonSystemItem: .done, target: self, action: #selector(handler))
self.tabBarController?.navigationItem.rightBarButtonItem = RightButtomitem
}
func handler(sender:UIButton) {
print("Done Button Pressed")
}
输出: