android?의 Universal image Loader로 미리보기 이미지를로드 할 수 있습니까? 나는 Sdcard에서 이미지와 비디오 파일의 썸네일을 얻었고 그리드 뷰에서이 라이브러리를 사용하여이 썸네일을 어떻게 표시할지 모르기 때문에 아무에게도 어떻게 알 수 있는지 말해 주시겠습니까? 사전에Android 용 Universal Image Loader로 미리보기 이미지로드?
protected Integer doInBackground(Integer... params) {
// TODO Auto-generated method stub
final String[] columns = { MediaStore.Images.Media.DATA, MediaStore.Images.Media._ID }; // Images getting
final String orderBy = MediaStore.Images.Media.DATE_TAKEN;
imagecursor = mContext.getContentResolver().query(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, columns, null,
null, orderBy);
int image_column_index = imagecursor.getColumnIndex(MediaStore.Images.Media._ID);
this.count = imagecursor.getCount();
/*this.count = params[0];
if(count == 0)
this.count = imagecursor.getCount();
else if(count >= 12)
*/
bitList = new ArrayList<Bitmap>();
arrPathList = new ArrayList<String>();
selectedPath = new ArrayList<String>();
for (int i = 0; i < this.count; i++) {
imagecursor.moveToPosition(i);
int id = imagecursor.getInt(image_column_index);
int dataColumnIndex = imagecursor.getColumnIndex(MediaStore.Images.Media.DATA);
bitList.add(MediaStore.Images.Thumbnails.getThumbnail(
mContext.getContentResolver(), id,
MediaStore.Images.Thumbnails.MICRO_KIND, null));
arrPathList.add(imagecursor.getString(dataColumnIndex));
}
this.durationcount = new ArrayList<String>(); // Video Getting
final String[] parameters = { MediaStore.Video.Media.DATA, MediaStore.Video.Media._ID, MediaStore.Video.Media.DURATION , MediaStore.Video.Media.MIME_TYPE}; // Videos getting
final String orderBy_v = MediaStore.Video.Media._ID;
videocursor = mContext.getContentResolver().query(
MediaStore.Video.Media.EXTERNAL_CONTENT_URI, parameters, null,
null, orderBy_v);
int video_column_index = videocursor.getColumnIndex(MediaStore.Video.Media._ID);
int video_column_duration = videocursor.getColumnIndexOrThrow(MediaStore.Video.VideoColumns.DURATION); // for duration of the video
totalCount = imagecursor.getCount() + videocursor.getCount(); /// Checking
durationcount_a = new String[imagecursor.getCount() + videocursor.getCount()];
for(int i = 0; i < videocursor.getCount(); i ++){
videocursor.moveToPosition(ii);
int id_v = videocursor.getInt(video_column_index);
int datacolumn_v = videocursor.getColumnIndex(MediaStore.Video.Media.DATA);
long duration = videocursor.getInt(video_column_duration); // getting duration of the every videos
String hms = String.format("%02d:%02d:%02d", TimeUnit.MILLISECONDS.toHours(duration),
TimeUnit.MILLISECONDS.toMinutes(duration) - TimeUnit.HOURS.toMinutes(TimeUnit.MILLISECONDS.toHours(duration)),
TimeUnit.MILLISECONDS.toSeconds(duration) - TimeUnit.MINUTES.toSeconds(TimeUnit.MILLISECONDS.toMinutes(duration)));
durationcount.add(hms);
durationcount_a[(imagecursor.getCount()) + ii] = hms;
bitList.add(MediaStore.Video.Thumbnails.getThumbnail(mContext.getContentResolver(), id_v,
MediaStore.Video.Thumbnails.MICRO_KIND, null));
arrPathList.add(videocursor.getString(datacolumn_v));
}
thumbnailsselection = new boolean[totalCount];
return null;
}
감사 :
는이 코드에서 썸네일을 얻었다.
확인하여 ImageLoader하기 : [안드로이드 - 갤러리에서 여러 사진을 선택합니다 (HTTP : // WWW .jpchnotalkative.com/android-select-multiple-photos-gallery /) –
ur 답장을 보내 주셔서 감사합니다. 사실 저는 ur 블로그를 보았습니다. 정말 멋졌지만 imageLoader.displayImage() 메소드에서 파일 경로를 전달한 곳에서 시도했습니다. 또한 이미지 및 비디오 파일에 대한하지만 그것은 오직 비디오 파일에 대한 이미지 파일에 대한 썸네일을 표시합니다, 나는 두 파일에 대한 축소판을 표시해야합니다 이 lib를 사용하는 방법? – siva