一、当A页面要push到B页面,需要将B页面的导航栏隐藏时,我们只需要在A页面中重写以下两个方法:
override func viewWillAppear(animated: Bool) { super.viewWillAppear(animated) self.navigationController?.setNavigationBarHidden(true, animated: true) } override func viewWillDisappear(animated: Bool) { super.viewWillDisappear(animated) self.navigationController?.setNavigationBarHidden(false, animated: true) }
注意:self.navigationController?.navigationBarHidden = false
这样在隐藏了导航栏的控制器和没有隐藏导航栏的控制器之间切换时可能会使导航栏出现闪动的问题。用以上调用设置其隐藏的方法,就可以解决这个问题。
二、当我们从A页面push跳转到B页面需要隐藏tabBar时,在A页面写如下代码:
self.hidesBottomBarWhenPushed=YES; BViewController *bvc=[[BViewController alloc]init]; [self.navigationController pushViewController:bvc animated:YES]; self.hidesBottomBarWhenPushed=NO; //最后一句话,可以保证在back回到A时,tabBar会恢复正常显示
以上所述是小编给大家介绍的iOS界面跳转时导航栏和tabBar的隐藏与显示功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!
新闻热点
疑难解答