2014-04-06 5 views
28

मेरे पास एक UICollectionView है और जब कोई आइटम चुना जाता है, तो मैं इसे पूर्ण स्क्रीन को एनिमेट करना चाहता हूं। तो यह सेल के आकार से पूर्ण स्क्रीन में संक्रमण होगा और एक UIViewController बन जाएगा। Pinterest और Evernote दोनों में यह व्यवहार होता है जहां सेल पर टैप करने से सेल को पूर्ण स्क्रीन दृश्य नियंत्रक में स्थानांतरित किया जाता है।UICollectionView से UIViewController में परिवर्तन कैसे करें Pinterest/Evernote

क्या यह कोई उदाहरण है कि यह कैसे किया जाता है? मैंने कई परियोजनाओं की खोज की है, लेकिन सेल को पूर्ण स्क्रीन व्यू कंट्रोलर में बदलने पर कोई चित्र नहीं मिला है।

Pinterest इसे यहाँ पर चर्चा करता है: http://engineering.pinterest.com/post/67769846580/behind-the-pins-building-pinterest-3-0-for-ios

enter image description here

+0

क्या आपको कभी जवाब मिल गया है? मैं यहाँ ऐसा करने की कोशिश कर रहा हूं .. –

+2

@ ऑस्करयुंडिनटाटा शायद आप इसे [repo] (https://github.com/demon1105/PinterestSwift) – demon

+0

वाह बहुत अच्छा प्रयास करेंगे! thx @demon –

उत्तर

19

यह इस संक्रमण लागू करना मुश्किल नहीं है। लेख की तरह ही, वे UIViewControllerAnimatedTransitioning प्रोटोकॉल को लागू करने के लिए एक संक्रमण को अनुकूलित करते हैं, इसके अलावा कुछ भी नहीं। आपको नए आकार की गणना करने की आवश्यकता है जिस छवि को आप एनिमेट करने के लिए टैप करते हैं। बस।

यह हमारे दो ऐप्स, सभी इस विधि द्वारा इस समान संक्रमण प्रभाव को लागू करते हैं।

https://itunes.apple.com/app/hua-ban-quan-qiu-you-mei-tu/id494813494?mt=8

और यह एक:

https://itunes.apple.com/app/mei-tu-sou-sou-wan-zhuan-wei/id781146829?mt=8


मैं इस repo कई दिनों से पहले बनाए गए थे। और स्विफ्ट के साथ, मैंने लगभग कुछ ही मुद्दे के बगल में इस संक्रमण को समाप्त कर दिया, यह मेरा पहला अभ्यास डेमो प्रोजेक्ट आधारित स्विफ्ट है। लेकिन यह समझना मुश्किल नहीं है कि आप आईओएस देव में नए नहीं हैं और आप स्विफ्ट बीटीडब्ल्यू सीखेंगे। मैं इसे खत्म कर दूंगा और बाद में बग ठीक कर दूंगा।

असली परियोजना में यह डेमो से अधिक जटिल है, लेकिन इसके साथ, शायद आप इस तरह के संक्रमण को प्राप्त करने के बारे में जानते होंगे।

शुभकामनाएं।

+0

धन्यवाद। मैं सैद्धांतिक रूप से समझता हूं, लेकिन जटिलताओं को समझने के लिए कोड का उपयोग करके वास्तविक उदाहरण देखना अच्छा लगेगा। उदाहरण के लिए, आपके और Pinterest ऐप दोनों में, जब आप ज़ूम आउट करते हैं तो सेल की स्थिति भी बदल जाती है। ऐसी छोटी चीजें हैं जो अवधारणात्मक रूप से समझ में आती हैं, लेकिन वास्तव में यह कोडिंग है कि यह चुनौती है। – user1218464

+0

@ user1218464 रोजर कि, मैं आपको बाद में इसे लागू करने के लिए एक डेमो दिखाऊंगा, और मैं यह देखना चाहता हूं कि इस संक्रमण को करने का एक बेहतर तरीका है, इसे समाप्त करने के बाद मैं इस जवाब को संपादित करूंगा। – demon

+0

अरे, मैं जानना चाहता था, अगर मैं बटन पर टैप करते समय संग्रह दृश्य से सेल को हटाना चाहता हूं, तो मुझे इसे कैसे कार्यान्वित करना चाहिए? – Stephanie