2013-03-29 4 views
0

그래서 하위보기로 추가 할 경우 작동하는 사용자 지정 아래쪽 탭 표시 줄을 가지고 있지만 그것을 UINavigationController 부분이되도록 사랑합니다. 모든 뷰 초기화시이를 추적 할 필요가 없습니다. 이것을 할 수있는 방법이 있습니까?서브 뷰 UINavigationController 하위 뷰 사용자 지정 밑줄 탭 모음

네비게이션 바가 프레임에서 벗어 났으며 터치가 탭 바에 등록되지 않았기 때문에 navigationBar의 하위보기로 추가 할 수 없습니다.

apple이 당신을 내버려 두지 않기 때문에 navigationController를 서브 클래스화할 수 없습니다. 그러면 어떻게 작동합니까?

+0

여기에 코드를 입력하여 검토하십시오. –

답변

1

애플이 UINavigationController의 서브 클래스를 허용하지 않는다는 것은 사실이 아닙니다. iOS 6부터는 어쨌든 도움이된다고 생각하지 않습니다. 이 작업을 수행하는 가장 좋은 방법은 사용자 지정 컨테이너 컨트롤러를 사용하는 것입니다. IB에서 UIViewController로 시작하는 경우, 사용자 정의 탭 막대를 맨 아래에 놓거나 공간을 남겨두고 코드에 추가 할 수 있으며 나머지 공간을 채우는 컨테이너보기를 추가 할 수 있습니다. 해당 컨테이너보기로 가져온 기본 컨트롤러를 삭제하고 탐색 컨트롤러로 바꿀 수 있습니다. 컨텐트 컨트롤러를 탐색 할 때 탭 표시 줄이 그대로 유지됩니다.

+0

이것은 좋은 해결책처럼 들립니다. 나는 네비게이션 컨트롤러와 같이 전달되지 않을 것이기 때문에 네비게이션 컨트롤러의 내 뷰에서 탭 뷰 컨트롤러에 액세스하는 방법을 여전히 조금 확신하지 못합니다. –

+0

@EvanLayman, 탭보기 컨트롤러 란 무엇입니까? 보기에 탭 표시 줄이있는 컨테이너 컨트롤러를 의미합니까? 네비게이션 컨트롤러의 콘텐츠 컨트롤러 중 하나에서 상위 컨트롤러에 액세스 할 수 있습니다. self.navigationController.parentViewController – rdelmar

+0

아 물론 감사합니다. 나는 이것을 곧 시도 할 것이고, 이것이 올바르게 작동 할 때 이것을 정답으로 표시 할 것이다. –