우선 기초가 되는 shape 클래스를 간단하게 작성하자.
그리고 shapeview 클래스를 작성하자. 예시가 많아서 조금 길지만 하나하나씩 해보자 기본이 중요하다.!!!
보면 약간 길다. Run을 눌러서 실행해보자
그림과 같이 나온다.~
자그럼 하나하나 또 파헤쳐 보자 !!
void setStrokeWidth(float width) | |
기능 | 선의 폭을 지정 |
인수 | width 선의 폭 |
선의 형태를 지정하려면 setStyle() 메소드를 사용한다. |
void setStyle(Paint.style style) | |
기능 | 선의 형태를 지정 |
인수 | style 선의 형태 |
선의 형태로는 다음의 정수를 지정한다. 선을 그릴때에는 STROKE를 지정 Paint.Style.FILL 색을 채움 Paint.Style.FILL_AND_STROKE 색을 채움 + 선 Paint.Sytle.STRoKE 선 |
void drawLine(int x0, int y0, int x1, int y1, Paint paint) | |
기능 | 선을 그림 |
인수 | x0,y0 시작점 x,y좌표 x1,y1 종료점 x,y좌표 paint 그리기 객체 |
표시되는 선은 시작점(x0,y0)과 종료점(x1,y1)을 연결하는 직선이 된다. |
void drawPAth(Path path,Paint paint) | |
기능 | 경로를 그림 |
인수 | path 경로 정보 paint 그리기 객체 |
path 클래스는 여러 개의 점 좌표(XY)좌표를 가지는 경로정보 클래스다. moveTo()메소드는 경로시작좌표 lineTo()메소드는 경로 종료점을 추가한다. |
void moveTo(float x, float y) | |
기능 | 경로의 시작 좌표를 지정 |
인수 | x X 좌표 y Y좌표 |
경로의 시작좌표를 지정한다. x는 x의 좌표 y는 y의 좌표 |
void lineTo(float x, float y) | |
기능 | 경로의 종료점까지 선을 추가 |
인수 | x X 좌표 y Y좌표 |
경로의 종료점 까지 선을 추가한다. . x는 x의 좌표 y는 y의 좌표 |
void drawRect(Rect rect, Paint paint) | |
기능 | 사각형 그리기 |
인수 | rect 사각형 정보 paint 그리기 객체 |
Rect 클래스는 왼쪽 위의 XY좌표와 오른쪽 아래의 XY좌표를 가지는 사각형 정보 클래스다 |
Rect(int left, int top, int right, int bottom) | |
기능 | Rect 클래스 생성자 |
인수 | left 사각형의 왼쪽 위의 x좌표 top 사각형의 왼쪽 위의 y좌표 right 사각형의 오른쪽 아래의 x좌표 bottom 사각형의 오른쪽 아래의 y좌표 |
선만 그리는 경우에는 그리기 형태에 STROKE, 채우는 경우에는 FILL을 지정한다. 동일하 모양의 둥근 사각형을 그리렬 할 때에는 Canvas 클래스의 drawRoundRect()메소드를 사용한다. |
void drawRoundRect(RectF rectf, float rx, float ry, Paint paint) | |
기능 | 둥근 사각형을 그림 |
인수 | rectf 사각형 데이터 구조 rx 둥글게 할 사각형 모서리의 x 반지름 ry 둥글게 할 사각형 모서리의 y 반지름 |
RectF 클래스는 float 형 사각형 정보 클래스이다. |
RectF(float left, float top, float right, float bottom) | |
기능 | RectF 클래스의 생성자 |
인수 | left 사각형의 왼쪽 위의 x좌표 top 사각형의 왼쪽 위의 y좌표 right 사각형의 오른쪽 아래의 x좌표 bottom 사각형의 오른쪽 아래의 y좌표 |
각이 지지않고 둥근 사각형을 그릴때 사용한다 . |
void drawCircle(float cx, float cy, float radius, Paint paint) | |
기능 | 원을 그림 |
인수 | cx 중심점의 x좌표 cy 중심점의 y 좌표 radius 반지름 paint 그리기 객체 |
중심점(cx, cy)에서 반지름 radius의 원을 그린다. 선만 그리는 경우에는 그리기 형태에 STROKE 채우는 경우에는 FILL을 사용한다. |
이처럼 Android 에는 기본적인 도형 그리기가 준비되어있다.
기본적인 도형을 그려가면서 서서서히 감을잡고 이것저것 그려보도록 하자!!
SSISO Community