ImageButton imgb = (ImageButton) findViewById(R.id.ImageButton01);
imgb.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
TextView txt = (TextView) findViewById(R.id.TextView01);
txt.setText("图片按钮被单击了");
v.setBackgroundResource(R.drawable.img_10_10);
}
});
imgb.setOnTouchListener(new Button.OnTouchListener() {
//按下时进行图片颜色的过滤处理
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
v.getBackground().setColorFilter(
new ColorMatrixColorFilter(BT_SELECTED));
v.setBackgroundDrawable(v.getBackground());
} else if (event.getAction() == MotionEvent.ACTION_UP) {
v.getBackground().setColorFilter(
new ColorMatrixColorFilter(BT_NOT_SELECTED));
v.setBackgroundDrawable(v.getBackground());
}
return false;
}
});
}
/**
* 按下这个按钮进行的颜色过滤
*/
public final static float[] BT_SELECTED = new float[] { 2, 0, 0, 0, 2, 0,
2, 0, 0, 2, 0, 0, 2, 0, 2, 0, 0, 0, 1, 0 };
/**
* 按钮恢复原状的颜色过滤
*/
public final static float[] BT_NOT_SELECTED = new float[] { 1, 0, 0, 0, 0,
0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0 };