我有drawpath的代码,没有任何显示,我无法找出原因。
//i move the path's starting point somewhere up here to a point.
//get center x and y are the centers of a picture. it works when i
//do drawline and store the different starting points
//but i want it to look continuous not like a lot of different
//lines
path.lineTo(a.getCenterX(), a.getCenterY());
path.moveTo(a.getCenterX(), a.getCenterY());
p.setStrokeWidth(50);
p.setColor(Color.BLACK);
canvas.drawPath(path,p);
提前致谢
答案 0 :(得分:10)
新的Paint实例仅填充路径。
要描边路径,请设置绘图样式:
paint.setStyle(Paint.Style.STROKE);
如果您正在绘制的背景为黑色,请更改颜色,以便您可以看到油漆:
paint.setColor(Color.RED); // something other than the background color
可选:
paint.setStrokeWidth(10); // makes the line thicker
答案 1 :(得分:5)
我必须将它添加到绘画中以使其工作。不知道为什么。
mPaint.setDither(true);
mPaint.setColor(0xFFFFFF00);
mPaint.setStyle(Paint.Style.STROKE);
mPaint.setStrokeJoin(Paint.Join.ROUND);
mPaint.setStrokeCap(Paint.Cap.ROUND);
mPaint.setStrokeWidth(3);
答案 2 :(得分:0)
我认为解决问题的最佳方法是更改代码,如下所示:
private final int strokeWidth = 50;
path.lineTo(a.getCenterX() + strokewidth / 2, a.getCenterY() + strokeWidth / 2);
path.moveTo(a.getCenterX(), a.getCenterY());
p.setStrokeWidth(strokeWidth);
p.setColor(Color.BLACK);
canvas.drawPath(path,p);
你可能不得不玩这个,但这应该基本上重叠线,所以看起来它们是连续的。
你可能需要在一个方向上插入一个switch语句,但这应该是相当简单的。
我希望这有帮助!