안녕하세요 개발자새싹입니다ㅠㅠ
안드로이드 공부를 이제 막 시작해서...
이런 저런 책을 통해 예제를 돌려보구 있는데요.
참고하고 있는 책의 Tasknotes라는 간단한 메모 예제를 공부하고 있는데...
메모를 입력해서 저장하는 일까지는 문제가 없는데...
삭제가 제대로 안이루어지네요.
맨 처음 선택한 자료는 문제없이 잘 지워지는데
이후로는 선택한 자료가 아닌 엉뚱한 자료가 지워지거나, 아예 삭제가 되지 않습니다.
타이핑이 잘못되었나 해서 여러번 고쳐보다가 도저히 모르겠어서
아예 저자분이 사이트를 통해 제공해주신 코드를 돌려봐도 삭제가 제대로 이루어지지않기는 마찬가지네요
여러 번 돌려보다보니 작은 규칙같은 게 보이긴해서..
추측하기로는 removeTask함수에서 삭제하려는 아이템에 대한 연산이 잘못된건가... 싶습니다
근데 아무리 연산을 수정해봐도 제대로 삭제가 이루어지지는 않네요 ㅠㅠ
아래가 removeTask 함수입니다.
어댑터내용은 다른 책의 내용과 비교를 해봐도 크게 어긋나지 않아서 이 부분만 올려봅니다.
고수언니오빠선배님 도와주세용 ㅠㅠ
public void removeTask(int index) {
if (index >= 0) {
databaseAdapter.removeTask(arrTaskItems.size() - index );
updateList();
}
TaskEditText.setText("");
TaskEditText.setVisibility(View.GONE);
....중략
}
//아 그리구 index는 TaskListView.getSelectedItemPosition()이며, 버전은 2.2입니다!
removeTask라는 삭제하는 함수가 아마도 인덱스 번호를 가지고 삭제하는 것 같은데
500개 넣고 중간에 100개 지우면 마지막 번호는 여전히 500일텐데
(사이즈(400) - 지울 인덱스)를 삭제 라는 식으로 해서 제대로 삭제가 되지 않는 것이 아닐까 합니다.