1
의심의 여지없이 나는 바보 같은 짓을하고 있지만 의심스럽지 않습니다. 나는 사용자 터치를 기반으로 경로를 그리려고합니다. 그 개별 접촉을 포착하는 코드는 다음과 같습니다 다음Android : 여러 개의 경로를 그려야하지만 하나의 긴 경로가 있음
public boolean onTouch(View view, MotionEvent event) {
float x = event.getX();
float y = event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
// The user is starting a new path
Path path = new Path();
paths.push(path);
path.moveTo(x,y);
path.lineTo(x,y);
break;
case MotionEvent.ACTION_MOVE:
// The user is drawing on the current path
path = paths.getLast();
path.quadTo(x,y, (lastX + x)/2f, (lastY + y)/2f);
break;
}
lastX = x;
lastY = y;
invalidate();
return true;
}
그리고 라인을 그릴 :
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
ListIterator<Path> iterator = paths.listIterator();
while (iterator.hasNext()) {
Path path = iterator.next();
canvas.drawPath(path, paint);
}
}
내가 두 번째 (또는 n 번째) 경로를 그리기 시작하면 문제가있다가, 코드입니다 현재의 끝점과 끝점 사이에 선을 추가합니다. 어떤 제안? 나는 DrawCanvas 응용 프로그램을 만들었다