2013. 4. 11. 13:55

커스텀 뷰(CustomView)에서 쓰레드(Thread)로 이미지 움직이기

커스텀 뷰로 만들어서 XML은 단지 요로케만. 이후엔 모두 자바 소스로 처리합니다.

쓰레드를 이용해 우리의 친숙한 안드로이드 초록색 통돌이 로보트를 위로 날아오르게

해 봅시다. 새로 작성된 클래스에서 Activity가 아니라 View를 상속하고, 쓰레드를 사용

해야 하니까 이때는 Runnable 인터페이스를 implements해 줍니다.

이 View 클래스에는 기본 생성자가 없습니다.

화면의 크기와 이미지 크기에 대한 정보를 구합니다.

화면에 나타내는 것은 onDraw(Canvas canvas) 메써드 담당이죠.

이 메써드 오버라이드는 오른쪽 마우스 버튼을 클릭하여

source -> Override / Implement Methods

이미지를 배치하는데 처음 나타나는 곳은 화면 제일 하단 중앙입니다.

앱이 실행되면 이렇게 맨 밑에서 짠~ 하고 등장합니다.

그럼 이걸 위로 날아오르게 하는건 쓰레드의 run() 메써드에서

실행해보면 올라가고 있습니다.

어, 우리의 통돌이 오데로 갔나?

하늘 높이 올라간 로보트를 다시 내려오게 하려면 어떻게 해야 할까요.