안드로이드를 개발하면서 scrollview는 유용하게 사용된다.


scrollview는 일반적으로 카톡의 채팅 대화방 같은 기능에 많이 사용되는데,


카톡 채팅 중, 화면을 맨 위로 올리면 (사전에 대화한 메시지가 있을 경우)


전에 주고 받았던 메시지들을 불러 온다.



위와 같은 기능을 사용하기 위해서는 scrollview의 화면을 인식해야 하는데,


안드로이드에서 scrollview에 gesture는 지원하지 않는다고 한다.


(ListView는 setOnGestureListener 가 지원되지만, scrollview는 지원하지 않는다!)



따라서 임의로 제스처를 입혀주고, 제스처를 계산하여 사용해야 한다.




방법은 다음과 같다.


1. 기본 Activity 화면의 onCreate 메소드에 scrollview 객체를 정의한다. (findViewBy..를 이용하여 연결)


2. 마찬가지로 onCreate 메소드 내에 다음과 같이 정의한다.





3. 이번엔 기본 Activity 화면(현 클래스)에 innerClass를 다음과 같이 정의한다.

(액티비티 클래스 내에 클래스를 정의해 준다.)




위 코드(이미지)의 myToast() 메소드와 ScrollMoveRight...() 등은 본인이 임의로 정의한 메소드이다.


onFling() 메소드 내에 if 문 대신, 본인이 원하는 방법으로 내용을 꾸며주면 된다.


이상~








+ Recent posts