android-如何通过采样缩略图从DCIM / CAMERA中提取图像

问题描述

|| 嗨,我正在尝试加载存储在卡上的图像,并认为加载位图更好,但是我想同时具有完整路径和缩略图路径。我怎么做?我希望适配器向我显示缩略图列表,但是当我单击时,我需要重定向到预览,因此我还需要完整路径。因此,如果我的对象是Image,则需要同时加载imagePath和imageThumbPath。 这是我现在如何加载它们: new Image(data),其中data是实际图像的路径。如何将拇指路径同时加载到同一对象中?
public static List<Image> getCameraImages(Context context) {
                        final String[] projection = { MediaStore.Images.Media.DATA };
                        final String selection = MediaStore.Images.Media.BUCKET_ID + \" = ?\";
                        final String[] selectionArgs = { CAMERA_IMAGE_BUCKET_ID };
                        final Cursor cursor = context.getContentResolver().query(Images.Media.EXTERNAL_CONTENT_URI,projection,selection,selectionArgs,null);
                        List<Image> result = new ArrayList<Image>(cursor.getCount());
                        if (cursor.moveToFirst()) {
                            final int dataColumn = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
                            do {
                                final String data = cursor.getString(dataColumn);
                                result.add(new Image(data));
                            } while (cursor.moveToNext());
                        }
                        cursor.close();
                        return result;
                    }

    public static final String CAMERA_IMAGE_BUCKET_NAME =
                    Environment.getExternalStorageDirectory().toString()
                    + \"/DCIM/Camera\";
                public static final String CAMERA_IMAGE_BUCKET_ID = getBucketId(CAMERA_IMAGE_BUCKET_NAME);

    public static String getBucketId(String path) {
                    return String.valueOf(path.toLowerCase().hashCode());
                }
    

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)