2009-10-24 14 views

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

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

+3

Bu setNavigationBarHidden çağrısını nav çubuğunu gizlemeniz gerektiğinde istediğiniz yere koyun. –

+0

İyi Bir, bu benim için çalışıyor. –

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!

İlgili konular