热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Sm快递柜给图片设置点击下去颜色变深

2019独角兽企业重金招聘Python工程师标准packagecom.hatai.smartlokey.utils.image;importandroid.annotatio

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

package com.hatai.smartlokey.utils.image;import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.ColorMatrixColorFilter;
import android.util.AttributeSet;
import android.widget.ImageView;/*** Created by administrato on 2017/10/5.*/@SuppressLint("AppCompatCustomView")
public class MaskableImageView extends ImageView
{private boolean touchEffect = true;public final float[] BG_PRESSED = new float[] { 1, 0, 0, 0, -50, 0, 1,0, 0, -50, 0, 0, 1, 0, -50, 0, 0, 0, 1, 0 };public final float[] BG_NOT_PRESSED = new float[] { 1, 0, 0, 0, 0, 0,1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0 };public MaskableImageView(Context context) {super(context);}public MaskableImageView(Context context, AttributeSet attrs) {super(context, attrs);}public MaskableImageView(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);}@Overridepublic void setPressed(boolean pressed) {System.out.println("setPressed");updateView(pressed);super.setPressed(pressed);}/*** 根据是否按下去来刷新bg和src*/private void updateView(boolean pressed){System.out.println("updateView");//如果没有点击效果if( !touchEffect ){return;}//end ifif( pressed ){//点击/*** 通过设置滤镜来改变图片亮度*/this.setDrawingCacheEnabled(true);this.setColorFilter( new ColorMatrixColorFilter(BG_PRESSED) ) ;this.getBackground().setColorFilter( new ColorMatrixColorFilter(BG_PRESSED) );}else{//未点击this.setColorFilter( new ColorMatrixColorFilter(BG_NOT_PRESSED) ) ;this.getBackground().setColorFilter(new ColorMatrixColorFilter(BG_NOT_PRESSED));}}
}


转载于:https://my.oschina.net/u/3407708/blog/1587724


推荐阅读
author-avatar
A600810
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有