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

Cursor imageCursor = managedQuery(~) 커서문사용시 질문.

0 추천
String[] projection2 = { MediaStore.Images.Media._ID,
    MediaStore.Images.Thumbnails.DATA};

  // 썸네일 이미지 불러

  /*
   * Cursor imageCursor = managedQuery(
   * MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, projection, null,
   * null, MediaStore.Images.Thumbnails.DATA + " desc ");
   */
  // 이미지편집으로 넘길 이미지쿼리F
 
  Cursor imageCursor = managedQuery(
    MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection2,
    null, null, MediaStore.Images.Media.DATE_ADDED + " desc ");

위와같이 커서문을 사용하면 원본을 불러오는데요..

여기서 꼬입니다. .

 int imageIDCol = imageCursor
     .getColumnIndex(MediaStore.Images.Media._ID);
   int imageDataCol = imageCursor
     .getColumnIndex(MediaStore.Images.Thumbnails.DATA);
   
   int imageDataCol2 = imageCursor
     .getColumnIndex(MediaStore.Images.Media.DATA);
   
   // 커서에서 이미지의 ID와 경로명을 가져와서 ThumbImageInfo 모델 클래스를 생성해서
   // 리스트에 더해준다.
   
   while (imageCursor.moveToNext()) {
    GalleryItem thumbInfo = new GalleryItem();

    thumbInfo.setId(imageCursor.getString(imageIDCol));
    thumbInfo.setData(imageCursor.getString(imageDataCol));
    

문제점입니다 ..

MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI를 사용하여

thumbnail 이미지를 불러오되 원본의 경로를 받아야하는게 문제입니다..

썸네일띄워줄부분입니다.

Glide.with(mContext).load(mArrData.get(position).getData()).into(holder.ivImage);

 

원본경로를 받는부분 소스입니다.

picArr.add(mArrData.get(position).getData());  

결론은 setdata1(),setdata2() 이부분을 두가지로나눠야하는데 어찌해야할지 감을못잡겟습니다.

Cursor문부터 잘못된거같기도하고요...
익명사용자 님이 2015년 12월 1일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...