在画布上画一个正方形

时间:2018-12-30 03:21:46

标签: java android canvas paint

我有一个画布正在绘制具有预定义范围的圆。

canvas.drawCircle((float) (getBounds().right / 2), (float) (getBounds().bottom / 2), (float) (getBounds().right / 2), paint);

现在我需要使其绘制一个正方形而不是一个圆形。所以这就是我修改的

(getBounds().right / 2)而不是除以2,我没有将其除以半径的任何值

怎么会溢出

这就是法线圆的样子。

enter image description here

这就是我尝试使其变为正方形时的外观

enter image description here

有人可以建议我如何用给定的边界绘制成功的正方形吗?

1 个答案:

答案 0 :(得分:1)

看起来答案很简单。

我要做的就是将我的rectpaint传递给Canvas::drawRect

这是代码

Rect rect = drawable.getBounds();
canvas.drawRect(rect, paint);

和结果图片

enter image description here