탭 표시 줄이 내비게이션 컨트롤러보기에 포함되지 않도록하십시오.
뷰가있는 UIViewController를 만듭니다.
UIViewController에서 UINavigationController 유형의 인스턴스 변수를 만듭니다.
UINavigationController에 대한 탐색 모음을 숨 깁니다. 바는 UINavigatioViewController와 자신의 차례에 상호 작용의 UIViewController에서 메서드를 호출에서이
UIViewController UIViewControllers content view setup.
------------------- -------------------
|UIView | |UINavigationBar |
| | |-----------------|
| | |UINavigationVi |
| | |ewController |
| | |content view |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | |-----------------|
| | |UIToolBar |
------------------- -------------------
같은
설정의 UIViewController 콘텐츠의 상호 작용을 보자.
이 정보가 도움이되고 명확 해 졌기를 바랍니다. ,
UINavigationControllerViewController
-------------------
|view containing |
|bars and current |
|controller |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
-------------------
잘 작동합니다. 하지만 유일한 문제는 내 원래의 컨트롤러가 그 자리에 남아있을 것이고 내부 컨트롤러가 viewWillappear, didAppear, willDisappear와 같은 모든 뷰 대리자 메소드를 탐색 할 것이기 때문입니다. 이제 강제로 호출해야합니다. 또한 UIViewController 대신 UINavigation 컨트롤러를 사용하면 두 번째 이미지에서 ** innerViews의 ** Y 프레임 **을 0 대신 46에서 시작하도록 설정하지 않아도됩니다. –
이 솔루션의 샘플 응용 프로그램을 만들었습니다. https://github.com/stil4m/NavControllerNoBars의 코드를 참조하십시오. 이 솔루션에서는 46 픽셀의 여백을 추가 할 필요가 없으며 대리자 메서드가 있습니다. 주 뷰 컨트롤러에서는 UINavigationController에서 대리자 호출을 처리 할 수 있습니다. 저장소의 코드를 읽으십시오. 희망이 물건을 지워. –
고마운 톤 매트 ..하지만 주된 것은 viewWillAppear, DidAppear, Disappear methods ...라는 메소드를 얻는 것이 었습니다. 우리가이 방법을 사용하면 자동으로 호출되는 것은 아닙니다 .. 제공된 샘플도 viewwillAppear 및 나머지 호출을하지 않습니다. 보기 대리자 메서드 : ( –