2017-04-12 64 views
1

我增加了無窮的動畫,我的ImageView後 下面是我的動畫代碼給出的延遲重複動畫

<?xml version="1.0" encoding="utf-8"?> 
<scale xmlns:android="http://schemas.android.com/apk/res/android" 
    android:duration="2000" 
    android:fromXScale="1.0" 
    android:fromYScale="1.0" 
    android:pivotX="70%" 
    android:pivotY="70%" 
    android:repeatCount="infinite" 
    android:startOffset="2000" 
    android:repeatMode="reverse" 
    android:toXScale="0.8" 
    android:toYScale="0.8" /> 

和Java代碼是

Animation pulse = AnimationUtils.loadAnimation(this, R.anim.pulse); 
          reviewImage.startAnimation(pulse); 

的問題是,它使每個後延遲動畫像擴展+延遲+崩潰+延遲這兩個我想給延遲只有一個週期後展開+崩潰+延遲

+0

android:repeatMode =「reverse」這是反向動畫 – Manish

+0

我明白了,現在注意到了。 – azizbekian

回答

1

你不能這樣做一個動畫,becaus它的工作方式是它執行動畫並將延遲下一個動畫2000ms(如xml中所指定)。從框架的角度來看,這些動畫並不相互關聯,也不能將它們評估爲一個動畫,因此這些動畫是兩個獨立的動畫。

您必須創建2個動畫並按順序播放它們。

請參閱here如何做到這一點與AnimatorSet s,但你也可以用xml做到這一點。

<set> 

    <scale 
     android:duration="500" 
     .../> 

    <scale 
     android:startOffset="500" 
     .../> 

</set>