2012-06-04 53 views
1

我想爲爲動態加載到垂直線性佈局的圖像創建動畫。當被觸發時,我希望圖像的alpha值設置爲0(這會將所有下面的內容向下滑動,然後將其淡入)。然後將圖像淡入。作爲Android動畫的新手,我遇到了一些麻煩。現在,我試圖讓剛剛淡入工作,這裏是我有:用於動態加載圖像的Android動畫

fade_in.xml

<?xml version="1.0" encoding="utf-8"?> 

<alpha 
    xmlns:android="https://chemas.android.com/ap/res/android" 
    android:interpolator="@android:anim/anticipate_interpolator" 
    android:fromAlpha="0.0" 
    android:toAlpha="1.0" 
    android:duration="5000" > 
</alpha> 

在活動:

Animation animation = AnimationUtils.loadAnimation(context, R.anim.fade_in); 

ImageView image = new ImageView(context); 
image.setImageResource(R.drawable.my_image); 
image.setLayoutParams(layoutParams); 
image.setAlpha(0); 

((ViewGroup) view).addView(image, 0); 

image.startAnimation(animation); 

圖像被加載的所有上下文它是下移,但如果永遠不會淡入。我想得到這個工作,以及讓圖像滑下來,所以dynamica添加看起來不太亂。

在此先感謝。

回答

1

您在xmlns:android標記中有錯字。

應該

xmlns:android = "http://schemas.android.com/apk/res/android"

有了這樣修正,只是刪除image.setAlpha(0);,它應該動畫。恐怕我不能給你一個理由,說明它爲什麼在alpha屬性設置爲0時不起作用。

關於下滑動畫,你必須繼承Animation。看看這個答案,我認爲可以幫助你得到你想要的東西:https://stackoverflow.com/a/5122460/871102

+0

感謝您的信息 - 所以錯字使動畫工作,但不是在5秒鐘內消失視圖等待5秒,然後阿爾法從0到100瞬間變化。對此有何治療? – jjNford

+0

這是因爲內插器。在你的情況下,我會使用'android:interpolator =「@ android:anim/linear_interpolator」'。內插器定義了動畫隨時間變化的方式。 –

+0

Thx @Xavi,修復它,現在讓它滑下來。 – jjNford