UIViewcontroller adresindeki üst çubukları gezinme denetleyicisinden pushViewController? herhangi bir yardım lütfen?Gezinme denetleyicisinden basarken navigasyon çubuğunu nasıl gizlerim?
31
A
cevap
95
Bu kodu, gezinme çubuğunu gizlemek istediğiniz görünüm denetleyicisine koyun.
- (void) viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.navigationController setNavigationBarHidden:YES animated:animated];
}
Ve ayrıca ihtiyaçlarınıza göre, orada bu sopa isteyebilirsiniz:
etrafında bu işi olabilir iOS 8 için- (void) viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
[self.navigationController setNavigationBarHidden:NO animated:animated];
}
0
o
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];
2
İşte işe yarayabilir nasıl yapılır Swift 3:
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationController?.setNavigationBarHidden(true, animated: animated)
}
P.S. Animasyonu false
olarak ayarlarsanız, basmada siyah bir çubuk göründüğünü buldum. Ama true
'a ayarlandığında, ipek kadar pürüzsüz!
Soruya, kullanıcının bulunduğu yere doğru dokunduğunda nasıl gizlendiğini/gösterilmesini istediğinizi eklemek istiyorum. Yani: fotoğraf uygulamasında olduğu gibi. – JoePasq
Bu setNavigationBarHidden çağrısını nav çubuğunu gizlemeniz gerektiğinde istediğiniz yere koyun. –
İyi Bir, bu benim için çalışıyor. –