리스트뷰의 형태에서 웹에 있는 이미지를 다운로드 받아서 뿌려주는 형태입니다.
현재 커스텀 리스트뷰를 이용하여 리스트형식으로 이미지를 웹에서 가져와서 바로바로 스트리밍 형태로 뿌려주고 있습니다.
그런데 메모리릭때문에 너무 힘이 드네요.. 이틀째인데 해결을 못하고 있습니다.
먼저 리스트뷰의 부분에서는
getview에서
ImageView imageView = (ImageView)find..
이렇게 이미지뷰를 생성하고
new AsyncTask로.. 위에 만든 iamgeView 참조변수를 파라미터로 던지고,
AsyncTask부분에서는
아래와 같이 비트맵을 url에서 다운로드 받습니다.
try {
URL urlcon = new URL(url);
HttpURLConnection urlConnection = (HttpURLConnection) urlcon.openConnection();
InputStream is = urlConnection.getInputStream();
bit = BitmapFactory.decodeStream(is);
is.close();
}catch(Exception ee) { Log.i("BitmapStreamingErr", ee.toString());}
그리고 바로 아까 전달받은 imageView 참조변수를 통하여 이미지뷰를 갱신을 합니다.
if(imageView instanceof ImageView) {
((ImageView) imageView).setImageBitmap(bit);
}
}
이렇게 AsyncTask에서 바로 이미지뷰로 바로 이미지를 세팅해주엇습니다.
근데 계속 메모리릭이 나서요.ㅠㅠ
정말 살려주세요 선배님들 ㅠㅠ