2013-08-07 7 views

Antwort

20

keine Notwendigkeit für eine Bitmap, brauchte nur den Schichttyp auf LAYER_TYPE_SOFTWARE arbeitete der ursprüngliche Ansatz.

public class TestShapeShadow extends View 
{ 
    Paint paint; 

    public TestShapeShadow(Context context) 
    { 
     super(context); 

     paint = new Paint(Paint.ANTI_ALIAS_FLAG); 
     paint.setShadowLayer(12, 0, 0, Color.YELLOW); 

     // Important for certain APIs 
     setLayerType(LAYER_TYPE_SOFTWARE, paint); 
    } 

    @Override 
    protected void onDraw(Canvas canvas) 
    { 
     canvas.drawRect(20, 20, 100, 100, paint); 
    } 
} 
+0

Gut, aber hatte Probleme bei der Verwendung in XML. Musste der Konstruktor in 'TestShapeShadow (Kontext Kontext, AttributeSet attrs) 'geändert werden – RunLoop

+2

Beeinträchtigt dies die Leistung in irgendeiner Weise? – navit

5
  1. erstellen. ein Weg, Offset

  2. Satz BlurMaskFilter zu einem Lack

  3. es einige Elemente fügen Sie einen Pfad mit dx, dy Schatten zeichnen

  4. ungesetzt Maskenfilter

  5. wieder einen Weg zeichnen mit Nein. Offset

+0

Haben Sie ein Beispiel dafür? –

Verwandte Themen