Android 纯代码添加点击效果

来源:互联网 发布:淘宝买隐形眼镜靠谱吗 编辑:程序博客网 时间:2024/05/18 10:35

项目中很多的Button, 同时配置很多按钮切图,Selector是不是很烦, 使用下面这个类,就可以直接为Button增加点击效果. 不用多个图片,不用Selector.

用法:Button.setOnTouchListener(Effect_Click.getInstance());

效果图:   

源码:

class Effect_Click implements OnTouchListener {private static Effect_Click Effect_Click;public static Effect_Click getInstance() {if (Effect_Click == null) {Effect_Click = new Effect_Click();}return Effect_Click;}private Effect_Click() {}@Overridepublic boolean onTouch(View arg0, MotionEvent arg1) {if (arg1.getAction() == MotionEvent.ACTION_DOWN) {arg0.getBackground().setAlpha(450);} else if (arg1.getAction() == MotionEvent.ACTION_UP) {arg0.getBackground().setAlpha(999);}arg0.invalidate();return false;}}

用法1: Button.setOnTouchListener(Effect_Click.getInstance());

用法2: 自己可以进行二次封装, 比如实现自己的MyButton,直接在XML中引用. 这样项目中所有的按钮只要设置好背景图,就会天然带着点击效果,再也不用切图了.

用法3: 抛砖引玉,出了透明度处理,还可以对Drawable增加其他特效,如增加边框,增加震动动画等, 用纯代码批量而简洁的给按钮增加丰富特效.



5 0