2012-07-27 7 views
0

ListView를 사용하여 데이터베이스의 모든 레코드를 표시하고 있습니다. 목록의 각 행에는 추가 확인란이 있습니다. 버튼을 누르면 확인 된 모든 레코드가 삭제됩니다. 그러나 목록을 반복하면서 getChildAt (index)를 사용하여 행에 대한 참조를 가져 오려고하면 그 나머지가 숨겨져 있으며 응용 프로그램에서 스크롤 바를 사용해야하기 때문에 처음 엔 3 개의 항목 만 가져올 수 있습니다 . 나는 그런 일이 잘 작동 그들에 도달 할 수있는 방법 ListView의 모든 항목에 액세스

:

for(int i = 0; i < taskList.size(); i++){ 
    View row = list.getChildAt(i); 
    CheckBox checkBox = (CheckBox)row.findViewById(R.id.checkbox) 
} 
+3

사용자 정의 어댑터가있는 listView입니까? listView를 채우는 코드를 게시하십시오. –

+0

나는 예전에 그 예를 다뤘다. http://stackoverflow.com/questions/8851829/how-can-i-select-and-kill-multiple-application –

+0

http://stackoverflow.com/questions/7329856/how-to-use-radiogroup-in- listview-custom-adapter – MAC

답변

2

을 대신 뷰를 통해 반복의 어댑터를 백업 년대 데이터가가의 필드/변수가이 검사를 추적하는 상태. 그런 다음 컬렉션을 반복하여 검사 된 모든 컬렉션을 제거하면됩니다. then notifydatasetchanged

관련 문제