2012-09-13 22 views
101

मैंने अभी आईओएस 6 समर्थन के लिए एक्सकोड 4.5 स्थापित किया है, और मैंने अपने स्टोरीबोर्ड में 'एक्जिट' नामक एक नया आइकन देखा है, जो मेरे व्यू कंट्रोलर के तहत 'फर्स्ट रेस्पॉन्डर' आदि के साथ सूचीबद्ध है। थोड़ा हरा 'बाहर निकलें' लेबल वाला आइकन।एक्सकोड 4.5 स्टोरीबोर्ड 'बाहर निकलें'

मुझे इस पर कुछ भी मिल सकता है और न ही इसका उपयोग किया जा सकता है।

किसी को भी इसके बारे में कुछ पता है, यह कैसे काम करता है, इसके लिए क्या है?

+1

एक समान सवाल पर मैं इस उत्तर पोस्ट: http://stackoverflow.com/questions/12569316/does-anyone-know-what-the-new-exit-icon-is-used-for- जब-संपादन-स्टोरीबोर्ड-यूएसआई/13437054 # 13437054 यह बाहर निकलने में मदद करता है (बाहर निकलें) सुविधा – Eric

उत्तर

72

इसे "अनइंड सेग्यू" कहा जाता है।

खोलना segues एक स्टोरीबोर्ड

अच्छी खबर में दृश्यों के मौजूदा उदाहरणों में संक्रमण अनुमति दे सकते हैं: दुर्भाग्य से अब तक जो यह बताता है XCode 4.5 नई सुविधाओं की सूची पर एक संक्षिप्त उल्लेख छोड़कर इसके लिए कोई भी प्रलेखन है यह है कि डब्ल्यूडब्ल्यूडीसी 2012 से उन जीवों को समझाते हुए एक सत्र है (अन्य चीजों के साथ)।

आप अपने डेवलपर खाते के विवरण के साथ ऐप्पल के आईओएस देव केंद्र में लॉग इन कर सकते हैं और फिर WWDC 2012 videos page पर जा सकते हैं और "अपने ऐप में स्टोरीबोर्ड को अपनाना" देख सकते हैं (यह शीर्ष से पांचवां है) अनचाहे सेग की चर्चा समय 37 से शुरू होती है: 20।


अद्यतन: यहाँ एप्पल के प्रलेखन

seques तनाव मुक्त के लिए एक प्लेसहोल्डर वस्तु नामित बाहर निकलें से इस विषय पर कुछ अधिक जानकारी है। डिफ़ॉल्ट रूप से, जब कोई उपयोगकर्ता किसी बच्चे के दृश्य को खारिज कर देता है, तो उस दृश्य के लिए व्यू कंट्रोलर पैरेंट दृश्य में अनदेखा (या रिटर्न)-वह दृश्य है जो मूल रूप से बच्चे के दृश्य में परिवर्तित हो गया है। हालांकि, एक्जिट ऑब्जेक्ट एक व्यू कंट्रोलर को मनमाने ढंग से दृश्य को खोलने में सक्षम बनाता है।



And here is a nice example of how you can implement one


(iOS6 डॉकसमूह प्रारंभ करना से> सामान्य>) एक और अद्यतन:

Here is a technical note from Apple इस विषय के बारे में।

+3

ठीक है, तो आप इसका उपयोग कैसे करते हैं? व्यू कंट्रोलर के नीचे निकास ऑब्जेक्ट से नियंत्रण-क्लिक करने का प्रयास किया, लेकिन यह किसी भी चीज़ से लिंक नहीं होगा। – shim

+4

