2016-08-15 3 views
0

나는 서로 가까이에 두 개의 ExpandableListView이 있습니다. 양쪽에서 스크롤을 동기화 할 수 있습니까? 사용자가 스크롤을 시작한 경우 첫 번째 ExpandableListView 스크롤을 시작하고 두 번째 스크롤을 시작한다고 가정 해 봅시다 ExpandableListView?두 개의 ExpandableListView의 스크롤 동기화

예를 들어 첫 번째 세 열 (두 번째 행)은 첫 번째 ExpandableListView이고 두 번째 열은 두 번째 ExpandableListView입니다. 이 흥미로운 문제입니다

enter image description here

답변

1

(그림 참조). 우리가 dispatchTouchEvent 방법과 그 반대에 의해 다른 첫번째 확장보기에서 MotionEvent을 통과 어디 View.OnTouchListener에 개념이 솔루션은 의존 github gist

의 증거를 발명했습니다. 솔루션에 대한

ExpandableListViewSynchronisationTouchListener expandableListViewSynchronisationTouchListener = new ExpandableListViewSynchronisationTouchListener(this, firstExpandable, secondExpandable); 
    firstExpandable.setOnTouchListener(expandableListViewSynchronisationTouchListener); 
    secondExpandable.setOnTouchListener(expandableListViewSynchronisationTouchListener); 
    firstExpandable.setOnChildClickListener(expandableListViewSynchronisationTouchListener); 
    secondExpandable.setOnChildClickListener(expandableListViewSynchronisationTouchListener); 
+0

감사 :

이는 사용 예입니다! –

관련 문제