2012-01-20 17 views
7

मैं आईओएस 5 के लिए एक ऐप विकसित कर रहा हूं, जिसे लैंडस्केप मोड में चलाना है। मेरी समस्या यह है कि मैं इसे शुरू में फ्लिप नहीं कर सकता।लैंडस्केप मोड में लॉन्च करने के लिए फोर्स आईओएस ऐप

मैं जोड़ने "प्रारंभिक इंटरफ़ेस उन्मुखीकरण" "लैंडस्केप (घर बटन)" और मेरे विचार नियंत्रक के लिए निम्न विधि जोड़ने के लिए सेट की कोशिश की है:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
// Return YES for supported orientations 
return (interfaceOrientation == UIInterfaceOrientationLandscapeRight); 
} 

मैं चारों ओर कैसे यह मेरे सिर लपेटो कर सकते हैं काम करना चाहिए।

मैं भी कैसे Xcode 4.2 परियोजना सेटअप में "समर्थित उपकरण अभिविन्यास" उपलब्ध उपयोग करने के लिए सोच रहा हूँ (मैं कोड here पाया जाता है), यह कुछ भी करने को नहीं लगता है।

मैं वेबसाइट के चारों ओर देख रहा हूं और मेरी समस्या हल करने वाला एक उदाहरण नहीं ढूंढ पाया है।

धन्यवाद।

+0

http://stackoverflow.com/a/17628668/468724 –

उत्तर

16

अपने आवेदन की Info.plist फ़ाइल में, UIInterfaceOrientation कुंजी जोड़ सकते हैं और लैंडस्केप मोड में अपने मूल्य निर्धारित किया है। परिदृश्य अभिविन्यास के लिए, आप इस कुंजी के को UIInterfaceOrientationLandscapeLeft या UIInterfaceOrientationLandscapeRight पर सेट कर सकते हैं।

लैंडस्केप मोड में अपने विचार डालें और सुनिश्चित करें कि उनके ऑटोरेज़िंग विकल्प सही तरीके से सेट हैं।

आपके विचार नियंत्रक के shouldAutorotateToInterfaceOrientation: विधि ओवरराइड और वापसी हाँ केवल वांछित लैंडस्केप ओरिएंटेशन और कोई चित्र झुकाव के लिए के लिए।

+0

धन्यवाद। जैसा आपने वर्णन किया है मैंने किया था। मेरे पास एक और सबव्यूव है और पता चला है कि मुझे काम करने के पहले मुझे सभी नियंत्रकों पर विधि को ओवरराइड करना पड़ा था। – bvd

+0

अगर आपके Info.plist में आप अन्य परिदृश्य ऊपर UIInterfaceOrientationLandscapeRight डाल तो आप केवल पढ़ने के लिए पर परिदृश्य –

0

मुझे लगता है कि यदि आप प्रोजेक्ट प्लिस्ट में समर्थित इंटरफ़ेस ओरिएंटेशन पर काम करेंगे तो यह काम करेगा। बस "समर्थित इंटरफेस ओरिएंटेशन" नामक एक नई लाइन जोड़ें और इसे सरणी प्रकार बनाएं और अपने इच्छित तह लैंडस्केप दृश्यों के लिए 2 आइटम जोड़ें। यह सिर्फ एक त्वरित अनुमान का परीक्षण नहीं किया

+0

में

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight]; 

आवश्यक झुकाव भी सेट AppDelegate में निम्न का उपयोग मैं के साथ की कोशिश की है कि कोई भाग्य नहीं। – bvd

1

जब आप एक्सकोड में अपने प्रोजेक्ट के नाम पर क्लिक करते हैं और सारांश टैब के तहत अपने लक्ष्य का चयन करते हैं, तो समर्थित डिवाइस अभिविन्यास सेटिंग्स का दृश्य प्रस्तुतिकरण होता है। इस तरह मैं इसे करने में कामयाब रहा।

-2

इसे आज़माएं इससे आपकी मदद मिलेगी, इस कोड को आपडेडलोड में लिखें।

[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight]; 
+0

UIDevice setOrientation अपने अनुप्रयोग शुरू कर सकते हैं और सेट नहीं किया जा सकता है। –

+0

एक केवल पढ़ने के लिए संपत्ति नहीं सेटर की है। – SyntheticMeshwork

10

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{ 
// Return YES for supported orientations 
return (interfaceOrientation == UIInterfaceOrientationLandscapeRight); 
} 

//Here are some iOS6 apis, used to handle orientations. 
- (BOOL)shouldAutorotate NS_AVAILABLE_IOS(6_0) 
- (NSUInteger)supportedInterfaceOrientations - (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation 
+0

shouldAutorotateToInterfaceOrientation: नहीं बुलाया मदद मुझे इसकी सराहना –

+0

@JigPatel iOS6 में इन नए तरीकों 'से कुछ का उपयोग - (bool) shouldAutorotate NS_AVAILABLE_IOS (6_0) - (NSUInteger) supportedInterfaceOrientations - (UIInterfaceOrientation) preferredInterfaceOrientationForPresentation' – vishy

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