10

मुझे पता है कि दृश्य बदलने के लिए आईओएस मेंaddChildViewController और presentModelViewController

1.

[self addChildViewController:thirdViewController]; 
[contentView addSubview:thirdViewController.view]; 

2.

First * sVC = [[First alloc] initWithNibName:@"First" bundle:[NSBundle mainBundle]]; 
[self presentModalViewController:sVC animated:YES]; 

3.

तीन तरीके हैं बीच क्या अंतर है
MyViewController *sampleViewController = [[[MyViewController alloc]initWithXXX] autorelease];  
[self.navigationController pushViewController: sampleViewController animated:true]; 

pushViewController को नेविगेशन नियंत्रक की आवश्यकता होती है, जिसे मैं समझता हूं। हालांकि, addChildViewController और presentModalViewController का उपयोग कब करें ??

उत्तर

10

इन चार पूरी तरह से अलग कार्यान्वयन

  • addChildViewController ViewController रोकथाम करने के लिए iOS5 में प्रयोग किया जाता है, यह आसानी से iOS5

    में
  • addSubviewNavigationCotrollers या TabControllers अपने ही उपलब्ध अपने स्वयं के बनाने के लिए सक्षम हो जाएगा तीनों का निम्नतम स्तर है, यह सिर्फ एक अन्य दृश्य में एक दृश्य जोड़ देगा, एक बच्चे के रूप में

  • presentModalViewController, स्क्रीन पर रीति से एक ViewController पेश करने के लिए इसलिए पुराने

  • pushViewControllerUINavigationController में इस्तेमाल viewcontrollers के लिए एक नया ViewController पुश करने के लिए ढेर,

+0

बहुत स्पष्ट! धन्यवाद! – Ian

3

1) आईओएस में पेश किया गया था अधिलेखन प्रयोग किया जाता है ऐप्पल के प्रतिमान शिफ्ट के हिस्से के रूप में 5 दृश्य नियंत्रक पदानुक्रमों को अनुमति देने के लिए, यह केवल वर्तमान के सामने एक दृश्य नियंत्रक रखता है। आपको नियंत्रकों के प्रवाह का प्रबंधन करना होगा।

2) एक जैसा ही है, सिवाय इसके कि इसे एक समय में केवल एक व्यू कंट्रोलर के लिए किया जा सकता है। असल में, इस विधि को [self presentViewController:animated:completion:]

3) दृश्य नियंत्रक को एक सूची में जोड़ता है ताकि आप 'बैक' मारने के बाद पिछले एक पर वापस जा सकें। आईओएस आपके लिए नियंत्रकों के प्रवाह का प्रबंधन करेगा।

+0

बहुत बहुत धन्यवाद! स्पष्ट! – Ian

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