안녕하세요!! @wonnieyoon입니다.
현재 안드로이드 앱을 만들고 있는데 생각보다 단순하지만 아주 중요한 것을 배우게 되어 포스팅을 하게 됩니다.
그것은 바로 자원관리인데요.
그중에서 제가 포스팅할부분은 Adapter 부분입니다.
안드로이드에서 리스트뷰 컨트롤이 있습니다.
리스트뷰를 화면에 보여주기 위해서는 Adapter가 필요한데 리스트뷰를 다양하게 사용하려면 리스트뷰를 커스텀해야 합니다.
그때 Adapter를 새롭게 만들어야 합니다.
저는 BaseAdapter를 상속받아 만들었는데 Adapter를 상속받게 되면 getView()라는 메소드가 존재합니다.
getView()의 메소드는 화면에 보여주는 부분을 담당하게 되는데
저는 여기서 계속해서 자원을 할당하도록 코드를 만들었습니다.
하지만 문제는 그렇게 되면 리스트가 많아질경우 계속해서 자원을 할당을 해주어야 했고 그렇게 되면 당연히 속도 저하를 불러 일으키게 됩니다.
그래서 알게된 해결방법!!
바로 getTag(),setTag() 를 이용하는 것입니다.
getTag()와 setTag()에 대해 잘 정리한 포스트가 있어서
참고하시기 바랍니다.
setTag(),getTag() 참고 사이트!! 클릭하세요!!