2009-07-23 2 views
1

TabBarController에 4 개의 탭이있는 응용 프로그램이 있습니다. 첫 번째 탭인 앞면보기에서 단추를 클릭하면 탐색보기에보기가 업로드됩니다. 이제는 UIImagePicker 컨트롤러를 사용하여 사진을 찍은 다음이 두 번째보기에 저장하려고합니다. 이렇게하면 모달 컨트롤러가로드되지만 단추가있는 해당 컨트롤러의 아래쪽 막대에서 선택 및 취소가 탭 모음으로 덮히게됩니다.TabBar 숨기기 항목

제가

사용하여 시도

viewController.hidesBottomBarWhenPushed = YES;

그러나 tabBar를 숨기지는 않습니다.

tabBar를 숨기거나 modalController보기를로드하여 tabBar를 통해 그림을 선택할 수있는 방법이 있습니까?

답변

0

네비게이션 스택에 뷰를 밀어 넣기 때문에 (나는 [self pushViewController : etc]를 사용하여 추측합니다) 모든 것이 네비게이션 컨트롤러 내부에서 일어나므로 탭 바가 항상 맨 위에 나타납니다.

네비게이션 컨트롤러가있는 창 위에 추가하면됩니다. 앱 위임자가 소유 한 탐색 컨트롤러가 하나만 있다고 가정하면 코드는 다음과 같을 수 있습니다.

MyAppDelegate *appDelegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate]; 
[appDelegate.window addSubview:myOtherViewController.view]; 

희망이 있습니다.

0

@ h4xxr : 여기에 맞는 아이디어가 있지만 modalViewController는 pushViewController가 아니며 presentModalViewController입니다.

@rkbang, 나는 윈도우 레벨에서, 그리고 그것이 작동 할 수 있는지보기 위해 탭 - 바 레벨에서 시도 할 것입니다.

또 다른 방법은 Hide라는 사용자 지정 UITabBarController에서 공용 메서드를 만든 다음 모달 뷰를 표시 한 후에 공용 메서드를 호출하는 것입니다.

+0

메소드를 작성하면 코드의 내용을 숨 깁니다. 어떻게 tabBarItem을 숨길 수 있는지. – rkb

+0

당신이 이미 가지고있는 코드 ... 나는 그것이 작동하는 것을 보았습니다. 그래서 질문은 올바른 위치 (보기 계층의 올바른 사용자 정의 클래스에 있음)에 넣는 것입니다. 당신이 문제를 해결 한 것처럼 보입니다. – TahoeWolverine

+0

오른쪽 타호, presentModalViewController. 그가 틀린 장소에서하고 있었다는 사실에 집중하고 있었다! ... – h4xxr

관련 문제