메뉴 건너뛰기

app

[xcode] 탭바 숨기기/나타내기/지우기

박영식2011.12.19 06:29조회 수 4397댓글 0

    • 글자 크기
최초 화면을 탭바 없이 선택하기 위해서는 탭바의 마지막에 선택화면을 놓는게 좋다.

그리고 이 선택화면 탭을 없애버리면 꽤나 감쪽같이 원래부터 탭바에 포함되지 않는 메뉴로 생각하게 할 수 있다.

그러기 위해서는 3개의 함수가(메서드)가 필요하다.

탭메뉴가 6개를 넘어가면 모양이 좋지 않으므로 5개로 유지하고 싶어 이렇게 했다.

1/2/3/4/5/6

의 탭바가 존재하고, 최초 6에 있는 화면을 탭바 숨기기를 이용해 보여준다.

사용자가 메뉴를 선택하면, 마지막에 있는 6번째를 지우고 적용시킨다. 물론 선택한 탭도 보여준다.

이 때, 처음에 숨겼던 탭바를 보여준다.

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

    for(UIView *view in tabbarcontroller.view.subviews)        

    {        

        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)];            

        }        

    }

}

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

    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)];

        }

    }

}

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

    [self.view removeFromSuperview];

        NSMutableArray * vcs = [NSMutableArray

                                arrayWithArray:[self.tabBarController viewControllers]];

        [vcs removeObjectAtIndex:5];

        [self.tabBarController setViewControllers:vcs];

}



실제 버튼에 다음과 같은 명령을 적용하면 된다.


-(IBAction)go:(id)sender{//주일설교

    self.tabBarController.selectedIndex = 1;

    [self showTabbar:self.tabBarController];

    [self deleteTabbar:self.tabBarController];

}

박영식 (비회원)
    • 글자 크기
[android] 구글 지도 key 생성을 위한 md5값 출력 (by 박영식) [SAML] 구글 static demo를 이용한 SSO 인증 (by 박영식)

댓글 달기

suritam9
2013.04.25 조회 6108
suritam9
2013.04.04 조회 2197
suritam9
2012.09.14 조회 2515
suritam9
2012.06.24 조회 2366
suritam9
2012.06.24 조회 2776
suritam9
2012.06.24 조회 2532
suritam9
2012.06.22 조회 2582
박영식
2011.09.22 조회 2544
박영식
2011.09.21 조회 2488
박영식
2011.02.18 조회 2964
박영식
2010.09.29 조회 4757
첨부 (0)
위로