3

私のアプリには5つのタブがあり、最初のタブはウェルカムタブです。ユーザーが最初のタブをクリックすると、ウェルカム画面が表示されますが、最初のタブでのみタブバーを非表示にします。最初のタブのタブバーを非表示にします。ウェルカムビュー。私は検索をしましたが、それを隠すことができませんでした、私はウェルカムコントローラービューdidloadでこれを行いました。

    [self.tabBarController.tabBar setHidden:YES];

非表示になりますが、スペースは空のままになります。

xcode 4.3.2、ストーリーボード、iOS5での作業

4

3 に答える 3

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]; 
    }
于 2012-09-14T11:37:44.563 に答える
0

バーボタンの名前は何ですか。

このように与える、

barbtnName.hidden=YES;

それが動作します。

于 2012-09-14T11:56:10.820 に答える
0

iOS 7/8(xcode 6)では、タブバーを1つのビューから非表示にし、他のビューからは非表示にするには、影響を受けるビュー(すべて)に次の「ユーザー定義のランタイム属性」を追加する必要があります。

キーパス=tabBarController.tabBar.hidden

タイプ=ブール値

値=true/ false(チェックボックスによって異なります)

LF

于 2015-01-26T17:17:29.117 に答える