2011-05-26 14 views
5

का उपयोग कर एक सिक्का के दोनों पक्षों को फ़्लिप किया जा रहा है, मैं काम करने के लिए "सिक्का फ़्लिपिंग" एनीमेशन प्राप्त करने के बहुत करीब हूं, लेकिन मौजूदा एनिमेशन सिस्टम में सीमाओं (बग्स?) के कारण - मुझे कोई नहीं मिल रहा है हवा में फिसलने वाले सिक्के के दोनों किनारों को दिखाने का तरीका।एंड्रॉइड मानक एनीमेशन

उदाहरण के लिए, मैं निम्नलिखित एनीमेशन .XML है:

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android"  
    android:shareInterpolator="false">  
     <scale 
      android:repeatCount="17" 
      android:repeatMode="reverse" 
       android:interpolator="@android:anim/accelerate_decelerate_interpolator" 
      android:fromXScale="1.0" android:toXScale="1.0" 
      android:fromYScale="1.0" android:toYScale="0.0" 
      android:pivotX="50%"  android:pivotY="50%" 
      android:fillEnabled="true" 
      android:fillAfter="true" 
      android:duration="60" 
     />  
     <scale 
      android:repeatCount="1" 
      android:repeatMode="reverse" 
       android:interpolator="@android:anim/accelerate_decelerate_interpolator" 
      android:fromXScale="1.0" android:toXScale="2.0" 
      android:fromYScale="1.0" android:toYScale="2.0" 
      android:pivotX="50%"  android:pivotY="50%" 
      android:fillEnabled="true" 
      android:fillAfter="true" 
      android:duration="800" 
     />  
     <translate 
      android:repeatCount="1" 
      android:repeatMode="reverse" 
      android:interpolator="@android:anim/accelerate_decelerate_interpolator" 
      android:fromXDelta="0%" 
      android:toXDelta="0%" 
      android:fromYDelta="0%" 
      android:toYDelta="-150%" 
      android:fillEnabled="true" 
      android:fillAfter="true" 
      android:duration="800" 
     /> 
</set> 

यह "नकली" एक flipping Y- अक्ष पर सिक्का स्केलिंग और एक पाश पर पीछे से एनीमेशन। इसके संयोजन में, समग्र एनीमेशन को बड़ा बनाने के लिए एक पैमाने है, जबकि इसे ऊपर और नीचे अनुवाद भी किया जाता है। लेकिन यह केवल सिक्का के एक तरफ दिखाएगा।

मैंने एक ही समय में चल रहे सिक्का के प्रत्येक पक्ष में इन दो एनिमेशनों को करने का प्रयास किया, लेकिन मुझे एनीमेशनसेट पर लागू होने पर REPEATCOUNT काम नहीं कर रहा है, क्योंकि मुझे उनको रोकने के लिए कोई रास्ता नहीं मिल रहा है। अन्यथा मैं एक एनिम (और दूसरे से पहले) के बाद किसी प्रकार की देरी पेश कर सकता हूं ताकि वे वैकल्पिक रूप से सिक्का फिसलने के भ्रम को दे सकें।

क्या किसी को भी वांछित परिणाम प्राप्त करने के लिए किसी भी तरह से यह पता चल सकता है?

मैंने फ्रेम-आधारित एनिम (फ़्रेम के रूप में फ्लिप को पूर्व-प्रस्तुत करने) को छोड़ने और करने का विचार किया था, लेकिन ऐसा लगता है कि आप फ़्रेम & ट्विन एनिम मिश्रण नहीं कर सकते हैं, इसलिए मैं फ्लिप "ऊंचाई" और "दूरी" प्रभाव।

(मैं एक और मुद्दा जब यह सिक्का लैंडिंग के लिए आता है - जैसे अंतिम परिणाम यादृच्छिक है, लेकिन मुझे लगता है मैं अंत में वास्तविक परिणाम में स्विच कर सकते हैं उम्मीद कर रहा हूँ)

अग्रिम धन्यवाद!

उत्तर

1

इस कोड को उसी प्रक्रिया http://www.inter-fuser.com/2009/08/android-animations-3d-flip.html

+0

उस जयदीप के लिए धन्यवाद। मैं पहले उस लेख में आया था, लेकिन मैं जो करना चाहता था उसके लिए थोड़ा अधिक लग रहा था। इसके अलावा, मुझे यकीन नहीं था कि मैं इसे अन्य प्रभावों (ज़ूम और मूव) के साथ कैसे जोड़ सकता हूं। हालांकि, ऐसा लगता है कि यह करने का एकमात्र असली तरीका है ... –

2

मैं भी छवि के स्केलिंग के साथ अपने आप को कुछ इस तरह के लिए देख रहा था, तो ऐसा लगता है imageView स्क्रीन के करीब हो रही है पता चलता है।

मैंने आपके एनीमेशन को इस समाधान के साथ संयुक्त रूप से वही करने के लिए जोड़ा जो आप चाहते थे और इसके काफी हल्के वजन, कई विचारों की आवश्यकता को याद करते हैं।

https://github.com/Lojko/Booty/blob/master/src/game/booty/BootyGameActivity.java

मूल लिंक बदले गए स्थान: http://www.jasoncavett.com/2011/05/changing-images-during-an-android-animation/#comments

FlipCoin वर्ग देखें और कैसे अपने इस्तेमाल किया, मैं एक एनीमेशन पहले से ही (उसी तरह के रूप में लिंक से विस्तृत में बनाया गया)

मौजूदा राशि
+0

आपके द्वारा उत्तर में दिए गए लिंक को मृत किया गया है। –

+1

मेरे पास गिटहब पर कोड झूठ बोल रहा है, मैं इसे एएसएपी के लिंक के साथ पोस्ट अपडेट करूंगा। – Lojko

+0

मुझे मूल लिंक का बदला गया वेबपृष्ठ मिला, अगर भविष्य में कोई दिलचस्पी लेता है! – Lojko

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