2012-03-10 11 views
5

में मेमोरी चेतावनी के बाद पूर्णस्क्रीन बन जाता है मैं यहां काफी नया हूं। मुझे UISplitView में नए आईओएस 5.1 स्लाइड-इन पॉपओवर के साथ समस्या है। (5.1 से पहले मास्टर व्यू कंट्रोलर को पॉपओवर में प्रस्तुत किया गया था, लेकिन अब यह बाएं फॉर्म में बस स्लाइड करता है।) जब मेरा डिवाइस पोर्ट्रेट मोड में है और इसे स्मृति चेतावनी मिलती है, तो मास्टर व्यू कंट्रोलर अनलोड हो जाता है; और जब मैं मास्टर व्यू में स्लाइड करने के लिए टूलबार बटन दबाता हूं, तो यह फिर से लोड होता है। हालांकि स्मृति चेतावनी के बाद इसे पूर्णस्क्रीन में प्रस्तुत किया गया है और न केवल मूल मास्टर व्यू का आकार। (जब मैं डिवाइस को लैंडस्केप पर वापस ले जाता हूं और पोर्ट्रेट पर वापस ले जाता है, तो इसका सही आकार वापस मिलता है।)UISplitView नई स्लाइड-इन पॉपओवर आईओएस 5.1

आईओएस 5.1 से पहले इसे हमेशा सही आकार के साथ पॉपओवर में प्रस्तुत किया गया था।

किसी के पास कोई विचार है, इसे कैसे ठीक किया जाए?

मैंने मास्टर व्यू के फ्रेम आकार को सेट करने का प्रयास किया है, लेकिन यह समस्या का समाधान नहीं करता है।

किसी भी मदद की बहुत सराहना की है!

+0

मेरे पास एक ही प्रश्न है। क्या यह स्लाइडर निष्क्रिय हो सकता है? मैं पॉपवर पसंद करते हैं। शायद पुराने बेस एसडीके के साथ संकलन समाधान है, पता नहीं है। – Ricardo

उत्तर

5

मैं एक ही समस्या थी, लेकिन मैं समस्या को हल करने के लिए इस कोड का प्रयोग किया:

-(void)splitViewController:(UISplitViewController *)svc popoverController:(UIPopoverController *)pc willPresentViewController:(UIViewController *)aViewController 
{ 
    aViewController.view.frame = CGRectMake(0, 0, 320, self.view.frame.size.height); 
} 

जाहिर है जब एक स्मृति चेतावनी प्राप्त होता है, दृश्य नियंत्रक जारी किया जाता है, इसलिए जब यह प्रस्तुत करता है खुद को फिर से, यह इसके मूल दृश्य से आकार का हो जाता है, जो पूर्ण स्क्रीन है। तो आपको लोड होने पर हर बार फ्रेम को रीसेट करना होगा।

+0

वाह, बढ़िया! आपका बहुत बहुत धन्यवाद। यह बिल्कुल पूरी तरह से काम करता है! :) – Joxy

0

मुझे भी यही समस्या थी।

आपको नीचे दिए गए कोड को AppDelegate में जोड़ना चाहिए।

splitViewController.presentsWithGesture = NO;

+0

मैंने पाया कि मुझे splitViewController (विंडो के दृश्य में अपना दृश्य जोड़ने से पहले) प्रदर्शित करने से पहले इसे सेट करना था, या इसका कोई प्रभाव नहीं पड़ेगा। किसी भी मामले में, यह नई स्लाइडिंग विंडो को पुराने पॉपओवर पर वापस नहीं लाता है, यह सिर्फ विवरण दृश्य में स्वाइप इशारा के साथ दिखाने की क्षमता को हटा देता है। – arlomedia

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