设置ImageButton按下后的效果
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 };?
?