iOS一級頁面隱藏導航欄维贺,但是還是可以push和pop澈圈,只需要兩句代碼彬檀。
- (void)viewWillAppear:(BOOL)animated {
//如果出現(xiàn)返回出現(xiàn)黑色部分,加上這段代碼
[self.navigationController setNavigationBarHidden:YES animated:YES];
}
- (void)viewWillDisappear:(BOOL)animated {
[self.navigationController setNavigationBarHidden:NO animated:YES];
}
這樣寫會有一個問題瞬女,進入頁面的時候?qū)Ш綑跁幸粋€向上消失的動畫窍帝。
用下面這個方法,就不會出現(xiàn)這個問題了诽偷,在navigationController的代理方法中實現(xiàn)坤学。
- (void)viewDidLoad {
[super viewDidLoad];
// 設置導航控制器的代理為self
self.navigationController.delegate = self;
}
#pragma mark - UINavigationControllerDelegate
// 將要顯示控制器
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
// 判斷要顯示的控制器是否是自己
BOOL isShowPersonPage = [viewController isKindOfClass:[self class]];
[self.navigationController setNavigationBarHidden:isShowPersonPage animated:YES];
}