2012-02-27 4 views
3

Tab 표시 줄 컨트롤러를 내 앱의 기존 부분에 연결하려고하는데, 그렇게하면 "오작동 중"입니다.탭 표시 줄 컨트롤러가 올바르게 표시되지 않습니다.

enter image description here

이 그것을 실행하면 응용 프로그램은 모습입니다 (올바른 동작) : 나는 초기보기 컨트롤러로 탭 바 컨트롤러 부분의 독립을 실행할 때

그러나 제대로 아래 이미지처럼 작동

내 주요 응용 프로그램에서이 탭 표시 줄 컨트롤러에 갈 때

enter image description here

그러나이는이 같은 모습입니다 :

,

enter image description here

내 주요 응용 프로그램은 다음과 같습니다

스크롤보기가 포함

  • UIView의 1
  • UIView의 2
  • UIView의 3
  • UIView의 X

각보기는이 탭 표시 줄 컨트롤러와 관련이없는 무언가를 수행합니다. 하나의보기보기 x만이 탭 표시 줄 컨트롤러를 "방문"하고 일부 데이터를 표시하려고 시도하지만 실제로는 표시되지 않습니다. 어떤 아이디어?

나는 테스트 설정이 탭 바 컨트롤러 식별자를 가지고 있고, 여기에 내가 뭘 어떻게 나의보기 x에서 :

UITabBarController *newViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"test"]; 
     [self.view addSubview:newViewController.view]; 

편집 :

전체 응용 프로그램 :

enter image description here

나는 프로그래밍 방식으로보기를 만들고 있습니다. 그래서 나는 탭바 컨트롤러와 관계가 없다.

해결책 :

변경 :

UITabBarController *newViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"test"]; 
      [self.view addSubview:newViewController.view]; 

사람 :

UITabBarController *newViewController = [self.storyboard instantiateViewControllerWithIdentifier:@"test"]; 
     [self addChildViewController:newViewController]; 
     [self.view addSubview:newViewController.view]; 

답변

2

당신은

+2

내보기 중 하나만 내비게이션 컨트롤러를 가리키고 싶습니다. 아직 내 앱 (루트보기 컨트롤러가 현재 시작되고있는 곳)에서 시작하고 싶습니다. 어쩌면 나는 당신의 대답을 해석하는 데 더 정교한 대답을 줄 수 있겠습니까? 감사합니다 – London

+0

"Addsubview"기능을 "Addchildviewcontroller"tabbarviewcontroller – Janub

1

그냥 하지 네비게이션 컨트롤러에 루트의 ViewController를 설정해야 이렇게하십시오. 애플 UITabBarController referenece

UITabBarController가 클래스가있는 UIViewController 클래스에서 상속되므로에서, 탭 바 컨트롤러는 뷰 속성을 통해 액세스 할 수있는 자신의 볼 수 있습니다. 탭 표시 줄 인터페이스를 배치 할 때이보기를 창의 루트로 설치해야합니다.다른 뷰 컨트롤러와는 달리 탭 표시 줄 인터페이스는 다른 뷰 컨트롤러의 자식으로 설치되어서는 안됩니다.

내가 알고있는 바로는 UITabBarController는 윈도우의 루트보기 컨트롤러로 사용해야합니다. 하지만 당신은 항상 일반적인 UIViewController를 사용하여 거기에 UITabBar를 추가 할 수 있습니다.

(보기 편차 문제는 해결 될 수 있지만 Apple 지침을 따르지는 않으며 권장되지 않습니다.)

+1

에 유효한 지점입니다 변경하려고하면, 어떻게 내가 이것에 대해 갈 것을 권 해드립니다. 이 탭 바 컨트롤러가 내 앱의 옵션에 사용되기를 원하며 사용자가 정보로 넘치지 않도록 탭의 일종으로 정렬해야합니다. 어떻게 구현할 것인가? +1 대답은 – London

+0

입니다. UISegmentedControl을 사용하여 설정보기를 사용하는 것이 좋습니다. Apple 가이드 라인을 잘 준수해야하며 사용자 경험과 완벽하게 일치해야합니다 (예 : Wi-Fi 네트워크 세부 정보보기 참조). 설정 앱). 네비게이션 계층의 중간에서 TabBar를 사용하고 TabBar와 연결되어 있어야하며 그 외에는 앱이 거부 될 준비가되어 있어야합니다 (필자는 말하지는 않겠지 만). UITegBarController 대신 UISegmentedControl 또는 UITabBar에 대한 자습서가 필요하면 Google에 자세한 정보를 문의하십시오. 그 중 많은 부분이 준비되어 있습니다. –

관련 문제