2009-03-10 10 views
7

से UIViews फ़्लिपिंग मैं अच्छी तरह से जानता हूं कि केवल दो उपलब्ध UIView संक्रमण हैं, UIViewAnimationTransitionFlipFromLeft और UIViewAnimationTransitionFlipFromRight। मैं सोच रहा हूं कि वैसे भी है कि मैं एक UIViewAnimationTransitionFlipFromTop या UIViewAnimationTransitionFlipFromBottom को लागू/अनुकरण कर सकता हूं।शीर्ष/नीचे

ऐसा करने का एकमात्र तरीका मैं एक्स अक्ष के साथ एक्स अक्ष को फ़्लिप करके कर रहा हूं, लेकिन मुझे यह कैसे करना है इसके बारे में कोई जानकारी नहीं मिली है। बस प्रत्येक अक्ष के निर्देशांक सेट करने से समस्या को ठीक नहीं किया जाएगा क्योंकि x-axis x-axis तक बना रहता है।

क्या किसी के पास कोई विचार है कि यह कैसे पूरा किया जा सकता है?

+0

ओ.ओ.ओ. पर अन्य रायन आमोस? –

+0

मैंने फ्लिपफ्रॉमबॉटम के लिए उत्तर पोस्ट किया है जो मेरे लिए काम करता है http://stackoverflow.com/questions/5144446/uiview-flip-vertical-animation/7463047#7463047 – xxcv

उत्तर

4

आप अपने मुख्य दृश्य के कैलियर में CATransform3D को लागू करके ऐसा कर सकते हैं, इसके पीछे आपके द्वितीयक दृश्य के कैलियर के साथ। this response में, मैं माइक ली द्वारा इस एनीमेशन के मैक कार्यान्वयन को इंगित करता हूं। आईफोन पर इस प्रभाव को फिर से बनाने के लिए आपको उस कोड के एक महत्वपूर्ण हिस्से का पुन: उपयोग करने में सक्षम होना चाहिए।

3

मान लीजिए कि आपको 90 डिग्री के 3 डी रोटेशन ट्रांसफॉर्म के साथ एक यूआईवीव एनीमेशन ब्लॉक का उपयोग करना होगा, कोर एनीमेशन प्रतिनिधि आपको कॉल करते समय कॉल कर देगा, दृश्य को नए (3 डी दूसरी ओर घुमाए गए) के साथ स्वैप करें। और नए दृश्य के लिए अंतिम 90 डिग्री के साथ चेन ...

1

हालांकि यह वही नहीं है जो आप चाहते हैं, वहां दो अंतर्निहित एनिमेशन हैं जिनका आपने उल्लेख नहीं किया: UIViewAnimationTransitionCurlDown और UIViewAnimationTransitionCurlUp।

कर्लअप ऐसा लगता है कि कोई ऊपर से ऊपर तक दृश्य को छील रहा है, और कर्लडाउन दिखता है कि स्क्रीन के शीर्ष पर ऊपर से नीचे तक दृश्य को अनलॉक किया जा रहा है। आपको कम से कम उन्हें एक नज़र रखना चाहिए, क्योंकि उनका उपयोग करना आसान है।