मेरे पास एक लेबल और टेक्स्टफील्ड के साथ एक व्यू कंट्रोलर है। मैंने एक कंटेनर व्यू भी जोड़ा जो एक सेक्शन और 3 पंक्तियों, मूल रूप से स्थिर तालिका दृश्य के साथ एक और तालिका दृश्य नियंत्रक को इंगित करता है। मैं कोई दस्तावेज/उदाहरण नहीं ढूंढ पा रहा हूं जो आपको बताता है कि कंटेनर व्यू में एम्बेडेड कंटेनर व्यू और टेबल व्यू कंटेनर वाले व्यू कंट्रोलर के बीच डेटा कैसे पास किया जाता है। मैं दोनों तरफा संचार चाहते हैं?आईओएस 6 में, आप व्यू कंट्रोलर होल्डिंग 'कंटेनर व्यू' ऑब्जेक्ट और टेबल व्यू कंट्रोलर के बीच पास डेटा का उपयोग कैसे करते हैं जो इसमें एम्बेडेड है?
उत्तर
UIViewController -childViewControllers और-parentViewController पर नई विशेषताएं हैं। आप उन का उपयोग कर सकते हैं।
वैकल्पिक रूप से आप अपने आप को एक रिश्ता स्थापित कर सकते हैं। चक्र बनाए रखने से थके रहें। शायद माता-पिता बच्चे का मालिक हो और बच्चे के माता-पिता के पास कमजोर संदर्भ हो।
यदि आप चीजों को स्टोरीबोर्ड में सेट करते हैं, तो आप segues का उपयोग करते हैं। स्टोरीबोर्ड में बस बाकी सब कुछ की तरह।
देखें नियंत्रक (स्टोरीबोर्ड में) कंटेनर दृश्य में एम्बेडेड, स्वचालित रूप से नियंत्रक जिसमें कंटेनर दृश्य जोड़ा जाता है की एक childViewController के रूप में जोड़ा गया है। बस, मैं क्या मतलब है की समझ बनाने के लिए इस लाइन को जोड़ने, आधार नियंत्रक के अपने viewDidLoad विधि में:
NSLog(@"children : %@", self.childViewControllers);
तो VC1 में कहते हैं, आप एक एम्बेडेड नियंत्रक VC2 के साथ एक कंटेनर दृश्य जोड़ने (अपने tableViewController) की सुविधा देता है, तो उपर्युक्त कथन VC1 को वीसी 1 के बच्चे के रूप में लॉग करेगा। वीसी 1 से वीसी 2 तक पहुंचने के लिए, आप बस [self.childViewControllers objectAtIndex: 0] का उपयोग करें, और वीसी 2 से वीसी 1 तक पहुंचने के लिए, केवल self.parentViewController का उपयोग करें।
आशा इस मदद करता है
[self.childViewControllers lastOject]
या [self.childViewControllers objectAtIndex:index];
, पर कुलपति आप कितने बच्चे है निर्भर करता है।