마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

다수의 Activity에 슬라이드 메뉴 Activity 상속 시 Touch 이벤트 처리 어떻게 하죠? [closed]

0 추천
S라는 슬라이드 메뉴가 구성되어진 Activity가 있을 때,

class A extends S , class B extends S , ...

와 같이 구성되어 있습니다.

 

슬라이드 메뉴는 화면 왼쪽 끝에서 swipe를 할 때 열려지도록 해놓았습니다.

즉, S Activity에는 자체적으로 TouchEvent가 발생했을 때 처리하는 코드가 작성되어 있습니다.

 

이 때, A 클래스에서 GridView를 상속 받았다고 가정해 봅니다.

A에서 GridView에 setOnTouchListener를 설정해서 GridView만의 터치가 되게 하려고 코딩했습니다.

 

하지만 실제 실행해보면.. 슬라이드 메뉴 구성 당시 설정했던 Touch 이벤트만 발생합니다.

GridView위에서 손가락을 눌러대도 슬라이드의 Touch 이벤트만 발생합니다.

 

슬라이드 메뉴 구성 당시.

LinearLayout을 상속받은 클래스 하나 만들어서 자체적으로 터치이벤트가 발생했을 때 슬라이드 메뉴가 펼쳐지도록

코딩이 되어 있거든요. 이때 사용한게, ViewGroup을 가져와서 View Group에 속한 모든 화면에 터치 리스너를 박았어요.

이렇게 하면 어떤 뷰에서든 왼쪽 끝에서 swipe 했을 때 슬라이드메뉴가 열려지더라구요.

 

단점은 지금과 같이 이 S 를 상속받는 모든 Activity에서는 새로 Touch 관련 리스너를 등록해도 무용지물이라는 거죠.

 

방법이 없을까요?
질문을 종료한 이유: 문제해결됨. (스스로 해결함)
하임스 (680 포인트) 님이 2014년 1월 30일 질문
하임스님이 2014년 1월 31일 closed
...