2011-02-02 3 views
1

이 MonoTouch 관련 질문이 있지만 Objective/C 프로그래머도 도움이 될 수 있다고 생각합니다.TabBar 컨트롤러를 숨기기

일부 탭이있는 TabBarController가 있습니다. 내 viewController (tabBar에 추가됨)를 tabBar없이 나타나게하고 싶습니다. 나는 그 컨트롤러의 HidesBottomBarWhenPushed를 true로 설정하는 방법이라고 생각했습니다.

homePage = new HomePageController(); 
homePage.HidesBottomBarWhenPushed = true; 

homePage.TabBarItem = new UITabBarItem("Home", new UIImage("Images/Icons/home.png"), 0); 

그러나 TabBar를 NavigationController와 함께 사용할 경우, 즉 컨트롤러를 실제로 밀어 넣을 경우에만 작동하는 것으로 보입니다. tabBarController에 포함 된 간단한 viewController의 경우에만이를 수행하는 방법이 있는지 궁금합니다.

답변

2

탭 표시 줄의 hidden 속성을 YES로 설정할 수 있습니다. (또는 true in MonoTouch)

+0

Howdy Moshe. 대답 해 주셔서 감사합니다. –

+1

그러나 이것은 정확히 내가 얻으 려 한 것이 아닙니다. hidden 속성을 true로 설정하면 TabBar 자리에 흰색 직사각형이 표시됩니다. 그 TabBar 통해 ViewController 넣을 수 싶습니다. 나는 앞에서 ViewController를 가져 오려고했는데 틀렸다면 TabBar에 인덱스 1이 있고 ViewController에 0이 표시되었다. 슬프게도 작동하지 않았다. 추가 지원이 필요합니다. –

+0

보기의 프레임 크기를 조정해야합니다. 내가 나중에 코드를 게시하려고합니다. – Moshe

0

사실, tabBarController의 tabBar 영역을 커버 할 수 없다는 것을 알았습니다. Moshe가 말했듯이, 숨겨진 속성을 설정할 수 있습니다. 그렇지 않으면 불투명도로도 플레이 할 수 있지만 아무 것도 커버 할 수 없습니다. 그러나 훌륭한 대안이 있습니다. 항상 일반 컨트롤러보다 높은 인덱스를 갖는 모달보기를 사용할 수 있습니다. 따라서 모든 것을 다룰 것입니다.

homePageContent.ModalPresentationStyle = UIModalPresentationStyle.FullScreen; 
     homePageContent.ModalTransitionStyle = UIModalTransitionStyle.CoverVertical; 

     this.PresentModalViewController(homePageContent, false); 

     base.ViewWillAppear (animated); 
관련 문제