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

리스트뷰에 비트맵 이미지를 넣어줬는데.. 스크롤이 너무 느립니다..

0 추천
아마 비트맵 객체가 메모리를 너무 많이 잡아먹는것 같은데요.

 

인터넷에 계속 검색을 해봐도 원인은 바로 밑에있는 이 메소드인거 같습니다.

 

http://ensider.tistory.com/2

 

사용한 오픈소스 코드는 위 링크의 getArtworkQuick메소드에 있습니다.

 

저런식으로 비트맵 이미지의 사이즈는 조절을 했지만 메모리를 우걱우걱 씹어먹으니 스크롤을 내릴떄마다 엄청 버벅대네요 ㅠㅠ...

 

최적화 시키는 방법은 구글에 찾아도 얼마 없습니다...

 

어떻게 해결하면 될까요..? ㅠㅠ...
튼실한안드인 (260 포인트) 님이 2015년 2월 3일 질문

1개의 답변

+1 추천
 
채택된 답변
이미지 로딩은 Universal Image Loader 나 Volley 등 많은 이미지 오픈소스 라이브러리가 있으니 찾아보셔서 검증된 라이브러리를 가져다 쓰시는걸 추천드립니다.

다음 블로그를 한번 참고하시면 좋을 듯 합니다.

http://helloworld.naver.com/helloworld/429368

 

작성자님이 링크하신 코드도 자세히보지 않고 대강 보긴 했지만 캐시를 사용하고 있는 듯하여 그렇게 심하게 버벅이진  않을것으로 보이는데, 그렇다면 의심해볼만한 부분은 리스트어댑터의 getView 에서 뷰 재사용을 잘하고 계신지 확인해봐야 합니다.
Gradler (109,780 포인트) 님이 2015년 2월 3일 답변
튼실한안드인님이 2015년 2월 9일 채택됨
넵. 뷰 재사용은 확인했습니다. ㅠㅠ 일단 다른 오픈 라이브러리로 http://issro.net/Other/2450 이걸 써보고 있습니다.

그런데 이번 소스는 맨처음 뷰가 뿌려질때 화면에 보이는 리스트 element 약 7개의 이미지가 약 100개파일 전체에 그대로 재사용이 되네요...  한마디로 이미지파일 7개가 스크롤을 내릴때마다 자꾸 원치않은 재사용을 하고 있습니다.... 이건 원인이 무엇인지 알 수 있을까요?
...