2009-07-26 18 views
38

का संदर्भ प्राप्त करना मैं अपना पहला आईफोन एप्लिकेशन लिख रहा हूं और मुझे दृश्यों को बदलने में परेशानी हो रही है। मेरे पास 2 विचार हैं और AppDelegate (UIApplicationDelegate का एक उदाहरण) में प्रत्येक का संदर्भ है। मैं applicationDidFinishLaunching दोनों में उदाहरण बना देता हूं और तुरंत पहला दृश्य दिखाता हूं। यह ठीक काम करता है।UIAplplication प्रतिनिधि

समस्या अन्य दृश्यों का संदर्भ ऐपडिलेगेट में है और मैं यह नहीं समझ सकता कि इसका संदर्भ कैसे प्राप्त किया जाए ताकि मैं दूसरे दृश्य पर स्विच कर सकूं। क्या मुख्य UIApplication या UIApplicationDelegate ऑब्जेक्ट्स का संदर्भ प्राप्त करने का कोई तरीका है?

उत्तर

102

हाँ, UIApplication एक सिंगलटन है, और ऑब्जेक्टिव-सी के लिए सामान्य सिंगलटन पैटर्न का उपयोग करता:

[UIApplication sharedApplication]; 

आप इसे से सीधे अपने प्रतिनिधि वर्ग प्राप्त कर सकते हैं:

MyAppDelegate *delegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate]; 
+1

यह स्पष्ट हो सकता है लेकिन यह ध्यान देने योग्य है कि MyAplicationDelegate कक्षा का नाम है जो प्रोटोकॉल ** यूआई के अनुरूप है आवेदन डिलीगेट **, कई मामलों में ** AppDelegate ** – Mehdi

संबंधित मुद्दे