안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
ListView에서 아이템을 클릭하면 해당아이템의 배경(이미지)만 바뀌도록 구현하였는데,
아이템 클릭후, 스크롤을 하면 일정한 간격으로 다른 아이템의 배경도 바뀌어 있는 현상이 발생하고 있어 문의 드립니다.
그리고 스크롤을 내렸다가 올리면,
바뀌어져 있던 아이템의 배경은 예전으로 돌아와있고, 다른 아이템의 배경이 바뀌어져 있습니다.
위와 같은 문제점의 해결방법을 알려주시면 감사하겠습니다.
참고로 구현은,
ListActivity를 상속받아, ListView에 DB에서 쿼리한 결과를 SimpleCursorAdapter으로 넣었습니다.
배경(이미지)변경은, onListItemClick의 두번째 파라미터(View)를 받아 변경하였습니다.
소스는 첨부하지 못해 죄송합니다.
감사합니다.




listView 는 메모리를 절약하기 위해 view 를 재사용 합니다.
그래서 그런 문제가 발생하는 것이고요. 어댑터의 getView 를 구현하실 때, 특정 포지션일때에는 bg를 바꾸고 그렇지 않을 경우에는 원래의 bg를 사용하도록 하시면 문제 해결됩니다.