Java 如何在android中使用画布绘制线条?
我想在android的ontouch事件中使用画布画一条线 这是我的密码:Java 如何在android中使用画布绘制线条?,java,android,Java,Android,我想在android的ontouch事件中使用画布画一条线 这是我的密码: switch (event.getAction()) { case MotionEvent.ACTION_DOWN: mPath.reset(); mPath.moveTo(x, y); mX = x; mY = y; invalidate(); break; case MotionEvent.ACTION_MOVE:
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。因此,如果您将drawPath复制到所有案例中,sit应该在您使用的MotionEvent.ACTION\u UP
事件处理代码中起作用代码>来画线
在其他事件处理代码部分(
MotionEvent.ACTION\u MOVE
和MotionEvent.ACTION\u DOWN
)中添加这一行代码,它也会更早地画出这条线。因此它也应该随着手指的移动而弯曲?只有在释放触摸时才会调用ACTION\u UP。您需要添加到直线路径,并在“移动”操作中绘制它。