2013-09-30 10 views
5

साथ UIViewControllerTransitioningDelegate लागू iOS7 जब से हम UIViewControllerTransitioningDelegate जो ठीक छोटाबीजवाला संक्रमण की अनुमति देता है का उपयोग करते हुए नियंत्रक देखने के लिए दृश्य नियंत्रक से कस्टम संक्रमण बना सकते हैं।iOS7 स्टोरीबोर्ड

viewController.transitioningDelegate = transitioningDelegate; 

मुझे पता चला कि जब स्टोरीबोर्ड का उपयोग कर हम पहले से ही एक कस्टम UIStoryboardSegue का उपयोग कर कस्टम संक्रमण बनाने का मौका था, लेकिन यह एक स्टोरीबोर्ड के साथ कस्टम संक्रमण को लागू करने के लिए एक ही रास्ता लगता है।

स्टोरीबोर्ड का उपयोग करते समय मैं एक संक्रमण प्रतिनिधि को कैसे कार्यान्वित कर सकता हूं?

उत्तर

3

http://www.teehanlax.com/blog/custom-uiviewcontroller-transitions/ देखें।

विचार - prepareForSegue: उपयोग करने के लिए transitioningDelegate और UIModalPresentationCustom को modalPresentationStyle स्थापित करने के लिए है। फिर आपके संक्रमण प्रतिनिधि को संक्रमण का ख्याल रखना होगा।

+0

हैलो, मेरे पास एक सवाल है: मैंने 'readyForSegue' में 'modalPresentationStyle' सेट नहीं किया है और मेरे पास' एनीमेशन नियंत्रक के लिए समय-समय पर नियंत्रक 'और' एनिमेट ट्रांजिशन 'विधि के बीच एक समय अंतर है (यह 0.4 सेकंड और कभी-कभी 0.7 के बारे में उल्लेखनीय था; मेरा संक्रमण एनीमेशन 1 सेकंड लंबा था और यह अंतर लगभग दोगुना था।)। मैंने यह पता लगाने की कोशिश की कि इस समय के अंतर में क्या चल रहा है, लेकिन यह गलती नहीं थी (मुझे लगता है) क्योंकि मेरे पास ऐसी कोई प्रक्रिया नहीं है जो ऐसी देरी कर सकती है। जब मैं modalPresentationStyle = UIModalPresentationCustom जोड़ता हूं तो यह अंतर गायब हो जाता है। क्यों इतने है? धन्यवाद। –

+0

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

3

चेक बाहर निम्न उदाहरण: कस्टम दृश्य नियंत्रकों का उपयोग करते हुए संक्रमण: https://github.com/soleares/SOLPresentingFun

यह WWDC सत्र 218 के लिए नमूना कोड के एक कार्यान्वयन है। यह स्टोरीबोर्ड का उपयोग करता है।