/**
*
* @Description:给Imageview添加光晕
* @author 2014年7月14日 /孟伟
* @param @param v实例化之后的控件
* @return void
* @throws
*/
public void setIvState(ImageView v) {
// 一定要给ImageView控件加上几个像素的Padding,要不然效果出来不了
Paint p = new Paint();
p.setColor(Color.CYAN);
BitmapDrawable bd = (BitmapDrawable) v.getDrawable();
Bitmap b = bd.getBitmap();
Bitmap bitmap = Bitmap.createBitmap(bd.getIntrinsicWidth(),
bd.getIntrinsicHeight(), Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
canvas.drawBitmap(b.extractAlpha(), 0, 0, p);
StateListDrawable sld = new StateListDrawable();
sld.addState(new int[] { android.R.attr.state_pressed },
new BitmapDrawable(bitmap));
v.setBackgroundDrawable(sld);
}
采用Bitmap的extractAlpha产生图片边缘光晕效果
最新推荐文章于 2021-05-27 13:24:50 发布