/ / स्टोरीबोर्ड में एक नेविगेशनकंट्रोलर को कैसे खारिज करें? - आईओएस, स्टोरीबोर्ड, नेविगेशन कंट्रौलर

स्टोरीबोर्ड में नेविगेशन नियंत्रक को कैसे खारिज करें? - आईओएस, स्टोरीबोर्ड, नेविगेशन कंट्रोलर

मैंने इसके लिए हर जगह देखा, इसलिए अंतिम उपाय के रूप में मुझे लगा कि मुझे सवाल पूछना चाहिए।

मैं एक्सकोड में स्टोरीबोर्ड का उपयोग कर रहा हूं और एमेरे शुरुआती दृश्य के रूप में नेविगेशन कंट्रोलर। इस नेविगेशन कंट्रोलर का रूट व्यू टेबल व्यू है। इस तालिका दृश्य में, मेरे पास नेविगेशन बार में एक बटन है जो एक नेविगेशन नियंत्रक के लिए एक मॉडल सेग के माध्यम से क्षैतिज रूप से दृश्य को फ़्लिप करता है। इस कंट्रोलर का रूट व्यू मेरा मैप व्यू है। अब, जब मैं इस मानचित्र दृश्य का उपयोग करके खारिज करना चाहता हूं [self dismissViewControllerAnimated:YES completion:nil] यह काम नहीं करता है। यह करता है अगर मैं नेविगेशन नियंत्रक से बाहर ले। तो, मुझे लगता है कि बर्खास्तगी को नियंत्रित करने वाला नेविगेशन नियंत्रक को पारित किया जा रहा है, और कुछ भी नहीं कर रहा है। मुझे पता है कि मैं कॉल को संभालने और इसे पारित करने के लिए नेविगेशन नियंत्रक के लिए एक वर्ग को लागू कर सकता हूं, लेकिन मैं ऐसा नहीं करना चाहता। जब तक बिल्कुल आवश्यक न हो।

तो इस प्रश्न को हल करने के लिए:

  1. मुझे फ्लिप व्यू क्षैतिज एनीमेशन और इसके विपरीत का उपयोग करके टेबल व्यू के बीच मैप व्यू में स्विच करने का एक तरीका चाहिए।

  2. मुझे दोनों में एक नेविगेशन नियंत्रक की आवश्यकता हैदृश्य, मैं या तो एक ही हो सकता है, या एक अलग हो सकता है। मैं "एक ही एक का उपयोग करने के लिए एक रास्ता खोजने के लिए प्रतीत हो सकता है, क्योंकि किसी भी बदलाव धक्का होगा जो" क्षैतिज रूप से संक्रमण नहीं करते हैं।

मदद के लिए अग्रिम धन्यवाद!

उत्तर:

जवाब के लिए 3 № 1

कौन है self जब तुमने फोन किया [self dismissViewControllerAnimated:YES completion:nil]?

इस संदेश के रिसीवर को देखने की आवश्यकता हैनियंत्रक जो मोडल व्यू नियंत्रक प्रस्तुत करता है जिसे आप खारिज करना चाहते हैं। यदि आप इसे प्रस्तुत दृश्य नियंत्रक पर कहते हैं, या (जैसे कंटेनर दृश्य नियंत्रक के मामले में) UINavigationControllerमें से एक, यह नियंत्रित करता है), UIKit सही काम करने की कोशिश करेगा, लेकिन हमेशा सफल नहीं रहा।

माना जा रहा है self आप देखें दृश्य मानचित्र युक्त नियंत्रक है, आप प्राप्त कर सकते हैं presentingViewController संपत्ति आप प्राप्त करना चाहिए वस्तु प्राप्त करने के लिए dismissViewControllerAnimated:completion: पर। (और अगर आपको नेविगेशन नियंत्रक प्राप्त करने की आवश्यकता है जो बीच में है, का उपयोग करें navigationController संपत्ति।)