본문 바로가기

옛글/코드창고

[Android] Webview Image 처리시 깜박임 처리

반응형



리스트뷰에 ImageView를 사용해서 이미지를 넣거나 혹은 서버나 웹에서 다운받는 경우 Out Of Memory(Heap Memory상 안드로이드는 메모리가 벗어나버리면 앱을 비정상 종료) 가 일어나버립니다. 


 이를 해결하기 위해서 Recycle Code를 넣고 Listview를 holder로 만들어 재사용하기도 하고, 혹은 Manifest 에서 Large Heap 을 true로 바꾸더라도 태블릿이 아닌 이상 스마트폰에서는 버벅거림 혹은 메모리상 문제를 깔끔하게 해결할 수가 없습니다. 이럴 때 ImageView대신 Webview로 남은 이미지들은 캐쉬처리로 하면 굉장히 좋은데요. 


 구글 플레이 앱소개에 있는 그림들도 로딩을 한장씩하는 걸로봐서(확대된 상태에서) 아마 웹뷰로 구현된 듯 합니다. 


 웹뷰로 이미지 처리시에는 이미지가 로딩되거나 리스트뷰가 넘어가는 동안 깜빡거리는 현상이 있습니다. 뭔가 굉장히 어설퍼보이는 포인트입니다. 이런 경우에는 안드로이드 Manifest 에서 Application - Hardware accelerated 를 true로 설정한 뒤에 해당 listview가 있는 클래스에서 


처리를 하면 깜빡임 현상이 해결됩니다. 

반응형