comment masquer la barre supérieure dans UIViewcontroller lorsque i Push depuis le contrôleur de navigation à l'aide de pushViewController ? toute aide s'il vous plaît?
Placez ce code dans le contrôleur de vue pour lequel vous souhaitez masquer la barre de navigation.
- (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:animated];
}
Et vous voudrez peut-être aussi y coller, en fonction de vos besoins:
- (void) viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:animated];
}
Voici comment faire dans Swift 3 :
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationController?.setNavigationBarHidden(true, animated: animated)
}
P.S. J'ai constaté que si vous définissez animé sur false
, une barre noire apparaît sur Push. Mais quand il est réglé sur true
c'est lisse comme de la soie!
Pour iOS 8 Peut-être que cette solution pourrait fonctionner
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];