0

我正在尝试在 imageview 中显示图像。我知道可以通过将图像路径传入setImageBitmap().

我已经做到了。由于一些内部问题,我的模拟器性能下降,因此我将模拟器从Google更改为Intel x86。从那时起,我的与图像相关的应用程序无法正常工作。关于在 imageview 中显示图像有什么问题吗?

图像显示的代码片段:

try
                {
                         path = info.getPath(); //this variable contains the filename of the image.
                         File sdCardPath = Environment.getExternalStorageDirectory(); // code to get the path of the folder storing the image file
                         Bitmap bitmap = BitmapFactory.decodeFile(sdCardPath+"/DCIM/Camera/SAMPLE IMAGES/"+path);
                         jpgView.setImageBitmap(bitmap);
          Toast.makeText(getApplicationContext(), "This is reg pic : "+sdCardPath+"/DCIM/Camera/SAMPLE IMAGES/"+path, Toast.LENGTH_SHORT).show(); }
                catch(NullPointerException er) 
               {
                        String ht=er.toString();
                        Toast.makeText(getApplicationContext(), ht, Toast.LENGTH_SHORT).show();
                }

图像文件存储如下 -

在此处输入图像描述

4

1 回答 1

0

由于您将模拟器从 Google 更改为 Intel x86,因此图像路径将更改

你应该在你的日志中看到一个错误 cat 像这样

E/BitmapFactory(1961): Unable to decode stream: java.io.FileNotFoundException: /mnt/sdcard/abc.jpg: open failed: ENOENT (No such file or directory)

尝试通过再次选择图像来更新应用程序中的图像路径

于 2013-09-18T05:56:37.813 回答