31

कैसे UIViewController में शीर्ष पट्टी को छिपाने के लिए जब मैं नेविगेशन pushViewController का उपयोग कर नियंत्रक से धक्का? कोई मदद कृपया?जब मैं नेविगेशन नियंत्रक से धक्का देता हूं नेविगेशनबार को कैसे छिपाना है?

उत्तर

95

इस कोड को उस दृश्य नियंत्रक में रखें जिसे आप नेविगेशन बार को छिपाना चाहते हैं।

- (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]; 
} 
+0

मैं सवाल में जोड़ना चाहता हूं, जब उपयोगकर्ता इसे कहां बदलता है तो उसे छुपाएं/दिखाएं। Ie: फोटो ऐप की तरह। – JoePasq

+3

जब आप नेविगेशन बार को छिपाने की आवश्यकता होती है, तो आप बस उस सेट नेविगेशनबर्ड कॉल कॉल को जहां चाहें डाल दें। –

+0

अच्छा यह मेरे लिए काम करता है। –

0

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]; 
2

यहाँ काम कर सकता था स्विफ्ट 3:

में इसे कैसे करें 10

पीएस मैंने पाया कि यदि आप false पर एनिमेटेड सेट करते हैं, तो पुश पर एक काला बार दिखाई देता है। लेकिन जब यह true पर सेट होता है तो यह रेशम के रूप में चिकनी है!

संबंधित मुद्दे

 संबंधित मुद्दे