2011-11-16 2 views
1

다른 ListView 관련 문제 (언젠가는 저를 죽일 것입니다, 맹세합니다).ListViews setSelection이 터치 이벤트를 취소합니다.

상황은 다음과 같습니다. 내 응용 프로그램에서 내림차순 기능 &을 가지고 있으며 현재 드래그하고있는 요소는 ListView 항목에 드롭 할 수 있습니다 (폴더를 PC의 다른 폴더로 드래그하는 것과 비슷합니다).

주어진 시간 (duh)에 화면에 제한된 양의 항목이 있으므로 드래그하는 동안 일종의 스크롤 기능이 필요합니다. 아이디어는 새로운 것이 아니며,리스트 뷰의 위쪽이나 아래쪽 경계로 드래그하여 잠깐 동안 잡고 있으면 스크롤이 시작됩니다.

문제는 setSelection 또는 smoothScrollToPosition을 사용하여 스크롤하려고하면 draggable 뷰의 touch 이벤트가 코드 3 (ACTION_CANCELED)과 함께 반환되므로 드래그가 고정됩니다.

누구나 내가 이길 수 있습니까?

P. 거의 잊었다. scrollBy를 사용하려고했습니다. scrollBy 내 터치 이벤트를 부수 지 않지만 실제로 listView를 스크롤하지 않습니다. 스크롤이 내려 지지만 항목은 재활용되지 않고 다시 사용됩니다. 요소가 있어야하는 빈 화면입니다.

답변

관련 문제