मुझे यूनिवर्सल ऐप में काम कर रहे UISplitViewController को प्राप्त करने में समस्या हो रही है जहां मैंने पहले से ही आईफोन भाग को कोड किया है। एक समस्या निवारण विधि के रूप में, मैंने एक नई परियोजना के साथ शुरू करने का फैसला किया और केवल एक ऐसी कार्रवाई करने का प्रयास किया जो समस्या पैदा कर रहा है और यह अभी भी है।एक सार्वभौमिक ऐप में UISplitViewController का उपयोग नहीं कर सकता?
यदि मैं एक सार्वभौमिक ऐप बनाता हूं और आईपैड नियंत्रक में एक विभाजित दृश्य (या तो एक एक्सआईबी या कोड में) बनाता है तो यह काला के रूप में दिखाई देता है (जब तक कि मैं पृष्ठभूमि रंग सेट नहीं करता)। अगर मैं इसे केवल आईपैड-ऐप ऐप में करता हूं, तो यह ठीक दिखता है।
अगर कोई इसे स्वयं जांच सकता है और देख सकता है कि उन्हें एक ही चीज़ मिलती है, या मुझे बताएं कि मैं कहां गलत हो रहा हूं, तो मैं इसकी सराहना करता हूं।
- एक्सकोड में, एक सार्वभौमिक "विंडो-आधारित" ऐप बनाएं।
- आईपैड नियंत्रक में जाएं और नीचे दिए गए कोड में पेस्ट करें।
मुझे जो मिलता है वह एक ब्लैक स्क्रीन है, एक अलग दृश्य नहीं। एक ही कोड आईपैड-केवल प्रोजेक्ट में काम करता है। मैं गलत क्या कर रहा हूं, या क्या गलत कॉन्फ़िगर किया गया है? सब से
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UISplitViewController *split = [[UISplitViewController alloc] initWithNibName:nil bundle:nil];
UIViewController *vc1 = [[UIViewController alloc] initWithNibName:nil bundle:nil];
vc1.view.backgroundColor = [UIColor redColor];
UIViewController *vc2 = [[UIViewController alloc] initWithNibName:nil bundle:nil];
vc2.view.backgroundColor = [UIColor blueColor];
split.viewControllers = [NSArray arrayWithObjects:vc1, vc2, nil];
[window addSubview:split.view];
[window makeKeyAndVisible];
[vc1 release];
[vc2 release];
[split release];
return YES;
}
आप स्मृति प्रबंधन और अतिरिक्त इवर के साथ सही कर रहे हैं। ShouldRotateToInterfaceOrientation: ओवरराइड बहुत अच्छा लगता है, लेकिन यह मेरे लिए काम नहीं करता है। आपने कोशिश की है? – tonklon
यदि UISplitViewController subclassing आपके लिए काम नहीं करता है, तो प्रत्येक UIViewController को उप-वर्गीकरण करने का प्रयास करें और ओवरराइड करना चाहिएRotateToInterfaceOrientation: प्रत्येक में। यह शायद इसे करने का सबसे अच्छा तरीका है ... – ian
यह स्प्लिटव्यू उप-नियंत्रक 'ऑटोरोटेट और रिलीज समस्या संयुक्त थी। – codepoet