2013-02-14 27 views
6

पर नवा बार गायब हो रहा है मेरे विचारों में से एक पर, जब कोई बटन दबाया जाता है तो मैं एक और दृश्य कहता हूं जो SplitViewController है। यदि यह SplitViewController इन बटनों में से किसी एक के माध्यम से कॉल किया जाता है तो मेरे पास दृश्य में जोड़ने के लिए विशेष वस्तुएं होती हैं। रद्द करें बटन की तरह ज्यादातर एनएवी बार आइटम। इस दृश्य को कहीं और पहुंचा जा सकता है और इन वस्तुओं की आवश्यकता नहीं है, यही कारण है कि विशेष स्थिति है।पॉपव्यू कंट्रोलर

हालांकि, जब उपयोगकर्ता किया जाता है और मैं ViewController को पिछली स्क्रीन पर वापस चलाता हूं, तो उस स्क्रीन पर नेविगेशन बार गायब हो जाती है। मैं इसे छिपाने के लिए सेट नहीं कर रहा हूं और न ही मैं नौसेना बार के साथ कुछ अजीब कर रहा हूं। बस SplitViewController जोड़कर फिर वापस पॉपिंग करें।

कुछ कोड ..

//declare the split screen VC 
SplitScreenViewController *split = [[SplitScreenViewController alloc] init]; 

//set the flag that this VC is coming from a button, so we need the extra nav bar items 
[split setIsFromButton:YES]; 
[self.navigationController pushViewController:split animated:YES]; 

अब कॉल वापस बस है ...

- (void)cancelSelectionBtnClicked 
{ 
    [self.navigationController popViewControllerAnimated:YES]; 
} 

और जब दृश्य रिटर्न, नेविगेशन बार चला गया है।

कोई विचार?

संपादित करें यह ध्यान दिया जाना चाहिए कि यह वही चीज़ कहीं और किया जाता है (जहां तक ​​मैं कह सकता हूं) और एनएवी बार वापसी पर दिखाई देता है।

+0

ठीक है, मैंने अभी भी सुनिश्चित करने के लिए एक navbarhidden = NO में जोड़ा है, और यह ठीक करने लग रहा था। तो कहीं बार बार छुपाया जा रहा है। – JMD

उत्तर

9

आपके व्यू कंट्रोलर के viewWillAppear में आप फिर से अपना navigationBar दृश्यमान बना सकते हैं।

- (void)viewWillAppear:(BOOL)animated 
{ 
    [self.navigationController setNavigationBarHidden:NO]; 
} 
+0

इसके लिए धन्यवाद। ओपी के रूप में मेरा एक ही मुद्दा था। – Pangu

1

मैंने UISplitViewController के विभिन्न अजीब navbar व्यवहार को देखा है, और कुछ मामलों में ऐसा इसलिए था क्योंकि नियंत्रक को आपके द्वारा सेट किए गए नेविगेशन नियंत्रक के अंदर विंडो के रूटव्यू कंट्रोलर के रूप में सेट नहीं किया गया था।

+0

समस्या वास्तव में UISplitViewController में नहीं है। यह ठीक दिखाता है। समस्या स्क्रीन में है जो स्प्लिट व्यू को नेविगेशन नियंत्रक के ढेर पर धक्का देती है। जब splitView पॉप किया जाता है, तो एनवी बार गायब हो जाता है। – JMD

+0

मैं समझता हूं, लेकिन मैंने देखा है कि यह अन्य नियंत्रकों के नीचे खराब तरीके से बातचीत करता है। ऐप्पल का कहना है कि एक स्प्लिट व्यू कंट्रोलर रूट होना चाहिए: http://developer.apple.com/library/ios/#documentation/WindowsViews/Conceptual/ViewControllerCatalog/Chapters/SplitViewControllers.html –