2016-03-21 3 views
0

Ich versuche, eine Schaltfläche mit Wave-Animation zu erstellen. Ich möchte nicht die Größe des Bildes ändern, sondern die Wirkung von Wellen aus dem Bild und von außen zu tun.Wave Animation für Bildansicht android

Ich versuchte dies:

<?xml version="1.0" encoding="utf-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android" > 

<objectAnimator 
    android:propertyName="scaleX" 
    android:duration="2000" 
    android:valueFrom="1.0" 
    android:valueTo="1.3" 
    android:repeatMode="reverse" 
    android:repeatCount="infinite" 
    android:valueType="floatType" /> 

<objectAnimator 
    android:propertyName="scaleY" 
    android:duration="2000" 
    android:valueFrom="1.0" 
    android:valueTo="1.3" 
    android:repeatMode="reverse" 
    android:repeatCount="infinite" 
    android:valueType="floatType" /> 

Aber dies ändert die Größe des Bildes, anstatt eine Welle von ihm zu senden.

Ich möchte etwas wie folgt aus:

wave animation example image

+1

eine andere Ansicht und wendet Animation zu dieser Ansicht –

Antwort

2

Um diesen Effekt zu erstellen, müssen Sie AnimationSet verwenden, und fügen Sie eine Animation wäre es zwei Animationen, Animation Ändern der Größe, im Grunde die Größe der Veränderung Ansicht, die andere Animation wäre eine verblassende Animation, die grundsätzlich den Alpha-Level dieser Ansicht verändert.

offensichtlich würde das auf eine andere Ansicht und nicht auf die Symbolansicht angewendet werden.

Codebeispiel:

Animation fadeOut = new AlphaAnimation(1, 0); 
fadeOut.setDuration(1000); 

AnimationSet animation = new AnimationSet(true); 
animation.addAnimation(sizingAnimation); 
animation.addAnimation(fadeOut); 
this.setAnimation(animation);