안녕하세요, SimpleCursorAdapter
및 대체 ListItem
스타일의 목록보기를 표시하는 사용자가보기에 있고 업데이트가 발생하면 동적으로 목록을 업데이트하려고합니다. 내 ListActivity에서 나는의 어댑터를 업데이트 할 때 이제 문제는 내가 두 오버라이드 (override) 방법확장 된 SimpleCursorAdapter 및 대체 LiteItem 스타일을 사용하여 ListView를 동적으로 업데이트
@Override
public int getViewTypeCount() {
return 2;
}
및
@Override
public int getItemViewType(int position) {
adapCursor.moveToPosition(position);//adapCursor is being set in the constructor
int i= adapCursor.getInt(adapterCursor.getColumnIndexOrThrow("isactive"));
return i==1?i:0;
}
이 SimpleCursorAdapter
에서 확장 내 어댑터
adapter.swapCursor(newCursor);
//notify
했을 액티비티는
getItemViewType
메서드에서 업데이트 된 커서를 사용할 수 없으므로 바운드 예외 예외가 발생합니다.
어떻게
또는 참조 대신'getCursor()'를 사용할 수 있습니다. – Luksprog
@Luksprog 훨씬 더 깨끗한 방식으로'super.swapCursor'를 호출해야합니다. 대답에 넣으면 받아 들일 것입니다 ... info – dakait