2011-08-12 2 views
0

난 간단한 GridView로 각 그리드와 GridView 있습니다. GridView의 각 Grid 안에 TextView를위한 스크롤 막대가 필요합니다. 하지만 스크롤바를 구현하면 내 gridview에 대한 onClickListener가 비활성화됩니다. 나는 TextView를 캡슐화하는 ScrollView를 사용하여 Textview의 내장 스크롤 막대를 사용하려고 시도했다. 어느 쪽이 든 내 GridView에 대한 onClick 이벤트를 얻는 것을 잃게됩니다. 나는 childviews를 클릭하거나 어댑터 뷰 내에서 포커스를 맞추고 onclick 리스너를 사용할 수 없게하는 문제에 대해 들었습니다. clickable 및 focusable의 Scrollview 속성을 false로 설정하려고했지만 아직 문제를 해결할 수 없다면.안드로이드 onClickEvent in adapterview

격자를 클릭하면 GridView에 등록 된 onClick 이벤트가 호출되고 거지가 드래그 될 때 (선호하는 경우 세로 방향으로) 텍스트 뷰를 스크롤해야하는 기능이 필요합니다. 당신의 생각에 약간의 수정이 구현 가능한 수를 미리

+0

gridview의 스크롤 막대가 활성화 된 경우 어떻게해야합니까? 각 항목의 텍스트 뷰에서 원하는 스크롤 이벤트가 Gridview와 충돌합니다. 두 가지 중 하나를 스크롤 할 수 있습니다. – Ronnie

+0

모든 textview를 스크롤 할 수있는 것은 아닙니다. 내용이 그리드 크기를 넘는 사람들 만 그래서 textview 스크롤이 textview 및 gridview의 스크롤 가능 영역이 겹쳐 질 때 더 높은 우선 순위를 가질 것이라고 생각합니다. –

답변

0

감사합니다.
먼저 모든 textviews 스크롤을 비활성화하십시오. 탭이 발생하면 (그리드 뷰의 onItemClick이 될 것입니다) 텍스트 뷰의 스크롤 가능한 상태를 사용 가능하게하고 onclicklistener를 설정합니다. 이제 클릭 한 번으로 스크롤 할 수 있습니다. 현재 스크롤 가능한 texview에 대한 멤버 참조를 유지해야합니다. 탭이 다른 항목에서 발생하면 현재 항목의 텍스트보기를 취소 할 수 없도록 설정하고 탭한 항목을 클릭 리스너와 함께 스크롤 할 수있는 현재 스크롤 막대로 설정합니다.
현재 스크롤 가능한 텍스트보기 이외의 영역을 드래그하여 그리드보기를 계속 스크롤 할 수 있습니다.
사용할 수 있다면 제안입니다.

+0

아이디어를 주셔서 감사합니다. 그러나 스크롤바는 단순히 내 onItemClicks 이벤트를 비활성화하므로 이벤트 핸들러가 호출되지 않습니다. 그래서 내 문제는 onItemClick 이벤트가 집중 가능하고 클릭 할 수있는보기가있는 상태에서 발생하지 않습니다 즉 ScrollView 또는 스크롤 막대가있는 TextView ... –