ios - Present ViewController on UISplitViewNavigator's MasterViewController -
मैंने SplitViewNavigator टेम्पलेट का उपयोग करते हुए एक नया XCode प्रोजेक्ट बनाया है। MasterViewController के नेविगेशन में से एक में कॉन्फिगरेशन व्यू नियंत्रक (आईफोन पर पूर्ण स्क्रीन, आईपैड पर पॉपअप) प्रस्तुत करना चाहिए।
इस कॉन्फ़िगर नियंत्रक को एक अलग स्टोरीबोर्ड (फ़िल्टर.स्टोरीबोर्ड) में बनाया गया है। इस स्टोरीबोर्ड में मैंने मंच पर एक दृश्य नियंत्रक खींच लिया और इसे नेविगेशन नियंत्रक (एडिटर -> एम्बेड इन -> नेविगेशन नियंत्रक) में एम्बेडेड किया क्योंकि कॉन्फ़िग में ये अलग-अलग स्क्रीन शामिल हैं, जो उपयोगकर्ता के माध्यम से जा सकते हैं। नेविगेशन नियंत्रक को स्टोरीबोर्ड आईडी "फ़िल्टरनैव कंट्रोलर" दिया गया है।
मैंने अन्य एप्लिकेशन में यह कई बार किया है, इसलिए यह काम करता है। दुर्भाग्य से, मैं इसे स्प्लिट विज़न न्यूजगेटर टेम्प्लेट के साथ काम नहीं कर सकता।
बटन दबाए जाने के बाद मैं फिल्टर नियंत्रक को खोलने का प्रयास करता हूं, इसके बारे में कुछ खास नहीं;
UIStoryboard * filterBoard = [UIStoryboard storyboardWithName: @ "फ़िल्टर" बंडल: शून्य]; UINavigationController * filterNavController = [फ़िल्टरबोर्ड तत्काल दृश्यकंट्रोलरविद्युतकर्ता: @ "फ़िल्टरनैवाकंट्रोलर"]; UIViewController * vc = [filterNavController.viewControllers ऑब्जेक्टअटइंडएक्स: 0]; [आत्म। नेविगेशन नियंत्रक उपस्थित ViewController: vc एनिमेटेड: हाँ पूरा: शून्य];
स्वयं मास्टरव्यूकंट्रोलर है।
मेरे अशिक्षित दृष्टिकोण से, मुझे कोई कारण नहीं दिखता है कि यह क्यों काम नहीं करेगा। जैसा कि मैंने कहा, यह अन्य (गैर स्प्लिट विज़िनेटर टेम्पलेट) अनुप्रयोगों में करता है त्रुटि संदेश जो मुझे मिल रहा है वह निम्न है:
बिना अपवाद अपवाद के कारण एप्लिकेशन को समाप्त करना 'NSInvalidArgumentException', कारण: 'अनुप्रयोग में एक सक्रिय नियंत्रक को सक्रिय रूप से पेश करने की कोशिश की & lt; UINavigationController: 0x7f9bab61a700 & gt ;.'
यह पता नहीं है कि हेक यहाँ क्या हो रहा है लेकिन यह पहले से मुझे आधे दिन खर्च करता है। दिलचस्प है, जब मैं सिर्फ फ़िल्टर। स्टोरबोर्ड पर एक UIViewController बनाएँ और इसके StoryBoardID सेट करते हैं, ViewController को प्रस्तुत किया जाएगा हालांकि, मुझे इसकी आवश्यकता है कि वह यूआईएविगेशन नियंत्रक में एम्बेडेड हो।
किसी भी मदद की अत्यधिक सराहना की जाएगी!
पूर्णता के लिए, निम्न विधि स्टोरीबोर्ड से ViewControllers को तत्काल बनाने के लिए अच्छी तरह से काम करती है।
स्टोरीबोर्ड पर एक यूआईनेविगेशन नियंत्रक बनाने की बजाय, बस ViewController (एस) बनाएं और इन्हें एम्बेड करें कोड पर एक UINavigationController।
<पूर्व> UIStoryboard * myBoard = [UIStoryboard storyboardWithName: @ "माइस्टोरीबोर्ड" बंडल: शून्य]; MyViewController * menuController = [myBoard instantiateViewControllerWithIdentifier: @ "MyViewController"]; UINavigationController * navController = [[UINavigationController alloc] initWithRootViewController: myController]; [आत्म वर्तमान ViewController: navController एनिमेटेड: हाँ पूरा: शून्य];
Comments
Post a Comment