2011-10-26 1 views
12

나는 ListView의 모든 행에 ViewPager 위젯을 가지고있다. 이렇게하면 선반과 같은 UI가 제공되므로 사용자가 선반을 수직으로 검색 한 다음 선반의 내용 사이를 가로로 스크롤 할 수 있습니다. 이 작동합니다.ListView의 ViewPager - 스크롤하는 축을 잠그는 방법?

스크롤링 경험은 끔찍합니다. 선반의 ViewPager를 드래그하고 가로로 스크롤 한 다음 실수로 비트를 위/아래로 드래그하면 ListView가이 드래그 동작을 "트랩"하고 세로로 스크롤하여 종료합니다. 내 수평 끌기. 이 상태에서 드래그 동작은 ViewPager로 "반환"되지 않으며, ListView에도 그 동작이 있습니다. ViewPager에 다시 영향을 주도록 다른 드래그 액션을 시작해야합니다. 그래서 ListView 우선 순위가 이러한 경우에 같아요.

어떻게이 문제를 해결할 수 있습니까? 정확히 반대를 달성하고 싶습니다 :리스트 행 안의 ViewPager가 수평 드래그에 반응하기 시작하면, 그 액션을 잡아야하고,이 드래그는 사용자가 손가락을 어떻게 움직이던간에 ListView에 영향을 미치지 않아야합니다. 수직으로. 이 작업을 수행 할 수 있습니까?

+7

대답을 찾았습니다 : http://stackoverflow.com/questions/2646028/android-horizontalscrollview-within-scrollview-touch-handling –

+0

그럴 경우 가장 좋은 방법은이 질문을 복제본으로 닫는 것입니다 (질문이 충분히 가깝다고 생각되면), 또는 그들이 충분히 다른 경우 링크를 답안으로 제출하고이를 "선택한 대답"으로 표시하십시오. 그 방법으로 그것은 upvoted, 대답하지 않은 질문으로 더 이상 나타나지 않을거야 :) –

+0

맞아,이 질문은 대답하지 않는 것으로 표시되어 혼란 스럽다, 나는 적절한 대답을 추가했습니다. 나는 그것이 충분히 다르다고 생각한다, 나는 정확한 복제물로 표시하지 않을 것이다. –

답변

3

스레드를 this 스레드에서 찾았습니다. 거기에 문제가 정상적으로 ScrollView 안에 HorizontalScrollView에 대한 터치 이벤트를 처리하는 것입니다,하지만 그 문제에 대한 해결책이 너무 하나에 적용되는 것 같습니다.

관련 문제