IOS 8 से पहले, हमने supportInterfaceOrientations और के साथ संयोजन में कोड का उपयोग किया shouldAutoRotate किसी विशेष उन्मुखीकरण के लिए एप्लिकेशन उन्मुखीकरण के लिए मजबूर करने प्रतिनिधि तरीकों। मैं प्रोग्राम स्निपेट के नीचे कोड का उपयोग करता था ताकि प्रोग्राम को वांछित अभिविन्यास में घुमाया जा सके। सबसे पहले, मैं स्टेटस बार ओरिएंटेशन बदल रहा हूं। और फिर बस प्रस्तुत करना और एक मोडल दृश्य को तुरंत खारिज करना वांछित अभिविन्यास के लिए दृश्य को घुमाता है।
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:YES];
UIViewController *c = [[UIViewController alloc]init];
[self presentViewController:vc animated:NO completion:nil];
[self dismissViewControllerAnimated:NO completion:nil];
लेकिन यह आईओएस 8 में विफल हो रहा है। इसके अलावा, मैंने स्टैक ओवरफ्लो में कुछ जवाब देखे हैं जहां लोगों ने सुझाव दिया कि हमें हमेशा आईओएस 8 से इस दृष्टिकोण से बचना चाहिए।
अधिक विशिष्ट होने के लिए, मेरा एप्लिकेशन एक सार्वभौमिक प्रकार का एप्लिकेशन है। कुल तीन नियंत्रक हैं।
पहला नियंत्रक देखें - यह आईपैड में सभी अभिविन्यास और आईफोन में केवल पोर्ट्रेट (होम बटन डाउन) का समर्थन करना चाहिए।
दूसरा दृश्य नियंत्रक - इसे सभी स्थितियों में केवल सही परिदृश्य का समर्थन करना चाहिए
तीसरा दृश्य नियंत्रक - इसे सभी स्थितियों में केवल सही परिदृश्य का समर्थन करना चाहिए
हम पेज नेविगेशन के लिए नेविगेशन कंट्रोलर का उपयोग कर रहे हैं। पहले दृश्य नियंत्रक से, एक बटन क्लिक एक्शन पर, हम दूसरे को स्टैक पर धकेल रहे हैं। इसलिए, जब दूसरा दृश्य नियंत्रक आता है, तो डिवाइस अभिविन्यास के बावजूद, एप्लिकेशन को केवल परिदृश्य में लॉक करना चाहिए।
नीचे मेरा shouldAutorotate
और supportedInterfaceOrientations
दूसरे और तीसरे दृश्य नियंत्रक के तरीके हैं।
-(NSUInteger)supportedInterfaceOrientations{
return UIInterfaceOrientationMaskLandscapeRight;
}
-(BOOL)shouldAutorotate {
return NO;
}
आईओएस के लिए विशेष रूप से उन्मुखीकरण में एक दृश्य नियंत्रक को लॉक करने के लिए इस या किसी भी बेहतर तरीके से कोई समाधान नहीं है। कृपया मदद करें !!