마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

리스트뷰에서 다운로드받은 로컬이미지파일을 표시하고 싶습니다.

0 추천
현재 서버에 이미지파일들이 존재하고 있습니다.

모바일에서는 리스트뷰를 구현했구요.

서버에 있는 이미지파일을 한번에 다운로드 받아 로컬에 저장하고 보여주는것이 아니라,

Adapter에서 getView시 해당되는 row번째의 파일을 다운로드받아 그때그때 표리스트뷰의 View에 표현해주려고 합니다.

예를들어 1번째 인덱스의 row일 경우

따로 만들어놓은 쓰레드 클래스를 생성하며 파라미터로 현재 row번째의 imageView와 다운로드받을 url을 던집니다.

그럼 쓰레드에서 파일다운로드를 완료한 후 전달받은 imageView에 이미지를 세팅합니다. 물론 쓰레드내에서 처리하기 때문에 핸들러로 UI처리를 해줍니다.

이런 방식으로 하면 영역이 달라져서 이미지를 다운로드받고 리스트뷰의 imageView에 세팅을 하여도 setNotifyChanged를 사용할수가 없어 리스트뷰를 재갱신 처리 할수가 없습니다.

현재 구조에서 조금 더 나은 구조를 찾고 싶습니다.

조언부탁드립니다.

파일을 다운로드하는 쓰레드 자체를 Adapter클래스의 이너클래스로 선언하는 방법도 생각해 봤지만..

좀 깔끔한 방법이 없을까요?
갸아악 (21,260 포인트) 님이 2014년 1월 7일 질문

1개의 답변

+1 추천
음...ImageFetcher 와 같은 오픈 소스를 이용해서 하면 될 것같은데요...

혹 오픈소스를 사용하지 않는 이유가 있는건가요?...
wifi (1,340 포인트) 님이 2014년 1월 7일 답변
...