2011-02-14 85 views
0
@Override protected void onDraw(Canvas canvas) { 

     if (mBitmap != null) { 

      canvas.drawColor(0xFFAAAAAA); 

      canvas.drawBitmap(background,0,0,mBitmapPaint); 

      if(isRelevant){ 
       canvas.drawBitmap(mBitmapLast, 0,0, mBitmapLastPaint); 
      } 

      canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint); 
       canvas.drawPath(mPath, mPaint); 
     } 
    } 

路我已经试过周围的线路开关背景(图片)在画布上绘制,同时在上面

canvas.drawColor(0xFFAAAAAA); 
       canvas.drawBitmap(background,0,0,mBitmapPaint); 

canvas.drawColor(0xFFAAAAAA);是第二,我的路径将显示出来,当我画他们在屏幕。有没有办法让背景(位图)显示在画布路径下面?

回答

2

尝试在你的路径的油漆设置Xfermode

mPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_OVER)); // or DST_OVER 

,看到PorterDuff.Mode解释。

+0

我想我只是不明白xfermodes太好......我有两个绘图变量,一个用于当前图纸和另一个用于前一个(它以较浅的颜色显示,已经使用xfermode.LIGHTEN)如何我去展示那个吗? – 2011-02-14 01:22:33