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문부터 잘못된거같기도하고요...