Android 如何使用画布绘制线

Android 如何使用画布绘制线,android,android-canvas,Android,Android Canvas,我想在Android中使用Canvas画一条线。我在ontochevent中使用touchesmove、touchesup和touchestown完成了这项任务。当我触按结束鼠标按钮时,该行显示。我想画一条像手绘一样的线 这是我的密码 switch (event.getAction()) { case MotionEvent.ACTION_DOWN: mPath.reset(); mPath.moveTo(x, y); mX = x; mY = y; invalidate(); break;

我想在Android中使用
Canvas
画一条线。我在
ontochevent
中使用
touchesmove
touchesup
touchestown
完成了这项任务。当我触按结束鼠标按钮时,该行显示。我想画一条像手绘一样的线

这是我的密码

switch (event.getAction()) 
{
case MotionEvent.ACTION_DOWN:
mPath.reset();
mPath.moveTo(x, y);
mX = x;
mY = y;
invalidate();
break;
case MotionEvent.ACTION_MOVE:
float dx = Math.abs(x - mX);
float dy = Math.abs(y - mY);
if (dx >= TOUCH_TOLERANCE || dy >= TOUCH_TOLERANCE)
    {
//mPath.quadTo(mX, mY, (x + mX)/2, (y + mY)/2);
mX = x;
mY = y;
}
invalidate();
break;
case MotionEvent.ACTION_UP:
mPath.lineTo(mX, mY);
mCanvas.drawPath(mPath, mPaint);
    mPath = new Path();
    paths.add(mPath);
mPath.reset();
invalidate();
break;
}

据我所知,
drawPath()
方法是在
ACTION\u UP
时执行的。您还需要在
ACTION\u MOVE
中调用此方法,以便在每次移动时绘制路径。要使其工作,您必须将
mPath.lineTo(mX,mY)
复制到
ACTION\u MOVE