我有2个ViewController
VC A和VC B
VC A => NavigationBar Hidden = true
VC B => NavigationBar Hidden = false
我从A =>做了一个segue B,但VC B中的导航栏不可见。
我在vc b中包含以下swift代码:
override func viewWillAppear(animated: Bool) {
self.navigationController?.navigationBarHidden = false
}
有什么想法吗?
答案 0 :(得分:4)
如果您正在使用
self.navigationController?.navigationBar.hidden = true;
用它来显示栏
self.navigationController?.navigationBar.hidden = false;
不使用
self.navigationController?.navigationBarHidden = false;
请检查
答案 1 :(得分:0)
更改segue时,导航栏和工具栏应在故事板中消失 - 这是正常的。
尝试检查
以下内容适用于iOS 8的特定视图
override func viewWillAppear(animated: Bool)
{
self.navigationController?.navigationBarHidden = false
}
要在所有viewControllers上显示,请将其置于viewDidLoad
self.navigationController?.navigationBarHidden = false
答案 2 :(得分:0)
您可以进行以下工作
VC中的一个viewWillDisappear
override func viewWillDisappear(animated: Bool) {
self.navigationController?.navigationBarHidden = false
}
答案 3 :(得分:0)
这样做:
在您的VC A中使用此代码:
asyncHttpClient.post(context, "A.com", aParams, aResponseHandler);
asyncHttpClient.post(context, "B.com", bParams, bRsponseHandler);
在VC B中使用此代码:
override func viewDidLoad() {
super.viewDidLoad()
navigationController?.setNavigationBarHidden(true, animated: true)
}
答案 4 :(得分:0)
VC A和VC B嵌入在导航控制器中,我有这个工作。
在VC A中,我有以下代码:
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(true)
navigationController?.setNavigationBarHidden(false, animated: true)
}
在B中我有
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(true)
navigationController?.setNavigationBarHidden(true, animated: true)
}
完美运作