彼此相邻的两个矩形不起作用(Java)

时间:2017-04-03 15:43:32

标签: java android android-canvas paintcomponent drawrect

我想画一条线,但我一直遇到问题。我希望实现这样的目标:

enter image description here

private Paint red = new Paint();
private Paint orange = new Paint();

red.setColor(Color.parseColor("#FF0000"));
orange.setColor(Color.parseColor("#FF8C00"));

canvas.drawRect(0, 400, 300, 0, red);
canvas.drawRect(300, 400, 300, 0, orange);

橙色酒吧与红色酒吧位于同一个位置......为什么?

3 个答案:

答案 0 :(得分:1)

您能否在代码中看到橙色矩形(300-300)的长度为0。这就是为什么你看不到它。所以试试这个:

    canvas.drawRect(0, 400, 300, 0, red);
    canvas.drawRect(300, 400, 600, 0, orange);

答案 1 :(得分:0)

再次查看文档:{​​{3}}

drawRect(float left, float top, float right, float bottom, Paint paint)
Draw the specified Rect using the specified paint.

因此,您的最后两个坐标值(rightbottom)不是长度,而是位置。

答案 2 :(得分:0)

你有400的顶部和0的底部。这很奇怪。您可能想要交换它们。但是,问题是你的第一行的左边界为0,右边界为300,而第二行是橙色点,左边界为300,右边界正好在那里,为300。