안녕하세요,

ListView에서 폴더를 선택하면, 폴더내의 이미지 파일들을 gridView를 통해 보는 프로그램을 만들어 보았습니다.

그런데 파일이 200개정도(총용량 60MB 정도) 되는 폴더를 선택하면, 문제가 발생했다면서 강제종료 되더군요.

GridView에서 너무 많이 불러오려다 보니 나오는 에러라고 추측하는데요 맞나요? 해결방법이 있을까요?


GridView쪽 소스코드입니다.

public class imgGrid extends Activity {

 private ArrayList<Uri> imgCurrentList;

 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  imgCurrentList = (ArrayList<Uri>) getIntent().getExtras().get("imgCurrentList");
  setContentView(R.layout.main);

  GridView selectedImages = (GridView) findViewById(R.id.GridView01);
  selectedImages.setAdapter(new ImageAdapter(this));
 }
 
 private class ImageAdapter extends BaseAdapter {
  private Context context;
  public ImageAdapter(Context localContext) {
   context = localContext;
  }

  public int getCount() {
   return imgCurrentList.size();
  }

  public Object getItem(int position) {
   return position;
  }

  public long getItemId(int position) {
   return position;
  }

  public View getView(int position, View convertView, ViewGroup parent) {
   ImageView picturesView;
   if (convertView == null) {
    picturesView = new ImageView(context);

    picturesView.setImageURI(imgCurrentList.get(position));
    picturesView.setScaleType(ImageView.ScaleType.FIT_CENTER);
    picturesView.setPadding(8, 8, 8, 8);
    picturesView
      .setLayoutParams(new GridView.LayoutParams(100, 100));
   } else {
    picturesView = (ImageView) convertView;
   }
   return picturesView;
  }
 }
}