2015-04-01 84 views
0

我正在做一个游戏,我想部分隐藏SurfaceView像这样的画布:Android的画布渲染

从这: 要这样:

有什么办法用Canvas方法做到这一点?提前致谢。

回答

1

把这个代码在画布上绘制方法:

  Path invertedCircle = new Path(); 
      int radius = (canvas.getWidth() < canvas.getHeight()) ? canvas 
        .getWidth()/4 : canvas.getHeight()/2; 
      invertedCircle.addCircle(canvas.getWidth()/2, 
        canvas.getHeight()/2, radius, Direction.CW); 
      invertedCircle.setFillType(FillType.INVERSE_EVEN_ODD); 
      Paint p = new Paint(); 
      p.setColor(Color.BLACK); 
      canvas.drawPath(invertedCircle, p); 

这充满一切,除了一个圆(中央)与黑色。如果你已经绘制了你的矩形和白色背景,那么这应该让你关闭。