2012-06-18 3 views
0

숨겨진 기본 표시 줄이있는 사용자 지정 구현 (간단한 단추 및 레이블)을 사용하여 스토리 보드를 통해 탭 컨트롤러를 만들었습니다. 이것은 모두 예상대로 작동하며 다양한보기를 탐색 할 수 있습니다. 그러나 몇 가지 내 견해로는 UIScrollView를 사용해야하지만 탭 막대 컨트롤을 scrollview에서 아래쪽으로 이동하려면 아래쪽으로 스크롤해야 스크롤 할 수 있습니다. 이러한 구성을 어떻게 구현합니까? XCode 4.3, ARC 및 스토리 보드를 사용하고 있습니다.UITabController in UIScrollView

답변

1

탭이 포함 된 UIView의 자체 구현을 만들어 UIScrollView의 맨 아래에 배치해야합니다.

UITabBarController는 윈도우의 루트 여야합니다. 즉, UITabBarController 내부의 UIViewController는 UIScrollView를 포함 할 수 있지만 다른 UIViewController 내부 (또는 UIScrollView 내)에는 UITabBarController를 넣을 수 없습니다. UITabBarController Class Reference에서

:

탭 표시 줄 인터페이스를 배포, 당신은 당신의 윈도우의 루트로이보기를 설치해야합니다. 다른 뷰 컨트롤러와는 달리 탭 표시 줄 은 다른 뷰 컨트롤러의 자식으로 설치되어서는 안됩니다.

+0

@CondradShultz가 올바른 기술 답변이라고했기 때문에이 대답을 수락했습니다. – Matt

+0

+1 n 좋은 설명 :) – mAc

4

@MichaelFrederick은 올바른 기술 답변을 제공했습니다. 이제 좀 더 높은 수준의 디자인 피드백을 드리겠습니다.

제발하지 마세요.

당신이 묘사 한 내용은 매우 혼란 스럽습니다. UITabBar의 목적 중 하나는 사용자가 어떤 "모드"에 있는지에 대한 컨텍스트를 제공하는 것입니다. 숨김으로써 사용자는이 컨텍스트 정보를 거부합니다.

사용자가 빠르게 모드 (탭)를 전환하려는 경우 사용자가이를 강제로 스크롤한다는 것을 의미합니다.

스크롤보기 (예 : 큰 이미지)에서 최대 화면 크기가 절대적으로 필요한 경우에는 대신 모달보기 컨트롤러를 표시하는 것이 좋습니다. 이것은 당신이 원하는 것을 제공하지만 지저분한 서브 클래 싱, 커스텀 탭 (항상 바르게 동작하지는 않음), 사용성 문제없이 그렇게합니다.

+0

입력 해 주셔서 감사합니다. 그런 레이아웃을 요구하는 클라이언트를 되돌릴 것입니다. 사용자 탐색 스크롤을 나쁜 생각으로 만드는 것에 동의합니다. 그들이 전체 화면보기를 주장하면 탐색 체계를 변경하는 것이 더 나은 옵션이 될 것입니다. – Matt

0

전적으로 콘래드 (Conrad)와 마이클이 동의합니다. 나는 자신 만의 맞춤 탭 바를 만들어야한다고 생각하지 않는다. UITabBarController을 사용하지 않고 UITabBar을 직접 사용할 수 있어야합니다.

콘래드가 절대적으로 옳기 때문에 문서를 읽는 것 외에는 더 이상 할 수없는 힌트를주지 않겠습니다. 아주 나쁜 디자인입니다.