2016-09-21 46 views
0

我试图在画布上使用路径类绘制形状(shape1),但无法绘制它。但是我能够使用路径类创建形状(shape2)Shape在Android上使用路径在画布上绘制自定义形状

对于shape2

码(点)下方

@Override 
protected void onDraw(Canvas canvas) { 
    super.onDraw(canvas); 

    int h = getMeasuredHeight(); 
    int w = getMeasuredWidth(); 

    int value = (w/2)-90; 
    Path path = new Path(); 
    path.lineTo(value, 0); 
    path.lineTo(value + 120, h); 
    path.moveTo(value + 120, h); 
    path.lineTo(-W, h); 
    path.close(); 
    canvas.drawPath(path, bgPaint); 

} 

我无法操纵上面的代码实现shape1给出

+0

您是否已经逐步了解您的代码并尝试了解每个调用? –

+0

Yup,(0,0)是初始点,从这里开始水平转换为(value,0),然后垂直和水平转换为(value + 120,h),之后水平向后移动到(-w, h)和路径关闭 –

回答

2

它应该像

path.moveTo(0, 0); 
path.lineTo(value, 0); 
path.lineTo(value + delta, h); 
path.lineTo(delta, h); 
path.lineTo(0, 0); 

其中在您的案例中增量为120

+0

啊,傻逼我。谢谢队友 –

相关问题