ImageView点击可变暗的实例代码(android代码技巧)
废话不多说了,直接给大家贴代码了,具体代码如下所示:
importandroid.content.Context;
importandroid.graphics.ColorMatrixColorFilter;
importandroid.util.AttributeSet;
importandroid.view.MotionEvent;
importandroid.view.View;
importandroid.widget.ImageView;
publicclassMyImageViewextendsImageView{
publicMyImageView(Contextcontext,AttributeSetattrs){
super(context,attrs);
//TODOAuto-generatedconstructorstub
this.setOnTouchListener(VIEW_TOUCH_DARK);
}
publicstaticfinalOnTouchListenerVIEW_TOUCH_DARK=newOnTouchListener(){
//变暗(三个-50,值越大则效果越深)
publicfinalfloat[]BT_SELECTED_DARK=newfloat[]{1,0,0,0,-50,0,1,
0,0,-50,0,0,1,0,-50,0,0,0,1,0};
/*
//变亮
publicfinalfloat[]BT_SELECTED_LIGHT=newfloat[]{1,0,0,0,50,0,1,
0,0,50,0,0,1,0,50,0,0,0,1,0};
//恢复
publicfinalfloat[]BT_NOT_SELECTED=newfloat[]{1,0,0,0,0,0,
1,0,0,0,0,0,1,0,0,0,0,0,1,0};
*/
@Override
publicbooleanonTouch(Viewv,MotionEventevent){
if(event.getAction()==MotionEvent.ACTION_DOWN){
ImageViewiv=(ImageView)v;
iv.setColorFilter(newColorMatrixColorFilter(BT_SELECTED_DARK));
}elseif(event.getAction()==MotionEvent.ACTION_UP){
ImageViewiv=(ImageView)v;
iv.clearColorFilter();
}
returnfalse;//如为false,执行ACTION_DOWN后不再往下执行
}
};
}
以上所述是小编给大家介绍的ImageView点击可变暗的实例代码(android代码技巧),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!