欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

iOS界面跳转时导航栏和tabBar的隐藏与显示功能

程序员文章站 2024-02-16 21:35:16
一、当a页面要push到b页面,需要将b页面的导航栏隐藏时,我们只需要在a页面中重写以下两个方法: override func viewwillappear(an...

一、当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的隐藏与显示功能,希望对大家有所帮助