을 삭제 한 후 여기 내 상황에 맞는 메뉴에서 삭제 호출입니다 :업데이트 목록보기 MySQL의 데이터
@Override
public boolean onContextItemSelected(MenuItem item) {
AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item
.getMenuInfo();
int clickedPosition = info.position;
tvInt = reviews.get(clickedPosition);
switch (item.getItemId()) {
case R.id.Delete:
new DeleteCommentTask().execute();
reviews.remove(clickedPosition);
adapter.notifyDataSetChanged();
Toast.makeText(getActivity(), "Review Deleted",
Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
내가 내 데이터베이스에서 주석을 제거하지 내 DeleteCommentTask에서 다음을 확인 할. 하지만 ListView가 업데이트되지 않습니까? UPDATE
: 여기 은 내가 사용하고 내 어댑터입니다 :
MyReviewObject co = new MyReviewObject[reviews.size()];
int index = 0;
for (@SuppressWarnings("unused")
String i : reviews) {
co[index] = new MyReviewObject(datelist.get(index),
reviews.get(index), items.get(index),
cats.get(index));
index++;
}
adapter = new MyReviewAdapter(getActivity(), co);
setListAdapter(adapter);
축하연을 받고 있습니까? –
'DeleteCommentTask'는 별도의 스레드라고 생각합니까? 'reviews.remove (clickedPosition);를 호출하십시오. adapter.notifyDataSetChanged();'삭제 스레드를 실행 한 후. –
내 AsyncTask의 PostExecute에서 호출하면 clickedPosition이 범위를 벗어납니다 – KickingLettuce