작동, 그것의 s 번째는 추천했습니다 :은 UINavigationController의 내비게이션 바의 가시성이 내 응용 프로그램에서 일부 네비게이션 컨트롤러를 추가하기 위해 노력하고있어
: 내 인덱스 페이지 뷰 컨트롤러에서, 나는이 같은 탐색 컨트롤러를 초기화하려고
-(void)viewDidLoad{
...
//allocate a navigation controller.
myNavigationController = [[UINavigationController alloc]init];
myNavigationController.delegate = self;
myNavigationController.navigationBar.hidden = YES;
[self.view addSubview:myNavigationController.view];
[myNavigationController pushViewController:tabViewController animated:YES];
[self presentModalViewController:myNavigationController animated:YES];
}
여기에서 색인 페이지보기 컨트롤러는 내 앱의 루트보기 컨트롤러입니다. 여기서는 일반적인 UIViewController입니다.
[myNavigationController pushViewController:tabViewController animated:YES];
I 탐색 제어기에 가압 한 여기 tabViewController는 탭 버튼을 길게하는 용기도 사용한다, 또한 탭의 전환을위한 탐색 컨트롤러 보유 맞춤 tabview 컨트롤러이다.
여기문제는 : 내가 탐색 모음 보이지 않게했습니다 이후 내 사용자 정의보기 컨트롤러 쇼,하지만 난 다른보기로 전환하고자 할 때 때
myNavigationController.navigationBar.hidden = YES;
, 그것은 표시되지 않습니다 컨트롤러와 내비게이션 막대를 표시하려면 다음을 수행하십시오.
myNavigationController.navigationBar.hidden = NO;
MyViewController *toSwitchNC = [[MyViewController alloc]init];
[myNavigationController pushViewController:toSwitchNC animated:YES];
탐색 막대가 더 이상 표시되지 않습니다. 또한 넣어 시도했다 :
MyViewController의 viewDidLoad에, ViewDidAppear에서 또는 네비게이션 컨트롤러의 대리자 메서드에서self.navigationController.navigationBar.hidden = NO
,이 둘 탐색 모음을 표시하지 않았다.
그래서 무엇이 잘못 되었나요? 왜 처음에는 탐색 바를 보이지 않게 초기화했는데 숨겨진 플래그를 false로 설정해도 다시 표시되지 않습니다.
안녕하세요, 맞춤 탭보기에서 내비게이션 컨트롤러를 없애려고하는데, 내비게이션 표시 설정이 작동하는 것 같습니다. 그러나 실제로는 어떻게됩니까? 내 인덱스보기 컨트롤러의 내비게이션 컨트롤러는 내비게이션 컨트롤러가 포함 된 내 사용자 정의 탭보기를 푸시합니다.이 방법은 피하거나 제안 할 필요가 없습니다. – David