• Daum
  • |
  • 카페
  • |
  • 메일
  • |
 
슈퍼드로이드
 
 
 
카페 게시글
안드로이드 질문 ViewGroup.onInterceptTouchEvent 함수의 리턴값
옛날꿀호떡 추천 0 조회 2,556 12.03.27 18:10 댓글 4
게시글 본문내용
 
다음검색
댓글
  • 12.03.28 14:42

    첫댓글 안녕하세요. View에서 받는 이벤트는
    - public boolean onTouchEvent (MotionEvent event)
    - public boolean onTrackballEvent (MotionEvent event)
    - public boolean onKeyUp (int keyCode, KeyEvent event)
    - public boolean onKeyShortcut (int keyCode, KeyEvent event)
    - public boolean onKeyPreIme (int keyCode, KeyEvent event)
    - public boolean onKeyLongPress (int keyCode, KeyEvent event)
    - public boolean onInterceptTouchEvent (MotionEvent ev)
    ... 등등 아주 많습니다.

    만일 True로 리턴하면 그 상위 View에는 해당 이벤트를 보내지 않겠다는 의미입니다.

  • 12.03.28 14:43

    예를 들어 LinearLayout(ViewGroud) 내에 Button(View)가 존재하는 경우
    Button에서 onTouchEvent 와 같은 터치 이벤트를 처리하고 있을 경우
    그 함수내에 True라고 리턴하게 되면 그 상위 View인 LinearLayout에서는
    해당 이벤트가 올라가지 않습니다.

  • 12.03.28 14:45

    특정 이벤트를 특정 뷰에서 처리를 완료하고 더 이상 상위 View에게
    이벤트를 처리되지 않게 하고 싶다면 True로 셋팅하면 됩니다.
    즉 이벤트 후킹.. 가로채기 등으로 생각하시면 쉽겠네요.

  • 작성자 12.03.28 18:07

    감사합니다~ 도움이 많이 되었습니다 ^^*

최신목록