ListView
ListView
를 사용하고 있습니다 :
ListView 항목의 ViewBinder setViewValue가 여러 개의 CheckBox를 확인합니다.
- 목록 항목 클릭
CheckBox
view.setTag(cursor.getPosition())
view.setTag(cursor.getPosition())
를 사용하여 cursorPosition을 저장할 수 있으며 체크 된 항목에 대해 필요한 조치를 취할 수 있습니다. 아래로 스크롤하면 여러 다른 CheckBoxes
가 확인 된 것을 볼 수 있습니다 (시각적 인 경우 만 해당). 해결 방법으로 CheckedBox
뷰 ID를 목록에 저장 한 다음 CheckBox
이 선택되어 있는지 확인하기 위해 뷰 설명을 설정해 보았습니다. 그러나보기가 아래로 스크롤 될 때보기가 재사용되는 것처럼 보입니다 (동일한보기 ID).
실제 검사 된 CheckBoxes
만 표시하려면 어떻게해야합니까? 코드 :
public class MyViewBinder implements ViewBinder {
public boolean setViewValue(View view, final Cursor cursor, int columnIndex) {
int viewId = view.getId();
switch (viewId) {
case R.id.checkbox:
view.setTag(cursor.getPosition());
return true;
case R.id.....
.......
}
다음 용도로 사용 :
mySimpleCursorAdapter.setViewBinder (myViewBinder);
ViewHolder 패턴을 사용하고 있습니까? 일부 코드는 도움이 될 것입니다 :) – Noel
코드가 추가되었습니다. 이 뷰 바인더는 설명 된대로 사용됩니다. – Taranfx