带有导航的出现/消失的UITabbar

Posted

技术标签:

【中文标题】带有导航的出现/消失的UITabbar【英文标题】:Appearing/disappearing UITabbar with navigation 【发布时间】:2017-01-25 05:16:08 【问题描述】:

我有一个带有四个标签的UITabBar。我的第二个选项卡有两个子导航控制器,例如第二个选项卡 -> 子 VC1 -> 子 VC2。

现在,当我转到子 VC1 时,我想消失/隐藏底部标签栏,如果我从 VC1 转到子 VC2,底部标签栏应该再次显示。

如果我从 VC2 回到 VC1,标签栏会消失,然后再从 VC1 回到第二个标签控制器,标签栏应该会再次出现。

我怎样才能做到这一点?

在情节提要中,我为子 VC1 选择了“Hide Bottom Bar on Push”,标签栏在此控制器上消失了,但问题是当我从 VC1 转到子 VC2 时,标签栏仍然消失。

如何解决这个问题?谢谢。

【问题讨论】:

【参考方案1】:

在 VC1 中

-(void)viewWillAppear:(BOOL)animated 
    self.tabBarController.tabBar.hidden = YES;

在 VC2 中

-(void)viewWillAppear:(BOOL)animated 
    self.tabBarController.tabBar.hidden = NO;

【讨论】:

您是否删除了“推送时隐藏底栏”?只需使用代码。它对我有用。 是的,我删除了。但问题依然存在。 我从 VC1 和 VC2 中删除了导航控制器,底部栏按预期出现和消失,但问题是导航栏在 VC2 中消失了 我希望你使用这个层次结构 TabController -> NavigationController -> VC1 并且只使用一个导航控制器。 是的,目前我有 Tabcontroller->NavigationCONtroller->Tab Controller->VC1->VC2。在选项卡控制器与 VC1 和 VC2 之间,没有导航控制器。在这种情况下,我的底部标签栏现在在整个导航过程中都可以正常工作,但现在导航栏中存在问题。 VC2没有导航栏。

以上是关于带有导航的出现/消失的UITabbar的主要内容,如果未能解决你的问题,请参考以下文章

iOS:导航栏项目消失和重新出现

UIBarButtons 带有系统项的样式,旋转后消失

UINavigationBar 立即消失,而带有动画的 pushViewcontroller 为真

当我导航回片段时,片段的内容消失了

为啥添加导航控制器会使我的数组消失?

为啥我的导航栏在 Xcode 中消失了?