मॉडल व्यू कंट्रोलर वर्तमान वर्कफ़्लो को बाधित करने और दृश्यों का एक नया सेट प्रदर्शित करने के लिए उपयोग किया जाता है। तो जब आप इस मामले आप बी प्रस्तुत कर रहे हैं में रीति से, यहाँ प्रस्तुत करते हैं, मौजूदा सक्रिय ViewController बी और नहीं ए
एक ViewController मॉडल-ViewController (MVC) डिजाइन पैटर्न में पारंपरिक नियंत्रक वस्तुओं है। वे उपयोगकर्ता इंटरफेस, इशारा पहचान, घटना प्रबंधन (उदाहरण के लिए बटनों) और वर्तमान में उनके विचारों के संरेखण का भी ख्याल रखते हैं।
जब आप बी प्रस्तुत करते हैं, तो वर्तमान व्यू कंट्रोलर ए से बी में बदल जाता है और इसलिए जब आप घुमाने की कोशिश करते हैं (यदि अभिविन्यास समर्थन प्रदान किया जाता है) बी का दृश्य इसे व्यू कंट्रोलर सक्रिय के रूप में प्रभावित करता है और यह रोटेशन का जवाब देता है। आम तौर पर हम इन पर ध्यान नहीं देते क्योंकि दृश्य अपारदर्शी है। यहां आपके मामले में दृश्य पारदर्शी है और हमने देखा है कि ए ने रोटेशन का जवाब नहीं दिया है।
मैं iOS6 में ऊपर के उदाहरण की कोशिश की
ViewController2 *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"VC2"];
vc.view.backgroundColor = [UIColor clearColor];
self.modalPresentationStyle = UIModalPresentationCurrentContext;
[self presentViewController:vc animated:YES completion:nil];
यहाँ एक पोर्ट्रेट मोड में बने रहे (एक आप का उल्लेख से)
जब मैं इस एक subview के रूप दूसरा ViewController के दृष्टिकोण को जोड़ने किया था, एक बदला परिदृश्य
ViewController2 *vc = [self.storyboard instantiateViewControllerWithIdentifier:@"VC2"];
vc.view.backgroundColor = [UIColor clearColor];
self.view addSubview:vc.view];
को यह क्योंकि दूसरे परीक्षण में सक्रिय ViewController एक था और नहीं बी के रूप में बी का दृष्टिकोण एक subview ए को जोड़ा गया सेब के माध्यम से जाओ था happend
जो iOS संस्करण पर दस्तावेज़? – foundry
मैं आईओएस 6.0 –
का उपयोग कर रहा हूं [मॉड्यूल व्यू कंट्रोलर घुमाने पर आईओएस रोटेट व्यू कंट्रोलर का संभावित डुप्लिकेट] (http://stackoverflow.com/questions/13987528/ios-rotate-view-controller-when-modal-view-controller -रोटेट्स) – michael23