我使用以下代码在自定义视图的onDraw期间绘制位图
Paint p = new Paint(Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG);
p.setShadowLayer(3,3,3,0xff000000);
Bitmap bmp = BitmapFactory.decodeResource(some drawable jpg);
canvas.drawBitmap(bmp,null,new Rect(blah blah),p);
Run Code Online (Sandbox Code Playgroud)
阴影看起来很有趣.我的意思是什么搞笑?我的意思是,如果我调用canvas.drawRect(),我会得到一个不同的阴影.它看起来有点类似于android影子代码将位图视为alpha通道或其他东西.
尝试添加p.setColor(0xff000000); 和p.setStyle(Paint.Style.FILL); 但没有区别.
我想我可以在阴影上绘制drawRect,然后在阴影处关闭drawBitmap,但这看起来很傻,因为它会渲染像素两次.
android ×1