본문 바로가기
Development/Android

[android] ViewPager2 setOnTouchListener

by Sonagiya 2022. 4. 26.
반응형

ViewPager2에 터치 이벤트가 발생하지 않습니다.

ViewPager2에 터치이벤트로 처리해야 할 일이 간혹 발생합니다.

뷰에 터치 이벤트처리르 위해 setOnTouchListener를 설정하는데 ViewPager2는 직접 설정하면 이벤트가 발생하지 않아 자식인 RecyclerView에 설정해야 합니다.

pager.getChildAt(0).setOnTouchListener(pageOnTouchListener)

 

적용 후 실행했는데 ACTION_DOWN이 발생하지 않아 오동작이 발생했습니다.

원인은 onBindViewHolder에서 특정 뷰에 onClick이벤트를 달았는데 이것 때문에 이벤트가 제대로 전달되지 않았습니다.

 

현재 개발중인 프로젝트에는 ViewPager 안에 별도 컨트롤이 없고 이미지 하나뿐이라 RecyclerView에서 처리를 해주어 해결하였으나 컨트롤이 올라갈 경우 어떻게 처리할지는 고민이 필요한 부분입니다. 

반응형

댓글