extends View로 상속받고
public boolean onTouchEvent(MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN || event.getAction() == MotionEvent.ACTION_MOVE){
이렇게 onTouchEvent를 이용하여 ACTION_DOWN , ACTION_MOVE를 이용하는데
해당 뷰일때만 적용되는것이 아니라 해상도 전체에 onTouchEvent가 먹히는데
해당뷰만 ACTION_DOWN , ACTION_MOVE 하는 방법이 있나요???
님이 원하시는 오브젝트만 이벤트가 발생했으면 좋겠는데 뷰의 다른 데를 눌러도 이벤트가 실행된다는 말씀이신가요?
제 말이 맞다면 TouchEvent 안에서 어떤 오브젝트가 이벤트를 발생시켰는지 확인해서 처리하시면 될 것 같은데요. 버튼 OnClickListenerd의 onClick이벤트안에서 getId()로 해서 이벤트를 어떤 버튼이 발생시켰는지 알 수 있잖아요? 그것처럼 TouchEvent의 매개변수인 MouseEvent로 어떤 오브젝트에서 이벤트가 발생했는지 알 수 있을 것 같습니다. 제가 안드로이드 초보라 정확히 어떤 메소드가 그건지는 잘 모르겠지만, 방금 해당 클래스를 검색해보니까 MouseEvent는 InputEvent 클래스에서 상속받았네요. getSource()라는 메소드가 있는데 설명과 int를 리턴하는 걸로 봐서 이 메소드가 그런 역할을 하지 않을까 추측이 됩니다. 한번 해보시죠?




" 해상도 전체에 onTouchEvent가 먹히는데 "
이게 대체 무슨 말씀인지;;;
해상도는 스크린의 표현가능한 포인트 수를 나타내는 수치인데;;;