एप्पल performSegueWithIdentifier:sender:someObject
उपयोग करने की सलाह प्रोग्राम के रूप में segues प्रदर्शन करने के लिए।
अपने खुद के कोड के कम मतलब है कि आप ढांचे दे रहे काम का अधिक है: वहाँ यह इस तरह से कर रही है के लिए लाभ का कम से कम एक जोड़े हैं। धक्का segues के लिए, या प्रदर्शन में सुधार, या भविष्य के किसी आईओएस रिलीज में एक बग ठीक करता है एप्पल कुछ सुपर शांत नए दृश्य प्रभाव के साथ आता है, अपने अनुप्रयोग मुक्त करने के लिए इसे प्राप्त कर सकते हैं। और कोड की हर पंक्ति जो आप लिखने के लिए लिखते हैं, वह आपके लिए काम कर सकती है, जिससे आप बग लिखने का मौका बढ़ा सकते हैं।
आईबी में अधिक परिवर्तन करना आसान हो सकता है। आप तय करते हैं कि आप बदलना चाहते हैं सब अपने पुश segues मोडल को segues, या कुछ कस्टम segue प्रकार जहाँ आप अपने सुपर शांत दृश्य प्रभाव करते हैं, आप उन्हें सभी आईबी में चयन और शिकार के बजाय एक क्लिक के साथ segue प्रकार बदल सकते हैं अपने कोड में चारों ओर।
इसके अलावा, कि क्या आप पहली या दूसरी विधि का उपयोग करें, क्रम में एक दृश्य नियंत्रक धक्का "वापस" एक पिछले दृश्य नियंत्रक करने के लिए जाने का रास्ता अपने उपयोगकर्ताओं को उम्मीद काम नहीं करेगा। जब आप एक SongViewController
धक्का, यह नेविगेशन ढेर के अंत में जोड़ा है:
LocationViewController -> SongViewController
आप तो LocationViewController
धक्का फिर से "वापस" जाना तो: उपयोगकर्ता में वापस बटन टैप करता
LocationViewController -> SongViewController -> LocationViewController
हैं नेविगेशन बार, वे फिर से स्थान दृश्य पर स्थान दृश्य से स्थान दृश्य पर वापस जाएंगे। (इसके अलावा, यदि आप ऐसा करते रहते हैं, तो प्रत्येक "बैक" और "फॉरवर्ड" दृश्य नियंत्रकों की एक सतत बढ़ती श्रृंखला में शामिल होगा, जो अन्य परेशानी का कारण बन सकता है।)
इसके बजाय, आपको नेविगेशन नियंत्रक हैंडल वापस जाना।यह उस उद्देश्य के लिए नेविगेशन बार में एक बटन डालता है, जो अधिकांश उपयोग मामलों को संभालना चाहिए। यदि आपको वापस जाने के लिए अपना नियंत्रण करने की आवश्यकता है, तो आप इसे आईओएस 5 के साथ आईबी में नहीं कर सकते हैं, लेकिन आप इसे नेविगेशन नियंत्रक के popViewControllerAnimated:
विधि के साथ प्रोग्रामेटिक रूप से कर सकते हैं।
व्यक्तिगत रूप से, क्योंकि आप स्टोरीबोर्ड और सीग्यू का उपयोग कर रहे हैं, तो # 2 इसे करने का एक अच्छा तरीका है। –
# 1 उपयोगी हो सकता है यदि आपको व्यू कंट्रोलर को धक्का देना है जिसमें सेगू नहीं हो सकता है? यानी मैपव्यू एनोटेशन के प्रकटीकरण बटन से व्यू कंट्रोलर को पुश करें। – kappa
कुछ भी एक segue हो सकता है। सब कुछ एक * स्वचालित * segue पूरी तरह से आईबी (बटन और टेबल कोशिकाओं की तरह) में बनाया जा सकता है। लेकिन आप अभी भी एक दृश्य नियंत्रक से शुरू होने वाले आईबी में एक सेगू बना सकते हैं और इसे निष्पादित करने के लिए # 2 का उपयोग कर सकते हैं; मैप कॉलआउट बटन के लिए यह वही है जो आप करेंगे। – rickster