큰 비트 맵을 많이 사용하는 갤러리 (전체 화면, wvga)를 표시 할 때 메모리 문제가 자주 발생합니다. 이것은 재활용되지 않는 비트 맵과 관련 있다고 가정합니다. 비트 맵을 언제/어떻게 강제로 재활용 할 수 있습니까?갤러리보기가있는 Android SimpleCursorAdapter에서 비트 맵을 언제/안전하게 재활용 할 수 있습니까?
또한 simpleCursorAdapter의 getView 메소드에서 convertView는 항상 null임을 알았습니다. 이전 뷰가 재활용되지 않는다고 가정합니다. 앞뒤로 스크롤 할 때마다 매번 새로운보기가 생성됩니다. 그러나 앞뒤로 스크롤해도 메모리 부족 문제가 발생하지 않으며 총 이미지 수가 충분히 클 경우에만 발생합니다.
ListView에서 동일한 어댑터를 사용하면보기가 재활용되므로 갤러리에 문제가있는 것으로 보입니다.
보기 및/또는 비트 맵을 강제로 재생하려면 어떻게해야합니까? 갤러리 크기와 비트 맵 품질을 줄이지 않고도 메모리를 관리 할 수있는 다른 방법은 무엇입니까?
'purgeable'과 같은 다양한 비트 맵 옵션을 사용해 보셨습니까? 갤러리에 사전 크기 조정 또는 고품질 이미지를 사용하고 있습니까? 메모리 관리를위한'SoftReference' /'WeakReference'를 본 적이 있습니까? –