웹에서 이미지를 다운로드받아

뷰페이저로 나열하고 있습니다.

 

오픈소스인 ImageDownloader 클래스를 사용하여 다운로드하는데요

이 소스에서는 다운로드가 완료되지 않으면 ImageView에 Drawable객체를 넣어주네요

 

비동기작업을 하는 AsyncTask에서는 Widget을 사용할 수 없게 되어있는 상태이고요..

다운로드시에 ProgressDialog를 띄우려면 어떻게 해야 하나요.

 

현재 구조는

 

-뷰가 보여지는 액티비티

 ㄴ뷰페이저 어댑터 (이 어댑터 내에서 뷰를 생성하는 동시에 다운로드를 실행하도록 하였습니다)

 

-다운로드 클래스

 

다운로드 클래스를 액티비티내에 서브클래스로 넣는수밖에 없을까요.

 

지금 시도해보고자 하는 방법입니다.

액티비티내에 ProgressDialog 객체를 생성

다운로드클래스 내 AsyncTask에서

onPreExecute 시에 show

onPostExecute 시에 hide

하지만 다운로드클래스에서는 뷰액티비티의 Context를 모른다.

그러므로 ProgressDialog가 무엇인지 알 수 없다.

그럼 다운로드클래스에서 객체를 직접 제어하는 대신

뷰액티비티로 메세지를 날려 액티비티내에서 간접적으로 처리할 수 있도록 한다..... 어떻게?!