如何打开android内部内存中用户创建文件夹中保存的图像

如何打开android内部内存中用户创建文件夹中保存的图像,android,Android,我正在创建一个android应用程序,在其中编辑图像并将这些图像保存在我创建的文件夹中。 现在,只需单击按钮即可在网格视图中显示应用程序中编辑的所有图像。我可以通过此链接显示保存在库中的所有图像,但我只想显示文件夹中的图像 保存图像的代码是 RelativeLayout content = (RelativeLayout) findViewById(R.id.relative); content.setDrawingCacheEnabled(true);

我正在创建一个android应用程序,在其中编辑图像并将这些图像保存在我创建的文件夹中。 现在,只需单击按钮即可在网格视图中显示应用程序中编辑的所有图像。我可以通过此链接显示保存在库中的所有图像,但我只想显示文件夹中的图像

保存图像的代码是

RelativeLayout content = (RelativeLayout) findViewById(R.id.relative);
            content.setDrawingCacheEnabled(true);
            Bitmap bitmap = content.getDrawingCache();

            File myDir=new File("/sdcard/MyCollection");
            myDir.mkdirs();
            Random generator = new Random();
            int n = 10000;
            n = generator.nextInt(n);
            String fname = "Image-"+ n +".jpg";
            File file = new File (myDir, fname);
            if (file.exists ()) file.delete ();
            boolean success = false;
            FileOutputStream outStream;
            try {

                outStream = new FileOutputStream(file);
                bitmap.compress(Bitmap.CompressFormat.PNG, 100, outStream);

                outStream.flush();
                outStream.close();
                success = true;

            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
请试试这个

Bitmap bitmap = null;
    File f = new File(cacheDir, String.valueOf("fileName"));
     try {
        //decode image size
        BitmapFactory.Options o = new BitmapFactory.Options();
        o.inJustDecodeBounds = true;
        //o.inPreferredConfig =  Bitmap.Config.RGB_565; // Bitmap.Config.ARGB_8888;
        BitmapFactory.decodeStream(new FileInputStream(f),null,o);

        //Find the correct scale value. It should be the power of 2.
        int REQUIRED_SIZE1=120;
        if(isLargeImage){
            REQUIRED_SIZE1=250;
        }
        final int REQUIRED_SIZE = REQUIRED_SIZE1;
        int width_tmp=o.outWidth, height_tmp=o.outHeight;
        int scale=1;
        while(true){
            if(width_tmp/2<REQUIRED_SIZE || height_tmp/2<REQUIRED_SIZE)
                break;
            width_tmp/=2;
            height_tmp/=2;
            scale*=2;
        }

        //decode with inSampleSize
        BitmapFactory.Options o2 = new BitmapFactory.Options();
        o2.inSampleSize=scale;
        bitmap = BitmapFactory.decodeStream(new FileInputStream(f), null, o2);
    } catch (FileNotFoundException e) {}
位图位图=空;
文件f=新文件(cacheDir,String.valueOf(“文件名”);
试一试{
//解码图像大小
BitmapFactory.Options o=新的BitmapFactory.Options();
o、 inJustDecodeBounds=true;
//o、 inPreferredConfig=Bitmap.Config.RGB_565;//Bitmap.Config.ARGB_8888;
解码流(新的FileInputStream(f),null,o);
//找到正确的刻度值。它应该是2的幂。
int所需尺寸1=120;
if(isLargeImage){
所需尺寸1=250;
}
最终整型所需尺寸=所需尺寸1;
内部宽度=o.向外宽度,高度=o.向外高度;
int标度=1;
while(true){
如果(宽度\u tmp/2请尝试此

Bitmap bitmap = null;
    File f = new File(cacheDir, String.valueOf("fileName"));
     try {
        //decode image size
        BitmapFactory.Options o = new BitmapFactory.Options();
        o.inJustDecodeBounds = true;
        //o.inPreferredConfig =  Bitmap.Config.RGB_565; // Bitmap.Config.ARGB_8888;
        BitmapFactory.decodeStream(new FileInputStream(f),null,o);

        //Find the correct scale value. It should be the power of 2.
        int REQUIRED_SIZE1=120;
        if(isLargeImage){
            REQUIRED_SIZE1=250;
        }
        final int REQUIRED_SIZE = REQUIRED_SIZE1;
        int width_tmp=o.outWidth, height_tmp=o.outHeight;
        int scale=1;
        while(true){
            if(width_tmp/2<REQUIRED_SIZE || height_tmp/2<REQUIRED_SIZE)
                break;
            width_tmp/=2;
            height_tmp/=2;
            scale*=2;
        }

        //decode with inSampleSize
        BitmapFactory.Options o2 = new BitmapFactory.Options();
        o2.inSampleSize=scale;
        bitmap = BitmapFactory.decodeStream(new FileInputStream(f), null, o2);
    } catch (FileNotFoundException e) {}
位图位图=空;
文件f=新文件(cacheDir,String.valueOf(“文件名”);
试一试{
//解码图像大小
BitmapFactory.Options o=新的BitmapFactory.Options();
o、 inJustDecodeBounds=true;
//o、 inPreferredConfig=Bitmap.Config.RGB_565;//Bitmap.Config.ARGB_8888;
解码流(新的FileInputStream(f),null,o);
//找到正确的刻度值。它应该是2的幂。
int所需尺寸1=120;
if(isLargeImage){
所需尺寸1=250;
}
最终整型所需尺寸=所需尺寸1;
内部宽度=o.向外宽度,高度=o.向外高度;
int标度=1;
while(true){

如果(width_tmp/2I)我想显示在设备存储中创建的我的文件夹“MyCollection”中保存的所有图像。请帮助我,我很困惑..我想显示我的文件夹“MyCollection”中保存的所有图像在设备存储中创建。请帮助我,我很困惑。这只是存储映像的文件夹的路径。您必须添加完整的路径,如android.os.Environment.getExternalStorageDirectory()+“/myimage/”实际上,我的文件夹在设备存储的文件管理器中,我想显示其中存储的所有图像。请查看此文件夹,从URL获取图像并保存在本地sd卡中,然后在图像视图中显示。先生,我是android新手,所以如果可能的话,请给我一些简单的解决方案。这只是存储图像的文件夹的路径,您必须添加完整路径,如android.os.Environment.getExternalStorageDirectory()+“/myimage/”实际上,我的文件夹在设备存储器的文件管理器中,我想显示其中存储的所有图像。请查看此文件夹,它从URL获取图像并保存在本地sd卡中,然后在图像视图中显示。对不起,先生,我是安卓新手,如果可能的话,请给我一些简单的解决方案