ऐप्पल डॉक्टर कहते हैं एक निब फ़ाइल में सबसे महत्वपूर्ण वस्तुओं में से एक फ़ाइल का स्वामी ऑब्जेक्ट है, लेकिन ऐसा लगता है कि फ़ाइल का मालिक nib फ़ाइल में है, न कि LoadNibName
विधि द्वारा सेट किया गया। मुझे आश्चर्य है कि उनके बीच क्या अंतर है?loadNibNamed का उपयोग करते समय मालिक का क्या अर्थ है?
मैं xib से एक alertView अनुकूलित और इस तरह एक स्थिर वर्ग विधि प्रदान करते हैं::
यहाँ एक उदाहरण है
+(CustomAlert *)sharedAlert{
CustomAlert *alert = [[[NSBundle mainBundle] loadNibNamed:@"CustomAlert" owner:nil options:nil]lastObject];
return alert;
}
और मैं दृश्य पर चेतावनी दिखाने के लिए एक विधि है
- (void)showInView:(UIView *)view{
[view addSubview:self];
}
और मेरे दृश्य में नियंत्रक:
- (IBAction)buttonPressed:(id)sender{
CustomAlert *alert = [CustomAlert sharedAlert];
[alert showInView:self.view];
}
यह मेरी स्थिति में अच्छी तरह से काम करता है, तो क्या मालिक को [[[NSBundle mainBundle] loadNibNamed: owner: options:
में सेट करना आवश्यक है?
मुझे पता है कि फाइल का मालिक निब फ़ाइल में महत्वपूर्ण है, लेकिन मुझे आश्चर्य है कि इसका मतलब है [[[[एनएसबंडल मेनबंडल] loadNibNamed: मालिक: विकल्प: ', और यह मेरी स्थिति में क्यों काम कर रहा है। – johnMa
यह वही अर्थ है, क्या आपका कस्टम अलर्ट UIAlertView या UIButton का उप-वर्ग है? यदि यह एक अलर्टव्यू है, तो आप प्रतिनिधि को कैसे सेट करते हैं? यदि यह यूआईबटन है तो आप लक्ष्य कैसे जोड़ते हैं? दोनों मामलों में यदि आप इसे प्रोग्रामेटिक रूप से कर रहे हैं, तो आपको फ़ाइल के स्वामी की आवश्यकता नहीं है। –
तो आपका क्या मतलब है कस्टमएर्ट का फ़ाइल का स्वामी कस्टम अलर्ट क्लास है क्योंकि मैं कस्टम अलर्ट क्लास में लक्ष्य जोड़ता हूं? – johnMa