मेरे पास मैक दस्तावेज़-आधारित कोर डेटा एप्लिकेशन है जो स्टोरीबोर्ड का उपयोग करता है। स्टोरीबोर्ड में निम्नलिखित लेआउट है:एकाधिक स्टोरीबोर्ड दृश्यों में एक एनएसएआरएआर कंट्रोलर का उपयोग
Window Controller
Split View Controller
Table View Controller
Text View Controller
मेरा कोर डेटा मॉडल में एक अध्याय इकाई है जिसमें दो विशेषताएं हैं: शीर्षक और सामग्री। मैं टेबल अध्याय प्रत्येक अध्याय शीर्षक दिखाने के लिए चाहता हूँ। टेक्स्ट व्यू चयनित अध्याय की सामग्री दिखाता है।
अगर मैं xib फ़ाइल का उपयोग कर रहा था, तो मैं xib फ़ाइल में एक सरणी नियंत्रक जोड़ूंगा। मैं अपने एनएसपीर्सिस्टेंट डॉक्यूमेंट सबक्लास तक पहुंचने के लिए फ़ाइल के मालिक को सरणी नियंत्रक को बांध दूंगा। मैं तालिका दृश्य को सरणी नियंत्रक की व्यवस्थित ऑब्जेक्ट्स संपत्ति में जोड़ दूंगा और सरणी नियंत्रक के चयन में टेक्स्ट व्यू को बांध दूंगा।
लेकिन स्टोरीबोर्ड के साथ चीजें अधिक जटिल हो जाती हैं। मैं तालिका दृश्य नियंत्रक में एक सरणी नियंत्रक जोड़ सकता हूं, तालिका दृश्य को सरणी नियंत्रक को बांध सकता हूं, और तालिका दृश्य में अध्याय शीर्षक दिखा सकता हूं। लेकिन टेक्स्ट व्यू कंट्रोलर उस सरणी नियंत्रक से बांध नहीं सकता है क्योंकि सरणी नियंत्रक दूसरे दृश्य में है।
मैं इंटरफ़ेस बिल्डर में एक सरणी नियंत्रक कैसे जोड़ूं ताकि तालिका दृश्य नियंत्रक और टेक्स्ट व्यू नियंत्रक दोनों इसे एक्सेस कर सकें और उससे जुड़ सकें?
बस एक संपत्ति के रूप में अनुप्रयोग प्रतिनिधि में यह छड़ी ... (मजाक कर रहा है, ज्यादातर।) लेकिन क्या keypaths माता पिता विचारों के लिए मौजूद हैं ओएसएक्स स्टोरीबोर्ड में? – stevesliva
NSViewController में parentViewController प्रॉपर्टी है। लेकिन अगर मैं स्प्लिट व्यू कंट्रोलर में एरे कंट्रोलर जोड़ता हूं और टेबल व्यू कॉलम के वैल्यू बाइंडिंग को बाइबल व्यू कंट्रोलर को पैरेंट व्यू कंट्रोलर.एरेरे कंट्रोलर.आरंगेड ऑब्जेक्ट्स के मॉडल कुंजी पथ का उपयोग करके बाध्य करता है, तो ऐप क्रैश करता है कि कक्षा केवीसी-अनुरूप नहीं है कुंजी सरणी नियंत्रक। मैंने सरणी नियंत्रक के लिए मेरे विभाजित दृश्य नियंत्रक उपclass में एक आउटलेट जोड़ा और आईबी में बनाए गए सरणी नियंत्रक को आउटलेट कनेक्ट किया, और एक ही क्रैश होता है। –
मैं इसे फिर से पढ़ रहा था ... शायद आपके subController प्रॉपर्टी वाले विशिष्ट सबक्लास को वापस करने के लिए parentViewController गेटर को ओवरराइड करें? हालांकि, बदसूरत है। – stevesliva