코락 CoRock
코딩하는 락스타
코락 CoRock
  • 분류 전체보기 (394)
    • frameworks (19)
      • spring (19)
      • spring-boot (0)
      • testing (0)
    • languages (94)
      • java (39)
      • kotlin (0)
      • python (42)
      • r (13)
    • libraries (0)
    • programming (239)
      • android (13)
      • c (17)
      • cpp (22)
      • database (18)
      • design-pattern (4)
      • data-structures (11)
      • git (8)
      • hadoop (6)
      • html-css (7)
      • issue (4)
      • javascript (26)
      • jsp (34)
      • os (29)
      • php (6)
      • preferences (19)
      • etc (15)
    • discography (37)
      • k-pop (18)
      • pop (19)
    • blog (4)

블로그 메뉴

  • Programming
  • Java
  • JavaScript
  • Discography
  • K-Pop Songs
  • Pop Songs
  • Blog
  • Guestbook

공지사항

인기 글

태그

  • linux
  • javascript
  • Spring
  • CentOS
  • jsp
  • 파이썬
  • 자바스크립트
  • python
  • oracle
  • r
  • Android
  • Java

최근 댓글

최근 글

티스토리

반응형
hELLO · Designed By 정상우.
코락 CoRock

코딩하는 락스타

[Android] 그래픽 처리
programming/android

[Android] 그래픽 처리

2018. 6. 27. 17:23
반응형

7. 그래픽 처리

 

7.1 그래픽 메커니즘

7.1.1 드로잉

안드로이드 운영체제는 뷰가 수정될 때마다 onDraw() 메서드를 호출

애플리케이션 상태가 변경되어 현재 화면에 그려진 내용을 고쳐야 할 때 View의 invalidate() 메서드 호출

onDraw()를 오버라이딩해 원하는 내용을 그림

 

 

7.2 그래픽 관련 주요 클래스

7.2.1 캔버스(android.graphics.Canvas)

그래픽을 그리기 위한 바탕

Activity > View > Canvas

onDraw() method에 오버라이딩하여 캔버스에 그림

 

7.2.2 페인트(android.graphics.Paint)

캔버스에 그릴 때 색깔, 투명도, 붓 크기 제어

캔버스에 글씨를 쓸 때 글꼴, 크기, 스타일 제어

 

7.2.3 비트맵(android.graphics.Bitmap)

이미지에 대한 픽셀 데이터를 제어

 

7.2.4 Path 클래스

선, 사갹형, 커브 등 벡터 그리기 명령어를 포함

/**
 * 예) 원형 패스 정의
 */
circle = new Path();
circle.addCircle(150, 150, 100, Direction, CW);

/**
 * 예) 텍스트 추가
 */
private static final String myNote = "안드로이드";
canvas.drawPath(circle, cPaint);

 

7.2.5 Color

색의 구성: 알파(alpha), 레드(red), 그린(green), 블루(blue)

32비트 정수

색상의 표현

int color = Color.BLUE;    // 파란색
color = Color.argb(127, 255, 0, 255);    // 반투명 보라

 

XML 리소스에서 색상 정의

<resource>
	<color name="mycolor">#3500ffff</color>
</resource>

 

자바 코드 내에서 사용하는 방법

color = getResources().getColor(R.color.mycolor);

 

7.2.6 Drawable 클래스

비트맵, 단색 등과 같이 화면표시용 시각적 요소에 사용됨

다른 그래픽에 결합시킬 수 있으며 사용자 인터페이스 위젯(버튼이나 뷰의 배경)에 사용됨

 

 

7.3 실습예제

7.3.1 activity_main.xml

7.3.2 MainActivity.java

7.3.3 ShapeActivity.java

7.3.4 KeyActivity.java

7.3.5 multi_touch.xml

7.3.6 LineActivity.java

7.3.7 Missile.java

7.3.8 GameActivity.java

7.3.9 ImageRotateActivity.java

반응형
저작자표시 비영리 변경금지
    'programming/android' 카테고리의 다른 글
    • [Android] 다이얼로그
    • [Android] 네트워크
    • [Android] Thread
    • [Android] WebView
    코락 CoRock
    코락 CoRock
    A COder dreaming of being a ROCKstar

    티스토리툴바