आपको मूल रूप से अपने अवांछित segue के लिए एक विधि को परिभाषित करना होगा और फिर उस विधि का चयन करके उस तत्व को 'निकास' बटन से कनेक्ट करना होगा जिसे आप कॉल करना चाहते हैं। आप [यहां एक उदाहरण] ढूंढ सकते हैं (http://www.techotopia.com/index.php/Using_Xcode_Storyboarding_ (iOS_6) #Uwwinding_Storyboard_Segues) (मैंने अपना उत्तर अपडेट किया है उदाहरण के लिए) – Alladinian

+1

-1: बहुत सारे शब्द , थोड़ी उपयोगी जानकारी। इस पर पढ़ने और इसे अपने स्वयं के ऐप में उपयोग करने के बाद, मैंने यह उत्तर लिखा है जो आशाजनक रूप से अधिक उपयोगी है: http://stackoverflow.com/a/25829835/901641 – ArtOfWarfare

4

Cannot Connect Storyboard Unwind Segue भी देखें जो बाहर निकलने वाला आइकन जीवन में लाने की आवश्यकताओं को स्पष्ट करता है।आप होना आवश्यक है, दृश्य नियंत्रक पदानुक्रम में उच्च ऊपर, एक विधि है कि:

  1. IBAction

  2. के रूप में चिह्नित एक पैरामीटर एक UIStoryboardSegue *

दोनों तो उन है कि ले जाता है शर्तों को पूरा किया जाता है, बाहर निकलने वाला आइकन इसे देखेगा और आपको उसी दृश्य नियंत्रक में एक बटन से नियंत्रण-खींचने से कनेक्ट करने की अनुमति देगा।

मैं भी अब दुनिया की सबसे सरल उदाहरण यहाँ पोस्ट किया है:

https://github.com/mattneub/Programming-iOS-Book-Examples/tree/master/ch19p638presentedViewControllerStoryboard (फिक्स्ड 12 जुलाई 2013)

यह दिखाता है कि trivially आसान यह अब एक प्रस्तुत दृश्य नियंत्रक से को segue और वापस करने के लिए है , जैसा कि आपको पहले से काम करने के लिए पहले किए गए सभी कार्यों के विपरीत (एक प्रतिनिधि और प्रोटोकॉल के साथ टेम्पलेट में सामान, जिनमें से सभी को हटाया जा सकता है)।

3

बस आवश्यकता परिभाषा के लिए थोड़ा सा सूक्ष्मता जोड़ना जो मदद कर सकता है। यह एक्सकोड 4.6 में प्रयोग करने पर आधारित है। मैंने पाया कि यह विशेष रूप से और केवल उस विधि की घोषणा (!) है जो एक्सकोड से वांछित नियंत्रण-ड्रैग प्रतिक्रिया को सक्षम बनाता है। यहाँ है कि मैं क्या पूरा आवश्यकताओं हो पाया है:

  • में चिह्नित किए गए IBAction रूप
  • एक पैरामीटर है कि लेता है एक UIStoryboardSegue *
  • आप एक कार्रवाई घोषित किया जाना चाहिए (लेकिन जरूरी लागू नहीं किया [में एक विधि अर्थ .M कार्यान्वयन अनुभाग])।
  • यह किसी भी वर्ग की इंटरफ़ेस घोषणा में हो सकता है, यहां तक ​​कि .M का इंटरफेस अनुभाग, अपर्याप्त वर्ग को छोड़कर। (मुझे नियंत्रक पदानुक्रम में अपनी स्थिति पर कोई निर्भरता दिखाई नहीं दे रही है। आप किसी भी पुरानी फ़ाइल को जोड़ सकते हैं और सिस्टम UIStoryboardSegue पैरामीटर वाले सभी विधियों को समेकित करता है और उन्हें बाहर निकलने वाले आइकन के मेनू पर प्रदर्शित करता है।) ध्यान दें कि नियंत्रण- ड्रैग मेनू आपको अपनी विधि भी दिखाएगा यदि विधि उस दृश्य के वर्ग में है जिसे आप स्टोरीबोर्ड संपादक में जोड़ रहे हैं, लेकिन यह एक कोलन के बिना दिखाई देगा और रनटाइम पर कोई भी क्रिया ट्रिगर नहीं लग रहा है।

उदाहरण: -(IBAction)anymethodname:(UIStoryboardSegue *)myvariable;

10

कल्पना कीजिए कि आप अपने स्टोरीबोर्ड में विचारों का एक दृश्य है:

A -> ... -> Z

आप दृश्य Z पर एक बटन करना चाहते हैं जो उपयोगकर्ता जाने के लिए अनुमति देता है A पर वापस रास्ता।

तो क्या आप सब करने की ज़रूरत का मानना ​​है कि आप, के लिए बाहर सभी तरह वापस करने के लिए इस मामले में, A, एक उदाहरण विधि है जो एक IBAction के रूप में चिह्नित और प्रकार UIStoryboardSegue * की एक एकल पैरामीटर में ले जाता है में चाहते देना है। विधि और चर का नाम कोई फर्क नहीं पड़ता। कार्यान्वयन के भीतर आप क्या करते हैं, इससे कोई फर्क नहीं पड़ता।

Obj सी:
A के इंटरफेस (नहीं Z 'में ओं):

- (IBAction)cancelSignup:(UIStoryboardSegue *)unwindSegue; 

A में के कार्यान्वयन (नहीं Z' ओं):

यहाँ एक उदाहरण है
- (IBAction)cancelSignup:(UIStoryboardSegue *)unwindSegue { 
    // Only "implemented" to satisfy a respondsToSelector: search. 
    // You can actually implement more stuff here, if you want, IE, if 
    // you need to reach out to a server to mention that this screen was 
    // returned to from a later screen. 
} 

स्विफ्ट:
इन Z के Exit को

@IBAction func cancelSignup(unwindSegue: UIStoryboardSegue) { 
    // Only "implemented" to satisfy a respondsToSelector: search. 
    // You can actually implement more stuff here, if you want, IE, if 
    // you need to reach out to a server to mention that this screen was 
    // returned to from a later screen. 
} 

अब, अपने स्टोरीबोर्ड, नियंत्रण पर Z एक तत्व से खींचें भीतर (यानी, एक रद्द बटन): A के स्रोत (नहीं Z के)। यह दृश्य पदानुक्रम में उच्चतम दृश्यों के माध्यम से स्कैन करेगा जिसमें IBAction है जो केवल एक ही UIStoryboardSegue * को एक क्रिया के रूप में स्वीकार करता है और उन्हें चुनने के लिए सूचीबद्ध करता है।

उम्मीद है कि यह मौजूदा उत्तरों की तुलना में अधिक सीधे और सहायक था। मैंने पाया कि यह लिंक विशेष रूप से उपयोगी था, इसलिए यदि कोई विवरण है तो आप अभी भी मेरा जवाब पढ़ने के बाद अस्पष्ट हैं, शायद यह आपकी मदद कर सकता है (मैंने इस लंबे लेख से सभी उपयोगी जानकारी को संक्षिप्त उत्तर में बदलने की कोशिश की): http://www.freelancemadscience.com/fmslabs_blog/2012/9/24/advanced-storyboard-techniques.html

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