2012-04-12 51 views
4

我想在畫布上畫弧是這樣的:Android的畫布不拉絲弧

canvas.drawArc(getCircleRect(), 90, 270, true, PaintCreator.createStrokePaintForArc()); 

..但也沒有明顯的影響

的矩形從getCircleRect得到的邊界()是正確的,我可以繪製矩形這樣(只用於測試):

canvas.drawRect(getCircleRect(), PaintCreator.createStrokePaintForArc()); 

任何想法,爲什麼drawRect中不工作和drawArc? 感謝名單


@Override 
public void onDraw(Canvas canvas) { 
    super.onDraw(canvas); 
    canvas.save(); 
    // not working 
    canvas.drawArc(getCircleRect(), 90, 270, true, PaintCreator.createFillPaintArc()); 
    // working well 
    canvas.drawRect(getCircleRect(), PaintCreator.createStrokePaintForArc()); 
    // working well 
    canvas.drawCircle(x, y, RADIUS, fillPaint); 
    move = false; 
    canvas.restore(); 
} 

回答

0

林不知道,但我覺得你的噴漆的對象可能是問題。 試試這個

Paint mBgPaints = new Paint(); 
mBgPaints.setAntiAlias(true); 
mBgPaints.setStyle(Paint.Style.FILL); 
mBgPaints.setColor(Color.BLUE); 
mBgPaints.setStrokeWidth(0.5f); 
canvas.drawArc(getCircleRect(), 90, 270, true, mBgPaints); 
+0

嗨blessenm,不幸的是你的油漆沒有幫助。 整個繪製調用位於我的自定義View類的onDraw(Canvas畫布)中。 – andrej 2012-04-12 09:45:29

+0

把你的onDraw方法代碼。可能會提出一些更多的想法 – blessenm 2012-04-13 04:20:08