Я использую следующий код, чтобы сделать растровое изображение во время OnDraw из пользовательского Viewандроид Paint.setShadowLayer() против Canvas.drawbitmap() проблемы
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);
и тень выглядит смешно. Что я имею в виду? Я имею в виду, что я получаю другую тень, если я вызываю canvas.drawRect(). Он выглядит примерно так, как теневой код андроида обрабатывает растровое изображение как альфа-канал или что-то в этом роде.
попытались добавить p.setColor (0xff000000); и p.setStyle (Paint.Style.FILL); но не разница.
Я предполагаю, что я мог бы нарисовать изображение с тенью, а затем drawBitmap с тенью, но это кажется глупым, поскольку это будет рендеринг пикселей в два раза.
в этом случае: изображение говорит более 1000 слов. Добавьте скриншот – WarrenFaith