推送时隐藏自定义标签栏

Posted

技术标签:

【中文标题】推送时隐藏自定义标签栏【英文标题】:hide custom tabbar when push 【发布时间】:2013-01-31 07:03:11 【问题描述】:

我的应用中有一个自定义标签栏。我想在推送另一个视图控制器时隐藏我的标签栏。 目前我是这样实现的(原来的tabbar已经隐藏了):

myViewController.hidesBottomBarWhenPushed = YES;
((CustomTabBarController *)self.tabBarController).customTabBar.hidden = YES;
[self.navigationController pushViewController:lookBookViewController animated:YES];

但是当它被推送时,它会立即隐藏我的 customTabBar。所以你可以在第一个视图控制器中看到一个黑色的底栏。有没有办法解决这个问题?

谢谢。

【问题讨论】:

【参考方案1】:

把你的这些代码放在- (void)viewDidDisappear:(BOOL)animated;

- (void)viewDidDisappear:(BOOL)animated

    [super viewDidDisappear:animated];
    myViewController.hidesBottomBarWhenPushed = YES;
    ((CustomTabBarController *)self.tabBarController).customTabBar.hidden = YES;

你可以这样设计

然后你不需要隐藏标签栏,如果你想隐藏它,你可以使用我上面的代码,我想如果你这样设计,隐藏效果就是你想要的

【讨论】:

只在viewDidDisappear方法中添加最后一句,在myViewController出现后customTabBar就消失了。仍然不如原生 tabbar 完美,后者只在之前的 viewcontroller 中显示 tabbar。 @yibuyiqu 是你设计的问题,你可以看我的更新

以上是关于推送时隐藏自定义标签栏的主要内容,如果未能解决你的问题,请参考以下文章

iOS7标签栏自定义图标高度 - 高度减小直到图标变得不可见

ecshop按自定义导航栏上面的标签最下面的一排文章标签不居中 偏左

滚动时隐藏自定义表格视图单元格标签如何解决?

导航时隐藏自定义中间按钮 swift 4

uni-app APP端隐藏导航栏自定义按钮

如何在我的自定义导航控制器中隐藏标签栏?