네비게이션 바가없는 UINavigationController?
범용 앱이 있고 iPad 버전 UISplitViewController
에서 Mail 앱과 유사한 인터페이스를 만드는 데 사용 하고 있습니다.
새로운 Detail 뷰를 푸시하는 데 문제가 UINavigationController
있었으므로 필요에 따라 뷰를 푸시하고 팝업 할 수 있도록 사용하기로 결정했습니다 . 그러나 탐색 뷰 또는 도구 모음을 사용하고 싶지 않습니다. 그러나 내가하는 일에 관계없이 탐색 모음을 숨길 수 없습니다.
IB에서 "Show Navigation Navigation Bar"를 선택 해제하고 설정을 시도했습니다.
[self.navigationController setNavigationBarHidden:YES];
에서 viewDidLoad
/ viewDidAppear
/ viewWillAppear
. 또한 푸시 될 각보기에서 시도했습니다. 아무것도 작동하지 않습니다.
내가 여기서 놓친 것이 있습니까? UINavigationController
도구 모음이나 탐색 모음 이 없는 것이 가능 합니까?
다음을 수행 할 수 있어야합니다.
self.navigationController.navigationBar.hidden = YES;
여기서 self.navigationController는 UINavigationController의 인스턴스입니다. 나를 위해 일하는 것 같지만 이것을 게시하기 전에 간단히 테스트했습니다.
탐색 표시 줄을 원하지 않고 탐색 표시 줄이 정상적으로 표시되는 위치까지 내용을 조정하려면
self.navigationController.navigationBarHidden = YES;
결과는 다음과 같습니다.
반면 self.navigationController.navigationBar.hidden = YES;
navigationBar가 있어야 할 공간을 제공합니다. 이처럼 :
Xcode 4.3.2에서 :
- 스토리 보드에서 탐색 컨트롤러를 선택하십시오.
- (오른쪽) 유틸리티 패널에서 속성 관리자를 선택하십시오.
Navigation Controller 범주에는 두 개의 확인란이 있습니다.
[] 내비게이션 바 표시
[] 툴바를 표시합니다
나를 위해 일했다 ...
스위프트 4
보기에서 숨 깁니다
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationController?.isNavigationBarHidden = true;
}
그런 다음 segue를 누를 때 다시 넣을 수 있습니다 (다음보기에서 뒤로 버튼을 원할 경우)
override func prepare(for segue: UIStoryboardSegue, sender: Any?)
{
self.navigationController?.isNavigationBarHidden = false;
}
프로그래밍 방식으로 스위프트 3
self.navigationController.isNavigationBarHidden = true
또는
self.navigationController.navigationBar.isHidden = true
참고 : iOS 10에서 테스트 한이 두 가지 접근법 사이에는 차이가 없었습니다.
참고 URL : https://stackoverflow.com/questions/5765946/uinavigationcontroller-without-navigation-bar
'programing tip' 카테고리의 다른 글
NGINX는 프록시 웹 소켓을 역전시키고 SSL을 활성화합니까 (wss : //)? (0) | 2020.07.21 |
---|---|
Visual Studio 2015 또는 2017에 IntelliSense 오류가 표시되지만 솔루션 컴파일 (0) | 2020.07.21 |
컴퓨터 과학의 맥락에서 '조건 자'는 무엇을 의미합니까? (0) | 2020.07.21 |
Visual Studio에서 직접 실행 창을 어떻게 사용합니까? (0) | 2020.07.20 |
REST 웹 서비스를위한 Spring 4 vs Jersey (0) | 2020.07.20 |