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

하나의 이미지에 두개의 클릭 리스너 주기

0 추천

아래와 같은 이미지가 있습니다. 여기서 A부분과 B부분에 각각 다른 클릭리스너를 주고싶은데..

어떻게 해야하나요?

익명사용자 님이 2014년 12월 15일 질문
AB영역을 모두 차지하는 C라는 뷰를 만드시고 bg로 이미지를 넣으시고
A와 B 뷰를 투명하게 만들어 listener 처리하셔도 됩니다.

1개의 답변

0 추천
 
채택된 답변
1. A와 B를 각각 다른 뷰로 만들고 clicklistener를 따로 설정한다.

2. touchlistener를 이용하여 클릭좌표를 보고 다르게 동작하게 한다.

 

둘 중 하나를 하면 될 듯 합니다.
익명사용자 님이 2014년 12월 15일 답변
1번은 하나의이미지이기때문에 불가능 하다 생각되구요.
2번은 일단 지금은 보기 편하도록 하기위해 단순히 사각형을 반으로 구분하였지만.
실제이미지의 구분선은 구불구불한 곡선으로 되어있습니다. 퍼즐 생각하시면 편할것 같네요. 이 경우 2번의 방법으로 구현하려면 각 구불구불한 구분선의 좌표를 모두 알아야 하지 않나요? 이외의 방법은 없는 건가요?
clicklistener는 뷰단위로 설정되며, 뷰의 클릭영역은 항상 사각형입니다.
2번으로 하셔야 겠네요.

좌표를 그렇게 세밀하게 판정하려면 좌표를 모두 알고 있어야 합니다.
...