2010-12-03 15 views
6

मैं एक ऐप बनाने की कोशिश कर रहा हूं जहां प्रत्येक व्यू कंट्रोलर (.h/.m) में 2 एनआईबी फाइलें हैं ... एक पोर्ट्रेट के लिए, एक लैंडस्केप के लिए। क्या यह अभिविन्यास का समर्थन करने का "मानक" तरीका है या क्या मुझे मैन्युअल रूप से ओरिएंटेशन व्यू को मैन्युअल रूप से सेट अप करना चाहिए? मुझे जिस समस्या का सामना करना पड़ रहा है वह यह है कि जब कोई उपयोगकर्ता अभिविन्यास को फ़्लिप करता है, तो सभी विचार रीसेट होते हैं (इसलिए उपयोगकर्ता को टेक्स्ट फ़ील्ड/दृश्य इनपुट दोबारा दर्ज करना होगा)।आईफोन ओरिएंटेशन और 2 निब फ़ाइलें

- (void) changeTheViewToPortrait:(BOOL)portrait andDuration:(NSTimeInterval)duration{ 

[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:duration]; 

if(portrait) { 
    [[NSBundle mainBundle] loadNibNamed:@"myview-portrait" owner:self options:nil]; 
    [self setupLayout]; 
} else{ 
    [[NSBundle mainBundle] loadNibNamed:@"myview-landscape" owner:self options:nil]; 
    [self setupLayout]; 
} 

[UIView commitAnimations]; 

}

+0

हैलो ई-मैन यह विधि वैध है? क्या ऐप्पल द्वारा ऐप की समीक्षा करते समय कोई समस्या आती है? जैसा कि आपने किया है, वैसे ही मैं कोई समस्या कर रहा हूं? –

उत्तर

7

एप्पल शीर्षक "एक दृश्य नियंत्रक इंटरफ़ेस अभिविन्यास प्रबंध खंड में उनके दृश्य नियंत्रक प्रोग्रामिंग गाइड में एक से अधिक झुकाव के समर्थन के लिए विभिन्न सुझावों की एक संख्या है:

यहाँ मेरी उन्मुखीकरण विधि है "। आप यह देखने के लिए उस अनुभाग को पढ़ना चाहेंगे कि उनके किसी भी सुझाव आपकी आवश्यकताओं के अनुरूप बेहतर होगा या नहीं।

कहा जा रहा है कि मैंने एक रणनीति में ऊपर दी गई रणनीति का उपयोग किया है और यह बहुत अच्छी तरह से काम करना प्रतीत होता है।

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

+1

मेरी इच्छा है कि एक क्लीनर तरीका था ... :( – Exegesis

+0

क्या यह विधि वैध है? क्या ऐप्पल द्वारा ऐप की समीक्षा करते समय यह कोई समस्या होगी? मैं इस तरह से उपयोग कर रहा हूं, क्या कोई समस्या होगी? –

+1

क्यों नहीं होगा यह वैध है? इस्तेमाल की जाने वाली विधियां सार्वजनिक एपीआई हैं। – TigerCoding

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