不用Drawable来实现Imageview的点击效果
2017-07-14 14:48
323 查看
继承ImageView,监听OnTouchListener的事件,动态设置setColorFilter
public class ClickImageView extends AppCompatImageView { public ClickImageView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); init(); } public ClickImageView(Context context, AttributeSet attrs) { super(context, attrs); init(); } public ClickImageView(Context context) { super(context); init(); } private void init() { setOnTouchListener(onTouchListener); } private OnTouchListener onTouchListener = new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_UP: setColorFilter(null); break; case MotionEvent.ACTION_DOWN: changeLight(); break; case MotionEvent.ACTION_MOVE: break; case MotionEvent.ACTION_CANCEL: setColorFilter(null); break; default: break; } return false; } }; private void changeLight() { int brightness = -80; ColorMatrix matrix = new ColorMatrix(); matrix.set(new float[]{1, 0, 0, 0, brightness, 0, 1, 0, 0, brightness, 0, 0, 1, 0, brightness, 0, 0, 0, 1, 0}); setColorFilter(new ColorMatrixColorFilter(matrix)); } }
布局文件
<包名.clickimageview android:id="@+id/iv_share"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/ic_img"/>
相关文章推荐
- Android自定义ImageView实现点击两张图片切换效果
- 自定义控件实现imageview的点击效果
- 自定义控件之ImageView实现点击之后有阴影效果
- 使用ViewDragHelp实现ImageView拖动超过屏幕1/2回到屏幕左边,否则到右边,还有一个就是还能实现点击的效果
- Android踩坑日记:点击变暗效果的ImageView实现原理
- 自定义ImageView实现类似微信朋友圈发图片点击出来阴影效果;同时使用Picasso加载网络图片
- Android中使用ImageViewSwitcher实现图片切换轮播导航效果
- Android实现自定义ImageView的圆角矩形图片效果
- RecyclerView介绍(五)----实现点击效果以及动画
- UItableView实现分页效果(点击more再显示10条)
- android ImageView实现变暗效果
- android 自定义ImageView实现图片手势滑动,多点触摸放大缩小效果
- 利用ImageView + fragment 实现类似QQ消息界面的 点击不同按钮 展示不同界面
- ViewPager+Fragment实现选项卡的滑动及点击效果
- Android RichText 让Textview轻松的支持富文本(图像ImageSpan、点击效果等等类似QQ微信聊天)
- Android之实现TextView控件圆角以及Button点击、焦点效果
- ImageView没有点击效果
- ImageView用作按钮是添加点击效果Selector
- 旋转ImageView和TextView的效果实现
- 自定义ImageView点击实现两张图片切换