2017-03-12 101 views
4

我有一個ImageView,當它被點擊時,它必須使用轉換(例如淡入淡出,滾動,...)來改變圖像。我怎樣才能做到這一點?使用Android ImageView的過渡效果

我想這個代碼

imageView.animate().alpha(0f).setDuration(2000); 
imageView.setImageResource(R.drawable.icon_wb); 
imageView.animate().alpha(1f).setDuration(2000); 

,但它不與API < 23(在Android 6.0)工作。

回答

3

fadeout.xml

<alpha 
    android:duration="4000" 
    android:fromAlpha="1.0" 
    android:interpolator="@android:anim/accelerate_interpolator" 
    android:toAlpha="0.0" /> 

fadein.xml

<alpha 
    android:duration="6000" 
    android:fromAlpha="0.0" 
    android:interpolator="@android:anim/accelerate_interpolator" 
    android:toAlpha="1.0" /> 

在你的java類

Animation animFadeOut = AnimationUtils.loadAnimation(this, R.anim.fade_out); 

Animation animFadeIn = AnimationUtils.loadAnimation(this, R.anim.fade_in); 

    animFadeOut.reset(); 
    imageview.clearAnimation(); 
    imageview.startAnimation(animFadeOut); 


    animFadeIn.reset(); 
    imageview.clearAnimation(); 
    imageview.startAnimation(animFadeIn); 

和隱藏或可見的ImageView其中u希望

檢查,這也link

你需要創建一個新的文件夾右擊資源文件夾中創建新的文件夾命名爲動畫。你可以把你的動畫xmls放進去。

還要檢查這個教程的網站給予其一步一步的教程link

+0

感謝您的回答,這是非常有用的,但目錄我要在創建* .xml文件? – mara6399

+1

Inside res-> anim –

+0

檢查我編輯的答案 –