리스트뷰에서 해당 row를 삭제하고
adapter.notifyDataSetChanged();하면 맨 마지막 row는 정상적으로 갱신이 되서 사라지는데
그외에 row들은 사라지지 않은채 남아 있습니다.
그 상태에서 스크롤시
java.lang.IndexOutOfBoundsException: Invalid index 2, size is 2
요렇게 에러나 나와버리네요;;
당최 이유를 알 수가 없네요. 아시는분 왜 그런지 설명좀 해주세요.
DBHelper dbh = null;
SQLiteDatabase db = null;
try {
//삭제
dbh = new DBHelper(getApplicationContext());
db = dbh.getWritableDatabase();
db.delete(Constants.SQLITE_DB_NAME, "_id=?", new String[]{mAlarmId+""});
for(MenuPrefAlarmBeen item : alarmBeenList){
if(item.getId() == Integer.parseInt(mAlarmId)){
alarmBeenList.remove(item);
mMenuPrefAlarmAdapter.removeItem(item);
}
}
mMenuPrefAlarmAdapter.notifyDataSetChanged();