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

for문으로 필요한 만큼 뷰를 추가할 때 에러 질문

0 추천
스크롤뷰에 for문으로 필요한 만큼 이미지뷰 등을 추가할 때,

이미지뷰 수가 적을 때는 잘 작동하는데, 수가 많아지면 앱이 튕겨버립니다.

일정 시간 동안 작업이 너무 많으면 튕기는 걸로 알고있는데 (무한루프 같은)

아니면 스크롤뷰에 넣는 뷰 제한수가 있는건지...

튕기지 않고 로딩 같이 이미지뷰를 불러오는 것을 기다리게 하려면 어떻게 해야하나요?
단초 (1,450 포인트) 님이 2016년 5월 17일 질문
단초님이 2016년 5월 17일 수정

1개의 답변

+1 추천
 
채택된 답변

정확히는 일정시간동안 작업이 너무 많으면 튕기는 것이 아니라, 

앱이 할당받은 일정량의 메모리 이상을 소요할 경우 튕깁니다.ㅎㅎ

튕기셨을 당시 LogCat 자료가 있다면 더 정확한 파악이 가능하겠지만, 이미지를 많이 불러오신다니 OOM(out of memory)가 거의 확실하지 않을까 싶어요 ㅎㅎ

 

OOM 이라는 가정하에 댓글 달아봅니다~~

결론부터 말씀드리자면, 구조를 바꾸셔야 합니다.

내가 사용자에게 보여줄 이미지가 9,000장 이라고 하여도, 이를 한 화면에 다 보여줄 수 없을 뿐더러, 9000장을 로딩할 수 도 없습니다.

한 화면에 9000장을 다 보여주고 싶다면, 대표적으로 보여주는 이미지는 불과 몇장이 되도록 프로그램을 작성하셔야 하고, 특정액션(횡으로 스크롤 한다던가...)이 일어날때, 이미 로딩된 이미지를 메모리에서 해제시켜 주고, 새로운 이미지를 다시 로딩하는 식으로 구현하셔야 합니다~~

모든 이미지를 한번에 로딩하는것은 안드로이드 메모리가 허락하지 않지요!

 

안드로이드로우 (15,740 포인트) 님이 2016년 5월 17일 답변
단초님이 2016년 5월 17일 채택됨
그렇군요. 알려주셔서 감사합니다.
...