如何在按Tab键项目时隐藏tabbar?

时间:2010-09-21 13:41:01

标签: iphone uitabbarcontroller

在我的应用程序选项卡栏控制器用于显示多个视图。我想在按下第一个标签栏项时隐藏标签栏。

但是,我不知道怎么做...... Plz帮助我做到这一点......

谢谢你, Renya

1 个答案:

答案 0 :(得分:1)

您应该尝试使用标签栏控件委托协议中的两种方法: – tabBarController:shouldSelectViewController: – tabBarController:didSelectViewController:

您可以通过在执行这些方法中调用tabBarController.controller.hidden = YES来隐藏标签栏。

请注意,标签栏控制器有两个视图;标签栏和包含主要内容的另一个视图。我希望你也想要调整这个内容视图的大小:

//remove the tab bars and resize the main view to fill the screen
UITabBar *tabBar = tabBarController.tabBar;
tabBar.hidden = YES;    

UIView *mainView;
for (UIView * possibleMainView in [self.view subviews])
{
    if (![possibleMainView isKindOfClass:[UITabBar class]])
    {
        mainView = possibleMainView;
        break;
    }
}

CGRect mainViewFrame = mainView.frame;
mainViewFrame.size.height += tabBar.frame.size.height;
mainViewFrame.origin.y = 0;
mainView.frame = mainViewFrame;