다루두루

블로그 이미지

차케요

공부하면서 정리하는 노트같은 블로그입니다.

android Touch ACTION Event

[안드로이드] 어플만들기/ 안드로이드 기초 다지기 2016. 1. 6. 15:00

지난 글에서 onTouchEvent 메서드를 이용해서 화면을 터치했을 때 이벤트가 발생한 곳의 좌표를 구해서 화면에 출력해보면서 기본 개념을 정리했었는데요. 이번 글에서는 Touch ACTION 중 몇 가지를 응용해서 간단한 앱을 만들면서 액션 이벤트에 대해서 알아보겠습니다.

 

손가락으로 화면을 터치했을 때와 움직일 때 그리고 손가락을 떼었을 때 발생하는 이벤트를 이용해볼 텐데요. 앱을 실행하면 작은 아이콘 하나를 (0,0)의 위치에 나타나도록 하고 화면의 아무 곳이나 클릭하면 그곳으로 옮겨지도록 하며 누른 상태로 끌고 다니면 손가락 끝에 따라다니도록 할 거구요. 손가락을 떼었을 때는 처음 자리(0,0)으로 돌아가도록 하는 내용입니다.

 

여기서 사용하는 ACTION 상수는 DOWN, MOVE, UP이며 이것들이 실행되는지 확인하기 위해서 문자열 변수를 하나 선언해서 출력해볼 겁니다. 실행되는 이벤트를 구해오기 위해서는 onTouchEvent의 인자로 전달되는 MotionEvent에서 getAction() 메서드를 이용해서 구할 수 있는데 지난 글에서 작성했던 프로그램을 이 내용에 맞게 약간 수정해보겠습니다.

 

NO

 

먼저 실행 중인 이벤트를 화면에 표시하기 위해서 문자열 변수 action을 선언하고 있으며 그 값은 "NO"로 초기화하고 있습니다.

 

 

ACTION

 

다음은 onTouchEvent의 내용을 조금 수정했는데요. event.getAction으로 발생하는 이벤트를 구했을 때 해당되는 문자열을 출력하도록 하고 있으며 만약 ACTION_UP 일 때는 x와 y의 값에 0을 대입해서 아이콘의 위치를 맨 처음의 위치로 옮겨지도록 하고 있습니다.

 

canvas

 

마지막으로 onDraw 메서드에서는 아이콘을 x, y 좌표에 그리도록 하고 있으며 Paint 객체를 만들어서 글자의 크기는 20, 색은 빨간색으로 지정해서 출력하도록 하는 내용입니다.

 

이 앱을 실행하면 왼쪽 맨 위(0,0)의 위치에 아이콘이 생기게 되고 화면의 아무 곳이나 클릭하면 그곳으로 이동했다가 손가락을 떼면 다시 제자리로 돌아가게 됩니다. 하지만 터치한 상태로 끌고 다니면 손가락을 따라서 움직이다가 역시 손가락을 떼면 제 자리로 돌아가게 되는데요. 이는 간단한 영상으로 확인할 수 있도록 녹화를 해봤습니다. 정리한 내용대로 움직이는지 확인해보셔요.



정리한 내용과 영상이 대충 매치가 될 겁니다. 앞으로 자주 사용하게 될 내용일 거 같아서 정리해봤습니다. 수고하셨어요.

 

저작자표시 비영리 변경금지 (새창열림)
Posted by 차케요

    최근...

  • 포스트
  • 댓글
  • 트랙백
  • 더 보기

카테고리

NEW (900)
아이폰 개발 기초 (7)
취미 (16)
아두이노 (16)
[안드로이드] 어플만들기 (77)
안드로이드 기초 다지기 (61)
슈팅게임 만들기 (4)
[JAVA]자바 공부하기 (48)
C언어 알고리즘 (61)
[Unity3D]유니티3D 강좌 (7)
컴퓨터 (325)
포토샵CS2 강좌 (6)
유용한 프로그램 (244)
리눅스 노트정리 (22)
임베디드 리눅스 (11)
New블로그 (9)
음식의 효능 (4)
일반상식 (56)
HTML 공부 (40)
포토샵 공부 (36)
엑셀 (6)
파워포인트 공부 (19)
노트정리 (38)
일상 (33)
TV영화 (85)
방명록 : 관리자 : 글쓰기
차케요's Blog is powered by daumkakao
Skin info material T Mark3 by 뭐하라
favicon

다루두루

공부하면서 정리하는 노트같은 블로그입니다.

  • 태그
  • 링크 추가
  • 방명록

관리자 메뉴

  • 관리자 모드
  • 글쓰기
  • NEW (900)
    • 아이폰 개발 기초 (7)
    • 취미 (16)
      • 아두이노 (16)
    • [안드로이드] 어플만들기 (77)
      • 안드로이드 기초 다지기 (61)
      • 슈팅게임 만들기 (4)
    • [JAVA]자바 공부하기 (48)
    • C언어 알고리즘 (61)
    • [Unity3D]유니티3D 강좌 (7)
    • 컴퓨터 (325)
      • 포토샵CS2 강좌 (6)
      • 유용한 프로그램 (244)
    • 리눅스 노트정리 (22)
      • 임베디드 리눅스 (11)
    • New블로그 (9)
    • 음식의 효능 (4)
    • 일반상식 (56)
    • HTML 공부 (40)
    • 포토샵 공부 (36)
    • 엑셀 (6)
    • 파워포인트 공부 (19)
    • 노트정리 (38)
    • 일상 (33)
    • TV영화 (85)

카테고리

PC화면 보기 티스토리 Daum

티스토리툴바