Iphone在第一个标签上隐藏uitabbar

时间:2012-09-14 11:35:12

标签: iphone uitabbarcontroller uitabbar

我的应用中有5个标签,第一个标签是欢迎标签,当用户点击它显示欢迎屏幕的第一个标签时,但仅在第一个标签上我想要隐藏标签栏 我想在第一个标签上隐藏标签栏,因为它是一个欢迎视图。我做了搜索,但无法隐藏它,我在欢迎控制器视图didload中做了这个。

    [self.tabBarController.tabBar setHidden:YES];

它隐藏但是空间空了。

使用xcode 4.3.2,storyboard,ios 5

3 个答案:

答案 0 :(得分:1)

如果您隐藏tabBar,那么如何导航到第2和第3个选项卡。 我建议添加welcomeView,然后在welcomeView之后添加tabBar。

或者您可以使用此代码

[self hideTabBar:self.tabBarController];


- (void) hideTabBar:(UITabBarController *) tabbarcontroller {

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.5];
    for(UIView *view in tabbarcontroller.view.subviews)
    {
        if([view isKindOfClass:[UITabBar class]])
        {
            [view setFrame:CGRectMake(view.frame.origin.x, 480, view.frame.size.width, view.frame.size.height)];
        } 
        else 
        {
            [view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, 480)];
        }

    }
    [UIView commitAnimations];    
}

[self  showTabBar:self.tabBarController];  

- (void) showTabBar:(UITabBarController *) tabbarcontroller {

        [UIView beginAnimations:nil context:NULL];
        [UIView setAnimationDuration:0.5];
        for(UIView *view in tabbarcontroller.view.subviews)
        {
            NSLog(@"%@", view);

            if([view isKindOfClass:[UITabBar class]])
            {
                [view setFrame:CGRectMake(view.frame.origin.x, 431, view.frame.size.width, view.frame.size.height)];

            } 
            else 
            {
                [view setFrame:CGRectMake(view.frame.origin.x, view.frame.origin.y, view.frame.size.width, 431)];
            }


        }

        [UIView commitAnimations]; 
    }

答案 1 :(得分:0)

  

什么是条形按钮名称。

这样给,

barbtnName.hidden=YES;

它会起作用。

答案 2 :(得分:0)

在ios 7/8(xcode 6)上隐藏tabbar从一个视图而不是从其他视图中隐藏你只需要在受影响的视图上添加以下“用户定义的运行时属性”(所有这些):

Key Path = tabBarController.tabBar.hidden

Type = boolean

值= true / false(取决于复选框)

LF