private static boolean click=false;
public static void setListenerAndColorFilter(ImageView imageView, final int position, final ArrayList<String> imageUrls, final Context ctx) {
// TODO Auto-generated method stub
imageView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent event) {
System.out.println("event.getAction()=="+event.getActionMasked());
switch (event.getAction()) {
case MotionEvent.ACTION_UP:
removeFilter((ImageView)view);
if(click){//响应点击事件
Intent intent;
intent = new Intent(ctx, PicViewActivity.class);
intent.putExtra("id", position);
intent.putStringArrayListExtra("pathes", imageUrls);
ctx.startActivity(intent);
}
break;
case MotionEvent.ACTION_DOWN:
setFilter((ImageView)view);
click=true;
break;
case MotionEvent.ACTION_CANCEL:
removeFilter((ImageView)view);
click=false;
break;
default:
break;
}
return true;
}
});
}
/**
* 设置滤镜
*/
private static void setFilter(ImageView imageView) {
//先获取设置的src图片
Drawable drawable=imageView.getDrawable();
//当src图片为Null,获取背景图片
if (drawable==null) {
drawable=imageView.getBackground();
}
if(drawable!=null){
//设置滤镜
drawable.setColorFilter(Color.GRAY,PorterDuff.Mode.MULTIPLY);
}
}
/**
* 清除滤镜
*/
private static void removeFilter(ImageView imageView) {
//先获取设置的src图片
Drawable drawable=imageView.getDrawable();
//当src图片为Null,获取背景图片
if (drawable==null) {
drawable=imageView.getBackground();
}
if(drawable!=null){
//清除滤镜
drawable.clearColorFilter();
}
}
图片点击效果,及点击响应
最新推荐文章于 2023-02-02 18:51:05 发布