안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요...
안드로이드에서 선을 그릴때 예를 들면 대략 아래와 같이 작업을 하는데...
protected void onDraw(Canvas canvas) {
Paint mPaint;
mPaint.setStyle(Paint.Style.STROKE);
mPaint.setColor(Color.GRAY);
canvas.drawLine(x1, y1, x2, y2);
}
만약 점선이나 이점쇄선과 같은 라인을 그릴려면 어떻게 해야 하나요?
Paint 클래스의 속성을 보니 Paint.Style.STROKE 와 Paint.Style.FILL 속성밖에 없는것 같던데...
조언 부탁드립니다.
안드로이드에서 선을 그릴때 예를 들면 대략 아래와 같이 작업을 하는데...
protected void onDraw(Canvas canvas) {
Paint mPaint;
mPaint.setStyle(Paint.Style.STROKE);
mPaint.setColor(Color.GRAY);
canvas.drawLine(x1, y1, x2, y2);
}
만약 점선이나 이점쇄선과 같은 라인을 그릴려면 어떻게 해야 하나요?
Paint 클래스의 속성을 보니 Paint.Style.STROKE 와 Paint.Style.FILL 속성밖에 없는것 같던데...
조언 부탁드립니다.




Paint Pnt = new Paint();
Pnt.setAntiAlias(true);
Pnt.setAntiAlias(false);
Pnt.setColor(Color.WHITE);
Pnt.setStrokeWidth(3);
Pnt.setPathEffect(new DashPathEffect(new float[] {10, 10 }, 0));
canvas.drawLine(10,10,200,10,Pnt);
Pnt.setPathEffect(new DashPathEffect(new float[] {10, 10 }, 3));
canvas.drawLine(10,30,200,30,Pnt);
Pnt.setStrokeWidth(6);
canvas.drawLine(10,50,200,50,Pnt);
Pnt.setStrokeWidth(3);
Pnt.setPathEffect(new DashPathEffect(new float[] {2, 2 }, 0));
canvas.drawLine(10,70,200,70,Pnt);
Pnt.setPathEffect(new DashPathEffect(new float[] {12, 2, 2, 2 }, 0));
canvas.drawLine(10,90,200,90,Pnt);
Pnt.setPathEffect(new DashPathEffect(new float[] {12, 2, 2, 2, 2, 2 }, 0));
canvas.drawLine(10,110,200,110,Pnt);
이런식으로 그려줄수 있는데요 한번 그려보시고 원하시는 대로 고쳐서 쓰시면 될거 같네요