7

के रूप में निकाल दिए जाने पर MasterViewController का आकार बदलें जब एक स्पिल्ड व्यू कंट्रोलर का उपयोग करते समय, मेरे पास एक मास्टर और विवरण दृश्य होता है। जब आईपैड पोर्ट्रेट मोड में होता है, तो मास्टर व्यू पॉपअप के रूप में प्रदर्शित होता है। मैं मास्टरव्यू (पॉपअप व्यू) की ऊंचाई को कैसे समायोजित कर सकता हूं? मैं कोशिश की है:एक पॉपओवर

self.contentSizeForViewInPopover = CGSizeMake(320.0, 2 * 52.0); 

लेकिन मुझे यकीन है नहीं यह निर्धारित करने के लिए थे हूँ?

enter image description here

+0

मुझे यह वही समस्या है और यह तब शुरू हुआ जब मैंने 5.1 विकास उपकरण में अपग्रेड किया। – lnafziger

+0

तो आपको लगता है कि एसडीके/ओएस में एक बग है? – PhillyNJ

+0

ठीक है, मेरे लिए यह व्यवहार में बदलाव था। मुझे यकीन नहीं है कि यह एक बग है, और अभी तक बहुत समय व्यतीत नहीं किया है ... – lnafziger

उत्तर

5

आप सामग्री का उपयोग कर आकार को सेट करने में सक्षम होने के लिए इस्तेमाल किया गया था SideForViewInPopover। लेकिन आईओएस 5.1 में, मास्टर व्यू कंट्रोलर की प्रस्तुति शैली मानक पॉपओवर के रूप में दिखाई देने के बजाय स्लाइड में बदल दी गई थी। जहां तक ​​मैं कह सकता हूं, यह अभी भी एक यूआईपीओपीओवर है, लेकिन हम अब इसके आकार को संशोधित नहीं कर सकते हैं। मैंने पॉपअप as suggested on the developer forums पर सामग्री के साथ सामग्रीफोरव्यूइन इनपोपवर की कोशिश की, साथ ही साथ सेटपोपर कंटेंट साइज, और न ही कोई प्रभाव पड़ा।

UISplitViewController class reference इस बदलाव को स्वीकार करते हैं नहीं है, और न ही UIViewController या UIPopoverController के लिए श्रेणी संदर्भ करते हैं, और View Controller Programming Guide अभी भी मास्टर दृश्य नियंत्रक पॉपओवर की पुरानी शैली को दर्शाता है।

आप अपने विस्तार दृश्य के अंदर तालिका दृश्य की ऊंचाई को बदलने का प्रयास कर सकते हैं, और फिर hide the popover's background। मैंने यह कोशिश नहीं की है।

इसके अलावा, चूंकि आपका विवरण दृश्य नक्शा दिखा रहा है, इसलिए आप disable the right-swipe gesture that now invokes the master view को मानचित्र संकेतों में हस्तक्षेप से रोकने के लिए रोक सकते हैं।

0

मैंने देखा है एप्पल नमूने मास्टर दृश्य नियंत्रक के awakeFromNib विधि और भी viewDidLoad का उपयोग करें। मुझे यकीन नहीं है कि एक या दूसरे को चुनने का एक ओवरराइडिंग कारण है।

+0

धन्यवाद लेकिन कोई सुझाव नहीं काम करता है। – PhillyNJ

+0

विषम। मैंने बस टेस्ट स्प्लिट व्यू प्रोजेक्ट में कोशिश की और सरल मामला काम किया। (मैंने एक 'बग' देखा जहां मास्टर क्षेत्र में एक नया नियंत्रक दबाया गया और फिर छोटे से वापस लौटने पर इसे डिफ़ॉल्ट आकार में सेट किया गया ... सुनिश्चित नहीं है कि इसे कैसे ठीक किया जाए।) –

+0

शायद दृश्य में क्या होगा? – lnafziger