2016-04-25 46 views
0

我试图创建一个视图,在其上绘制一个图像的背景颜色。图像应该由矩阵转换。背景不应该是。查看无法正确绘制的背景

onDraw()方法是这样的:

protected void onDraw(Canvas canvas) { 

     canvas.drawRect(0, 0, canvas.getWidth(), canvas.getHeight(), paint); 

     Drawable drawable = getImageDrawable(); 

     if (drawable == null) { 
      return; 
     } 

     int count = canvas.save(); 

     if (clipRect != null) { 
      canvas.clipRect(clipRect); 
     } 
     canvas.concat(matrix); 
     drawable.draw(canvas); 
     canvas.restoreToCount(count); 
    } 

在一些我测试过的设备,上方和图像左侧的背景不正确绘制。在这里观看视频: https://youtu.be/rno2XxaeNUA您需要暂停视频才能看到正在发生的事情。

回答

0

此问题是由意外覆盖造成的View.getMatrix()