내비게이션 컨트롤러에서 푸시 할 때 내비게이션 바를 숨기는 방법은 무엇입니까?
-
06-07-2019 - |
문제
상단 막대를 숨기는 방법 UIViewController 내비게이션 컨트롤러를 사용하여 푸시 할 때PushViewController ? 도와주세요?
해결책
이 코드를 내비게이션 표시 줄을 숨기려는 뷰 컨트롤러에 넣으십시오.
- (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:animated];
}
그리고 당신은 또한 당신의 요구에 따라 이것을 거기에 고수하고 싶을 수도 있습니다.
- (void) viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:animated];
}
다른 팁
다음은 다음과 같은 방법입니다 스위프트 3:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationController?.setNavigationBarHidden(true, animated: animated)
}
추신 : 애니메이션을 설정하면 false
, 검은 색 막대가 푸시에 나타납니다. 그러나 그것이 설정 될 때 true
실크처럼 매끄 럽습니다!
iOS 8 은이 작업이 작동 할 수 있습니다.
CATransition* transition = [CATransition animation];
transition.duration = 0.3;
transition.type = kCATransitionPush;
transition.subtype = kCATransitionFromRight;
[self.navigationController.view.layer addAnimation:transition forKey:kCATransition];
[self.navigationController setNavigationBarHidden:TRUE animated:FALSE];
[self.navigationController pushViewController:productViewObj animated:FALSE];
[productViewObj.navigationController setNavigationBarHidden:TRUE animated:FALSE];
[productViewObj release];
제휴하지 않습니다 StackOverflow