超级中国6,莆田二手房出售,郑源所有歌曲
由于项目这种类型的图片按钮比较多,所以重写了imagebutton类。
import android.content.context;
import android.graphics.colormatrix;
import android.graphics.colormatrixcolorfilter;
import android.util.attributeset;
import android.view.motionevent;
import android.view.view;
import android.view.view.onfocuschangelistener;
import android.view.view.ontouchlistener;
import android.widget.imagebutton;
/**
* 自定义图片按钮(imagebutton),按下颜色改变
* @author leo
* @created 2013-3-15
*/
public class cmbutton extends imagebutton implements ontouchlistener, onfocuschangelistener {
public cmbutton(context context) {
super(context);
this.setontouchlistener(this);
this.setonfocuschangelistener(this);
}
public cmbutton(context context, attributeset attrs) {
this(context, attrs, android.r.attr.imagebuttonstyle);
this.setontouchlistener(this);
this.setonfocuschangelistener(this);
}
public cmbutton(context context, attributeset attrs, int defstyle) {
super(context, attrs, defstyle);
setfocusable(true);
this.setontouchlistener(this);
this.setonfocuschangelistener(this);
}
@override
public void onfocuschange(view v, boolean hasfocus) {
// 灰色效果
colormatrix cm = new colormatrix();
cm.setsaturation(0);
if (hasfocus) {
((imagebutton) v).getdrawable().setcolorfilter(new colormatrixcolorfilter(cm));
} else {
((imagebutton) v).getdrawable().clearcolorfilter();
}
}
@override
public boolean ontouch(view v, motionevent event) {
// 灰色效果
colormatrix cm = new colormatrix();
cm.setsaturation(0);
if (event.getaction() == motionevent.action_down) {
((imagebutton) v).getdrawable().setcolorfilter(new colormatrixcolorfilter(cm));
} else if (event.getaction() == motionevent.action_up) {
((imagebutton) v).getdrawable().clearcolorfilter();
}
return false;
}
}
布局文件
如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复
Android studio开发小型对话机器人app(实例代码)
Android通过Java sdk的方式接入OpenCv的方法
Android 通过cmake的方式接入opencv的方法步骤
Android Studio finish()方法的使用与解决app点击“返回”(直接退出)
Android 进度条 ProgressBar的实现代码(隐藏、出现、加载进度)
网友评论