2011-10-18 2 views
1

사용자가 스크롤 클릭을 놓은 직후 첫 번째 보이는 ListView 항목을 정렬하는 방법 (또는 보이는 영역이 절반보다 작은 경우 : 두 번째 항목 정렬)이 LinearLayout 상단에 정렬되는 방법이 있습니까?첫 번째 보이는 ListView 항목을 LinearLayout 상단에 정렬하는 방법은 무엇입니까?

저는이 일을 성가 시게하기 위해 최선을 다하고 있습니다.

나는이 솔루션이 존재한다면 그것은 갤러리 애니메이션과 같을 것이라고 생각하지만, 수직적 이어야만하기 때문에이 경우 갤러리를 사용할 수 없다.

아이디어가 있으십니까?

미리 감사드립니다.

답변

2

당신리스트 뷰의 다음과 같은 기능을 사용할 수 있습니다

getFirstVisiblePosition() :이 당신에게 표시되는 첫 번째 항목을 제공 할 것입니다. 이렇게하면 볼 수 RECT을 줄 것이다 :

getChildVisibleRect은 (보기 아이, 사각형 r에, 포인트 오프셋). 그 견해에 대해. 보이는 부분이있는 너비 & 높이를 확인할 수 있습니다. 그런 다음 다음 함수를 사용하여 해당 항목을 표시할지 여부를 결정하십시오.

requestRectangleOnScreen (즉시 부울 사각형 사각형) : 이것은 완전히 볼 수 있도록 목록보기 내부의보기를 가져옵니다.

이 부분이 도움이 될 수 있습니다.

0

너는 android : smoothScrollbar 속성을 false로 설정해 보셨습니까? false로 설정하면

이 목록은 스크롤의 속성을 결정하는 데에만 어댑터 항목의 수와 화면에 표시되는 항목의 수를 사용합니다. fadingEdge 및 안드로이드 :

은 또한 당신은 안드로이드와 함께 재생할 수 있습니다 fadingEdgeLength를이 트릭 whithout 많은 코드를 할 수 있습니다.

관련 문제