2015-10-06 79 views
2

當按下imageview時,是否有顯示某種效果?我使用imageview作爲按鈕,所以需要顯示一些觸摸效果。許多現有的線程提出了具有多個圖像的選擇器。這是太多的工作,因爲我有很多的圖像瀏覽。我也開放擴展imageview類。任何想法或解決方法。沒有多重效果的Imageview on-touch/click效果(Android)

+0

你見過'ImageButton'類嗎? – pskink

+0

http://stackoverflow.com/a/7176006 – Sree

+0

https://github.com/traex/RippleEffect –

回答

5

在點擊功能添加

ImageView img= (ImageView) view.findViewById(R.id.theID); 
Animation animation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.alpha); 
img.startAnimation(animation); 

創建資產anim文件夾,然後cleate命名alpha

裏面的文件粘貼以下

<alpha xmlns:android="http://schemas.android.com/apk/res/android" 
    android:interpolator="@android:anim/accelerate_interpolator" 
    android:duration="50" 
    android:fromAlpha="0.5" 
    android:toAlpha="1.0" /> 

這種類型的動畫資源文件的動畫只會將Alpha透明度設置爲50%並且回到100%,因此圖像會閃爍。

有很多的動畫所以看看周圍的淨找到你喜歡哪個,創建動畫資源文件,並在您的ImageView的XML文件在這裏把名字R.anim.alpha);

您可以添加android:onClick="myClickFunction"

然後在活動中添加

public void myClickFunction(View v) { 
    ImageView img = (ImageView) v.findViewById(R.id.theID); 
    Animation animation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.alpha); 
    img.startAnimation(animation); 
}